> -----Original Message----- > From: Intel-wired-lan <[email protected]> On Behalf Of > Drewek, Wojciech > Sent: Tuesday, October 10, 2023 3:56 PM > To: mschmidt <[email protected]>; [email protected] > Cc: Radoslaw Tyl <[email protected]>; Nguyen, Anthony L > <[email protected]>; Brandeburg, Jesse > <[email protected]> > Subject: Re: [Intel-wired-lan] [PATCH net-next 4/5] iavf: in iavf_down, > disable > queues when removing the driver > > > > > -----Original Message----- > > From: Michal Schmidt <[email protected]> > > Sent: Tuesday, October 10, 2023 2:22 PM > > To: Drewek, Wojciech <[email protected]>; intel-wired- > > [email protected] > > Cc: Nguyen, Anthony L <[email protected]>; Radoslaw Tyl > > <[email protected]>; Brandeburg, Jesse > > <[email protected]> > > Subject: Re: [Intel-wired-lan] [PATCH net-next 4/5] iavf: in > > iavf_down, disable queues when removing the driver > > > > Dne 10. 10. 23 v 13:39 Drewek, Wojciech napsal: > > > > > > > > >> -----Original Message----- > > >> From: Intel-wired-lan <[email protected]> On > > >> Behalf Of Michal Schmidt > > >> Sent: Tuesday, October 10, 2023 2:25 AM > > >> To: [email protected] > > >> Cc: Nguyen, Anthony L <[email protected]>; Radoslaw Tyl > > >> <[email protected]>; Brandeburg, Jesse > > <[email protected]> > > >> Subject: [Intel-wired-lan] [PATCH net-next 4/5] iavf: in iavf_down, > > >> disable queues when removing the driver > > >> > > >> In iavf_down, we're skipping the scheduling of certain operations > > >> if the driver is being removed. However, the > > IAVF_FLAG_AQ_DISABLE_QUEUES > > >> request must not be skipped in this case, because iavf_close waits > > >> for the transition to the __IAVF_DOWN state, which happens in > > >> iavf_virtchnl_completion after the queues are released. > > >> > > >> Without this fix, "rmmod iavf" takes half a second per interface > > >> that's up and prints the "Device resources not yet released" warning. > > >> > > >> Fixes: c8de44b577eb ("iavf: do not process adminq tasks when > > >> __IAVF_IN_REMOVE_TASK is set") > > >> Signed-off-by: Michal Schmidt <[email protected]> > > > > > > Looks like a fix, could be a separate patch with net as a target. > > > > I did not want to separate it from patch 3/5, because it changes the > > logic when IAVF_FLAG_PF_COMMS_FAILED is set. But on second thought, it > > should still work fine in that case too. aq_required would just get > > reset to zero in iavf_watchdog_task in the __IAVF_COMM_FAILED state. > > I see, so it's up to you :) > > > > > Michal > > > > > Reviewed-by: Wojciech Drewek <[email protected]> > > > > > >> --- > > >> drivers/net/ethernet/intel/iavf/iavf_main.c | 2 +- > > >> 1 file changed, 1 insertion(+), 1 deletion(-) > > >> > > >> diff --git a/drivers/net/ethernet/intel/iavf/iavf_main.c > > >> b/drivers/net/ethernet/intel/iavf/iavf_main.c > > >> index 0b808fa34801..2ab08b015b85 100644 > > >> --- a/drivers/net/ethernet/intel/iavf/iavf_main.c > > >> +++ b/drivers/net/ethernet/intel/iavf/iavf_main.c > > >> @@ -1440,9 +1440,9 @@ void iavf_down(struct iavf_adapter *adapter) > > >> adapter->aq_required |= > > >> IAVF_FLAG_AQ_DEL_FDIR_FILTER; > > >> if (!list_empty(&adapter->adv_rss_list_head)) > > >> adapter->aq_required |= > > >> IAVF_FLAG_AQ_DEL_ADV_RSS_CFG; > > >> - adapter->aq_required |= IAVF_FLAG_AQ_DISABLE_QUEUES; > > >> } > > >> > > >> + adapter->aq_required |= IAVF_FLAG_AQ_DISABLE_QUEUES; > > >> mod_delayed_work(adapter->wq, &adapter->watchdog_task, 0); > > >> } > > >> > > >> -- > > >> 2.41.0 > > >> > > >> _______________________________________________ > > >> Intel-wired-lan mailing list > > >> [email protected] > > >> https://lists.osuosl.org/mailman/listinfo/intel-wired-lan > > > > > _______________________________________________ > Intel-wired-lan mailing list > [email protected] > https://lists.osuosl.org/mailman/listinfo/intel-wired-lan
Tested-by: Rafal Romanowski <[email protected]> _______________________________________________ Intel-wired-lan mailing list [email protected] https://lists.osuosl.org/mailman/listinfo/intel-wired-lan
