Thread (6 messages) flat view 6 messages, 3 authors, 2019-08-26

Re: [PATCH net v2 1/2] Revert "r8152: napi hangup fix after disconnect"

From: David Miller <davem@davemloft.net>
Date: 2019-08-26 20:55:55
Also in: lkml

From: Hayes Wang <redacted>
Date: Mon, 26 Aug 2019 09:43:32 +0000
Jiri Slaby [mailto:jslaby@suse.cz]
quoted
Sent: Monday, August 26, 2019 4:55 PM
[...]
quoted
Could you clarify *why* it conflicts? And how is the problem fixed by
0ee1f473496 avoided now?
In rtl8152_disconnect(), the flow would be as following.

static void rtl8152_disconnect(struct usb_interface *intf)
{
	...
	- netif_napi_del(&tp->napi);
	- unregister_netdev(tp->netdev);
	   - rtl8152_close
	      - napi_disable

Therefore you add a checking of RTL8152_UNPLUG to avoid
calling napi_disable() after netif_napi_del(). However,
after commit ffa9fec30ca0 ("r8152: set RTL8152_UNPLUG
only for real disconnection"), RTL8152_UNPLUG is not
always set when calling rtl8152_disconnect(). That is,
napi_disable() would be called after netif_napi_del(),
if RTL8152_UNPLUG is not set.

The best way is to avoid calling netif_napi_del() before
calling unregister_netdev(). And I has submitted such
patch following this one.
These details belong in the commit message, always.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help