[Intel-wired-lan] [PATCH net] ixgbe: fix unbalanced device enable/disable in suspend/resume

Switzer, David david.switzer at intel.com
Fri Apr 9 19:56:03 UTC 2021

>-----Original Message-----
>From: Yongxin Liu <yongxin.liu at windriver.com>
>Sent: Monday, March 22, 2021 12:15 AM
>To: vaibhavgupta40 at gmail.com; andrewx.bowers at intel.com; Nguyen, Anthony
>L <anthony.l.nguyen at intel.com>
>Cc: netdev at vger.kernel.org; linux-kernel at vger.kernel.org;
>davem at davemloft.net; Brandeburg, Jesse <jesse.brandeburg at intel.com>; intel-
>wired-lan at lists.osuosl.org; kuba at kernel.org
>Subject: [PATCH net] ixgbe: fix unbalanced device enable/disable in
>pci_disable_device() called in __ixgbe_shutdown() decreases
>dev->enable_cnt by 1. pci_enable_device_mem() which increases enable_cnt
>dev->by 1, was removed from ixgbe_resume() in commit
>6f82b2558735 ("ixgbe: use generic power management"). This caused
>unbalanced increase/decrease. So add pci_enable_device_mem() back.
>Fix the following call trace.
>  ixgbe 0000:17:00.1: disabling already-disabled device
>  Call Trace:
>   __ixgbe_shutdown+0x10a/0x1e0 [ixgbe]
>   ixgbe_suspend+0x32/0x70 [ixgbe]
>   pci_pm_suspend+0x87/0x160
>   ? pci_pm_freeze+0xd0/0xd0
>   dpm_run_callback+0x42/0x170
>   __device_suspend+0x114/0x460
>   async_suspend+0x1f/0xa0
>   async_run_entry_fn+0x3c/0xf0
>   process_one_work+0x1dd/0x410
>   worker_thread+0x34/0x3f0
>   ? cancel_delayed_work+0x90/0x90
>   kthread+0x14c/0x170
>   ? kthread_park+0x90/0x90
>   ret_from_fork+0x1f/0x30
>Fixes: 6f82b2558735 ("ixgbe: use generic power management")
>Signed-off-by: Yongxin Liu <yongxin.liu at windriver.com>
> drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 5 +++++
> 1 file changed, 5 insertions(+)
Tested-by: Dave Switzer <david.switzer at intel.com>

More information about the Intel-wired-lan mailing list