Skip to content
Snippets Groups Projects
Commit a558566b authored by Sudheer Mogilappagari's avatar Sudheer Mogilappagari Committed by Jeff Kirsher
Browse files

i40evf: remove flush_scheduled_work call in i40evf_remove


flush_schedule_work blocks until completion of all scheduled
work items in global work-queue. This can cause deadlock in some
cases. i40evf_remove() cleans up necessary work items with
cancel_delayed_work_sync and cancel_work_sync. This fix removes
flush_schedule_work call inside i40evf_remove().

Signed-off-by: default avatarSudheer Mogilappagari <sudheer.mogilappagari@intel.com>
Tested-by: default avatarAndrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
parent b356dac8
Branches
Tags
No related merge requests found
...@@ -3088,8 +3088,6 @@ static void i40evf_remove(struct pci_dev *pdev) ...@@ -3088,8 +3088,6 @@ static void i40evf_remove(struct pci_dev *pdev)
if (adapter->watchdog_timer.function) if (adapter->watchdog_timer.function)
del_timer_sync(&adapter->watchdog_timer); del_timer_sync(&adapter->watchdog_timer);
flush_scheduled_work();
i40evf_free_rss(adapter); i40evf_free_rss(adapter);
if (hw->aq.asq.count) if (hw->aq.asq.count)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment