]> git.proxmox.com Git - mirror_ubuntu-kernels.git/commit
r8152: prevent the driver from transmitting packets with carrier off
authorhayeswang <hayeswang@realtek.com>
Thu, 23 Mar 2017 11:14:19 +0000 (19:14 +0800)
committerDavid S. Miller <davem@davemloft.net>
Fri, 24 Mar 2017 19:31:02 +0000 (12:31 -0700)
commit2f25abe6bac573928a990ccbdac75873add8127e
treef534c13a8f2981ba4617999a203bbd8d1301d857
parent49d52e8108a21749dc2114b924c907db43358984
r8152: prevent the driver from transmitting packets with carrier off

The linking status may be changed when autosuspend. And, after
autoresume, the driver may try to transmit packets when the device
is carrier off, because the interrupt transfer doesn't update the
linking status, yet. And, if the device is in ALDPS mode, the device
would stop working.

The another similar case is
 1. unplug the cable.
 2. interrupt transfer queue a work_queue for linking change.
 3. device enters the ALDPS mode.
 4. a tx occurs before the work_queue is called.

Signed-off-by: Hayes Wang <hayeswang@realtek.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/usb/r8152.c