|
@@ -3046,7 +3046,7 @@ static int rtl8152_close(struct net_device *netdev)
|
|
|
netif_stop_queue(netdev);
|
|
netif_stop_queue(netdev);
|
|
|
|
|
|
|
|
res = usb_autopm_get_interface(tp->intf);
|
|
res = usb_autopm_get_interface(tp->intf);
|
|
|
- if (res < 0) {
|
|
|
|
|
|
|
+ if (res < 0 || test_bit(RTL8152_UNPLUG, &tp->flags)) {
|
|
|
rtl_drop_queued_tx(tp);
|
|
rtl_drop_queued_tx(tp);
|
|
|
rtl_stop_rx(tp);
|
|
rtl_stop_rx(tp);
|
|
|
} else {
|
|
} else {
|