Re: tg3: unable to handle null pointer dereference
On 06.04.2007 [17:36:00 -0700], David Miller wrote: > From: "Michael Chan" <[EMAIL PROTECTED]> > Date: Fri, 06 Apr 2007 15:57:13 -0700 > > > On Fri, 2007-04-06 at 14:40 -0700, Nishanth Aravamudan wrote: > > > > > 2.6.21-rc5 is ok. 2.6.21-rc6 results in > > > > > > [ 14.241665] Unable to handle kernel NULL pointer dereference (address > > > ) > > > > Sorry, I think this should fix it: > > > > [TG3]: Fix crash during tg3_init_one(). > > > > The driver will crash when the chip has been initialized by EFI before > > tg3_init_one(). In this case, the driver will call tg3_chip_reset() > > before allocating consistent memory. > > > > The bug is fixed by checking for tp->hw_status before accessing it > > during tg3_chip_reset(). > > > > Signed-off-by: Michael Chan <[EMAIL PROTECTED]> > > Applied, thanks Michael. FWIW, tested, no panic. Tested-by: Nishanth Aravamudan <[EMAIL PROTECTED]> Thanks, Nish -- Nishanth Aravamudan <[EMAIL PROTECTED]> IBM Linux Technology Center - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: tg3: unable to handle null pointer dereference
From: "Michael Chan" <[EMAIL PROTECTED]> Date: Fri, 06 Apr 2007 15:57:13 -0700 > On Fri, 2007-04-06 at 14:40 -0700, Nishanth Aravamudan wrote: > > > 2.6.21-rc5 is ok. 2.6.21-rc6 results in > > > > [ 14.241665] Unable to handle kernel NULL pointer dereference (address > > ) > > Sorry, I think this should fix it: > > [TG3]: Fix crash during tg3_init_one(). > > The driver will crash when the chip has been initialized by EFI before > tg3_init_one(). In this case, the driver will call tg3_chip_reset() > before allocating consistent memory. > > The bug is fixed by checking for tp->hw_status before accessing it > during tg3_chip_reset(). > > Signed-off-by: Michael Chan <[EMAIL PROTECTED]> Applied, thanks Michael. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: tg3: unable to handle null pointer dereference [Re: Linux 2.6.21-rc6]
On Fri, 2007-04-06 at 14:40 -0700, Nishanth Aravamudan wrote: > 2.6.21-rc5 is ok. 2.6.21-rc6 results in > > [ 14.241665] Unable to handle kernel NULL pointer dereference (address > ) Sorry, I think this should fix it: [TG3]: Fix crash during tg3_init_one(). The driver will crash when the chip has been initialized by EFI before tg3_init_one(). In this case, the driver will call tg3_chip_reset() before allocating consistent memory. The bug is fixed by checking for tp->hw_status before accessing it during tg3_chip_reset(). Signed-off-by: Michael Chan <[EMAIL PROTECTED]> diff --git a/drivers/net/tg3.c b/drivers/net/tg3.c index 0acee9f..256969e 100644 --- a/drivers/net/tg3.c +++ b/drivers/net/tg3.c @@ -4834,8 +4834,10 @@ static int tg3_chip_reset(struct tg3 *tp) * sharing or irqpoll. */ tp->tg3_flags |= TG3_FLAG_CHIP_RESETTING; - tp->hw_status->status = 0; - tp->hw_status->status_tag = 0; + if (tp->hw_status) { + tp->hw_status->status = 0; + tp->hw_status->status_tag = 0; + } tp->last_tag = 0; smp_mb(); synchronize_irq(tp->pdev->irq); - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/