forked from luck/tmp_suning_uos_patched
e1000e: Only run S0ix flows if shutdown succeeded
[ Upstream commit 808e0d8832cc81738f3e8df12dff0688352baf50 ] If the shutdown failed, the part will be thawed and running S0ix flows will put it into an undefined state. Reported-by: Alexander Duyck <alexander.duyck@gmail.com> Reviewed-by: Alexander Duyck <alexander.duyck@gmail.com> Signed-off-by: Mario Limonciello <mario.limonciello@dell.com> Tested-by: Yijun Shen <Yijun.shen@dell.com> Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
e3cbce80be
commit
35a44ba545
|
@ -6970,13 +6970,14 @@ static __maybe_unused int e1000e_pm_suspend(struct device *dev)
|
|||
e1000e_pm_freeze(dev);
|
||||
|
||||
rc = __e1000_shutdown(pdev, false);
|
||||
if (rc)
|
||||
if (rc) {
|
||||
e1000e_pm_thaw(dev);
|
||||
|
||||
/* Introduce S0ix implementation */
|
||||
if (hw->mac.type >= e1000_pch_cnp &&
|
||||
!e1000e_check_me(hw->adapter->pdev->device))
|
||||
e1000e_s0ix_entry_flow(adapter);
|
||||
} else {
|
||||
/* Introduce S0ix implementation */
|
||||
if (hw->mac.type >= e1000_pch_cnp &&
|
||||
!e1000e_check_me(hw->adapter->pdev->device))
|
||||
e1000e_s0ix_entry_flow(adapter);
|
||||
}
|
||||
|
||||
return rc;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user