The ix driver seems to have actual suspend-resume support, which is nice. However..
With this device ("X520"):
ix0@pci0:44:0:0: class=0x020000 rev=0x01 hdr=0x00 vendor=0x8086 device=0x10fb subvendor=0x8086 subdevice=0x0006
vendor = 'Intel Corporation'
device = '82599ES 10-Gigabit SFI/SFP+ Network Connection'
everything works great under debug.acpi.suspend_bounce=1, but resuming from *real* S3 sleep results in failure — namely instant system reset, without a coredump :( How to even debug this?
Mainboard LED blinks, GPU LEDs turn on, NIC LEDs turn on and boom reset, mainboard LED blinks again indicating reboot, system boots again freshly. If that matters: the platform is AMD X370 (1st gen Ryzen), the NIC is connected to the bottom (chipset) PCIe slot. However a Mellanox (mlx4en) NIC in the same slot does survive suspend-resume cycles, apart from panicking sometimes because there's no actual support for suspend-resume in mlx4 (bug 251154).