Re: [PATCH] net-tg3: Initialize REG_BASE_ADDR at PCI config offset120 to 0

From: Sergei Shtylyov
Date: Mon Dec 09 2013 - 15:18:53 EST


Hello.

On 12/09/2013 10:22 PM, Natarajan Gurumoorthy wrote:

Michael,
We had crashes when the PCI config space got scanned via
/sys/devices/pcixxxx/....../config.

I agree that this fix will not help if the scan happens before the tg3
driver gets loaded.

Then perhaps a better place for such fixup would be a PCI quirk?

Regards
Nat

On Mon, Dec 9, 2013 at 11:00 AM, Michael Chan <mchan@xxxxxxxxxxxx> wrote:
On Mon, 2013-12-09 at 10:43 -0800, Nat Gurumoorthy wrote:
The new tg3 driver leaves REG_BASE_ADDR (PCI config offset 120)
uninitialized. From power on reset this register may have garbage in it. The
Register Base Address register defines the device local address of a
register. The data pointed to by this location is read or written using
the Register Data register (PCI config offset 128). When REG_BASE_ADDR has
garbage any read or write of Register Data Register (PCI 128) will cause the
PCI bus to lock up. The TCO watchdog will fire and bring down the system.


Is this to prevent problem from other software that may be scanning the
PCI config space? It won't help if this happens before the tg3 driver
is loaded, right?

Thanks.

WBR, Sergei

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/