diff options
| author | Rafael J. Wysocki <[email protected]> | 2013-12-01 01:34:37 +0000 |
|---|---|---|
| committer | David S. Miller <[email protected]> | 2013-12-02 21:01:49 +0000 |
| commit | 8496e85c20e7836b3dec97780e40f420a3ae2801 (patch) | |
| tree | 9859b6aad0ebc29acd964d46b8236b6af05b8ec4 /drivers/net/xen-netback/interface.c | |
| parent | ipv6: judge the accept_ra_defrtr before calling rt6_route_rcv (diff) | |
| download | kernel-8496e85c20e7836b3dec97780e40f420a3ae2801.tar.gz kernel-8496e85c20e7836b3dec97780e40f420a3ae2801.zip | |
PCI / tg3: Give up chip reset and carrier loss handling if PCI device is not present
Modify tg3_chip_reset() and tg3_close() to check if the PCI network
adapter device is accessible at all in order to skip poking it or
trying to handle a carrier loss in vain when that's not the case.
Introduce a special PCI helper function pci_device_is_present()
for this purpose.
Of course, this uncovers the lack of the appropriate RTNL locking
in tg3_suspend() and tg3_resume(), so add that locking in there
too.
These changes prevent tg3 from burning a CPU at 100% load level for
solid several seconds after the Thunderbolt link is disconnected from
a Matrox DS1 docking station.
Signed-off-by: Rafael J. Wysocki <[email protected]>
Acked-by: Michael Chan <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
Diffstat (limited to 'drivers/net/xen-netback/interface.c')
0 files changed, 0 insertions, 0 deletions
