kernel-ark/drivers
Jeff Mahoney 59f1741e54 [TG3]: netif_carrier_off runs too early; could still be queued when init fails
Move the netif_carrier_off() call from tg3_init_one()->
tg3_init_link_config() to tg3_open() as is the convention for most other
network drivers.

I was getting a panic after a tg3 device failed to initialize due to DMA
failure.  The oops pointed to the link watch queue with spinlock debugging
enabled.  Without spinlock debugging, the Oops didn't occur.

I suspect that the link event was getting queued but not executed until
after the DMA test had failed and the device was freed.  The link event was
then operating on freed memory, which could contain anything.  With this
patch applied, the Oops no longer occurs.

[ Based upon feedback from Michael Chan, we move netif_carrier_off()
  to the end of tg3_init_one() instead of moving it to tg3_open() -DaveM ]

Signed-off-by: Jeff Mahoney <jeffm@suse.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-03-20 22:39:21 -08:00
..
acorn
acpi
amba
atm [ATM] suni: cast arg properly in SONET_SETFRAMING 2006-03-20 22:35:16 -08:00
base
block [PATCH] regularize blk_cleanup_queue() use 2006-03-18 18:34:20 -05:00
bluetooth
cdrom
char
connector [CONNECTOR]: Use netlink_has_listeners() to avoind unnecessary allocations. 2006-03-20 22:21:40 -08:00
cpufreq
crypto
dio
edac
eisa
fc4
firmware
hwmon
i2c
ide
ieee1394
infiniband [NET]: Move destructor from neigh->ops to neigh_params 2006-03-20 22:25:41 -08:00
input
isdn
macintosh
mca
md [PATCH] regularize blk_cleanup_queue() use 2006-03-18 18:34:20 -05:00
media [PATCH] Kconfig: swap VIDEO_CX88_ALSA and VIDEO_CX88_DVB 2006-03-18 12:12:18 -08:00
message
mfd
misc
mmc
mtd
net [TG3]: netif_carrier_off runs too early; could still be queued when init fails 2006-03-20 22:39:21 -08:00
nubus
oprofile
parisc
parport
pci
pcmcia
pnp
rapidio
s390 [PATCH] regularize blk_cleanup_queue() use 2006-03-18 18:34:20 -05:00
sbus [SPARC64] bbc_i2c: Fix cpu check and add missing module license. 2006-03-20 01:16:34 -08:00
scsi
serial [SUNSU]: Fix missing spinlock initialization. 2006-03-20 01:16:32 -08:00
sh
sn
spi
tc
telephony
usb
video
w1
zorro
Kconfig
Makefile