[PATCH 0/1][SRU][OEM-5.14] Fix system hang during suspend and resume with atlantic nic

Koba Ko koba.ko at canonical.com
Thu Jun 9 05:54:50 UTC 2022

BugLink: https://bugs.launchpad.net/bugs/1978058

During suspend and resume, system would hang.

The impact of this regression is the same for resume that I saw on
thaw: the kernel hangs and nothing except SysRq rebooting can be done.

Fixes regression in commit cbe6c3a8f8f4 ("net: atlantic: invert deep
par in pm functions, preventing null derefs"), where I disabled deep
pm resets in suspend and resume, trying to make sense of the
atl_resume_common() deep parameter in the first place.

It turns out, that atlantic always has to deep reset on pm
operations. Even though I expected that and tested resume, I screwed
up by kexec-rebooting into an unpatched kernel, thus missing the

This fixup obsoletes the deep parameter of atl_resume_common, but I
leave the cleanup for the maintainers to post to mainline.

Suspend and hibernation were successfully tested by the reporters.

[Test Case]
1. Suspend the machine
2. wake up the machine and check if system could work.

[Where problems could occur]

Manuel Ullmann (1):
  net: atlantic: always deep reset on pm op, fixing up my null deref

 drivers/net/ethernet/aquantia/atlantic/aq_pci_func.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)


More information about the kernel-team mailing list