iavf: schedule watchdog immediately when changing primary MAC
[ Upstream commit e2b53ea5a7c1fb484277ad12cd075f502cf03b04 ] iavf_replace_primary_mac() utilizes queue_work() to schedule the watchdog task but that only ensures that the watchdog task is queued to run. To make sure the watchdog is executed asap use mod_delayed_work(). Without this patch it may take up to 2s until the watchdog task gets executed, which may cause long delays when setting the MAC address. Fixes: a3e839d539e0 ("iavf: Add usage of new virtchnl format to set default MAC") Signed-off-by: Stefan Assmann <sassmann@kpanic.de> Reviewed-by: Michal Schmidt <mschmidt@redhat.com> Tested-by: Michal Schmidt <mschmidt@redhat.com> Tested-by: Rafal Romanowski <rafal.romanowski@intel.com> Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
aa17cf8af7
commit
122d3a0ee4
@ -1033,7 +1033,7 @@ int iavf_replace_primary_mac(struct iavf_adapter *adapter,
|
||||
|
||||
/* schedule the watchdog task to immediately process the request */
|
||||
if (f) {
|
||||
queue_work(adapter->wq, &adapter->watchdog_task.work);
|
||||
mod_delayed_work(adapter->wq, &adapter->watchdog_task, 0);
|
||||
return 0;
|
||||
}
|
||||
return -ENOMEM;
|
||||
|
Loading…
x
Reference in New Issue
Block a user