lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Tue, 07 Nov 2006 09:43:45 -0800
From:	Auke Kok <auke-jan.h.kok@...el.com>
To:	linux-kernel@...r.kernel.org
CC:	"H. Peter Anvin" <hpa@...or.com>, saw@....sw.com.sg,
	thockin@...kin.org
Subject: Re: Intel 82559 NIC corrupted EEPROM

H. Peter Anvin wrote:
> John wrote:
>>
>> I then used ethtool to dump the contents of the EEPROMs.
>>
>> # ethtool -e eth0
>> Offset          Values
>> ------          ------
>> 0x0000          ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
>> 0x0010          ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
>> 0x0020          ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
>> 0x0030          ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
>> 0x0040          ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
>> 0x0050          ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
>> 0x0060          ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
>> 0x0070          ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
>>
>> Either the EEPROM image on eth0 is corrupted, or ethtool is not
>> able to read the contents of the EEPROM.
>>
> 
> [...]
> 
>>
>> I then used Donald Becker's program to dump the contents of all
>> the EEPROMs. ( ftp://www.scyld.com/pub/diag/ )
>>
>> # eepro100-diag -ee
>> eepro100-diag.c:v2.13 2/28/2005 Donald Becker (becker@...ld.com)
>>  http://www.scyld.com/diag/index.html
>>
>> Index #1: Found a Intel i82557/8/9 EtherExpressPro100 adapter at 0xd800.
>> EEPROM contents, size 64x16:
>>     00: 3000 0464 e4e6 0e03 0000 0201 4701 0000  _0d__________G__
>>   0x08: 7213 8310 40a2 0001 8086 0000 0000 0000  _r___@..._______
>>       ...
>>   0x30: 0128 0000 0000 0000 0000 0000 0000 0000  (_______________
>>   0x38: 0000 0000 0000 0000 0000 0000 0000 92f7  ________________
>>  The EEPROM checksum is correct.
>> Intel EtherExpress Pro 10/100 EEPROM contents:
>>   Station address 00:30:64:04:E6:E4.
>>   Board assembly 721383-016, Physical connectors present: RJ45
>>   Primary interface chip i82555 PHY #1.
>>    Sleep mode is enabled.  This is not recommended.
>>    Under high load the card may not respond to
>>    PCI requests, and thus cause a master abort.
>>    To clear sleep mode use the '-G 0 -w -w -f' options.
>>
>> Index #2: Found a Intel i82557/8/9 EtherExpressPro100 adapter at 0xdc00.
>> EEPROM contents, size 64x16:
>>     00: 3000 0464 e5e6 0e03 0000 0201 4701 0000  _0d__________G__
>>   0x08: 7213 8310 40a2 0001 8086 0000 0000 0000  _r___@..._______
>>       ...
>>   0x30: 0128 0000 0000 0000 0000 0000 0000 0000  (_______________
>>   0x38: 0000 0000 0000 0000 0000 0000 0000 91f7  ________________
>>  The EEPROM checksum is correct.
>> Intel EtherExpress Pro 10/100 EEPROM contents:
>>   Station address 00:30:64:04:E6:E5.
>>   Board assembly 721383-016, Physical connectors present: RJ45
>>   Primary interface chip i82555 PHY #1.
>>    Sleep mode is enabled.  This is not recommended.
>>    Under high load the card may not respond to
>>    PCI requests, and thus cause a master abort.
>>    To clear sleep mode use the '-G 0 -w -w -f' options.
>>
>> Index #3: Found a Intel i82557/8/9 EtherExpressPro100 adapter at 0xe000.
>> EEPROM contents, size 64x16:
>>     00: 3000 0464 e6e6 0e03 0000 0201 4701 0000  _0d__________G__
>>   0x08: 7213 8310 40a2 0001 8086 0000 0000 0000  _r___@..._______
>>       ...
>>   0x30: 0128 0000 0000 0000 0000 0000 0000 0000  (_______________
>>   0x38: 0000 0000 0000 0000 0000 0000 0000 90f7  ________________
>>  The EEPROM checksum is correct.
>> Intel EtherExpress Pro 10/100 EEPROM contents:
>>   Station address 00:30:64:04:E6:E6.
>>   Board assembly 721383-016, Physical connectors present: RJ45
>>   Primary interface chip i82555 PHY #1.
>>    Sleep mode is enabled.  This is not recommended.
>>    Under high load the card may not respond to
>>    PCI requests, and thus cause a master abort.
>>    To clear sleep mode use the '-G 0 -w -w -f' options.
>>
>> Apparently, eepro100.ko is able to read the contents of the EEPROM on 
>> eth0 and it declares the checksum correct. Is it possible that there 
>> is a bug in e100.c that makes it fail to read the EEPROM on eth0?
>>
> 
> Sure as heck sounds like it.

(Please CC either me or at netdev on all intel nic drivers. thanks. I removed 
`john@...vacy.net` since it throws a bounce, and linux.nics@...el.com is a support 
address only, doesn't reach us developers)

how did you do the first `ethtool` eeprom dump? did you have the `e100` module loaded at 
that time? Did you use the new `override` mechanism graciously donated by David M?

Cheers,

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ