Elime geçen ilk live CD Lubuntu ile bilgisayarı açtım. İlk olarak
ile bilgisayardaki ağ arayüzlerini listeledim. Bilgisayarda iki ethernet kartı vardı ama ifconfig çıktısında arızalı kartla ilgili birşey listelenmedi. Arından lspci ile PCI veriyolundaki cihazları listeledim. Burada iki ethernet kartı için çıkş vardı, ama sorunun kaynağına götürcek önemli bir bilgiye rastlamadım.ifconfig -a
$ sudo lspci -s 01:08.0 -v01:08.0 Ethernet controller: Intel Corporation 82801BA/BAM/CA/CAM Ethernet Controller (rev 03)
Subsystem: Intel Corporation Device 3013
Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Interrupt: pin A routed to IRQ 11
Region 0: Memory at fe9ee000 (32-bit, non-prefetchable) [size=4K]
Region 1: I/O ports at de80 [size=64]
Capabilities: [dc] Power Management version 2
Flags: PMEClk- DSI+ D1+ D2+ AuxCurrent=0mA PME(D0+,D1+,D2+,D3hot+,D3cold+)
Status: D0 PME-Enable- DSel=0 DScale=2 PME-
Kernel modules: e100
Bundan sonra da dmesg ile çekirdek mesajlarına baktım. İlk kullandığım filtre eth ile birşey bulamadım. Daha sonra ethernet kart(lar)ının kullandığı kernel modülü (driver) adı e100'ü kullandım.
$ dmesg | grep -i e100
[ 0.147376] pci 0000:01:08.0: Firmware left e100 interrupts enabled; disablingVe burada anahtar bilgiye ulaştım! Yukarıda kırmızı ile işaretlediğim yerde bir EEPROM bozulmasından bahsediyor. Demek ki MAC adresinin FF:FF ile başlamasının sebebi de buymuş. Böyle bir bilgiye Windows ile (üçüncü parti araç kullanmadan) asla ulaşamazdım. Bu, daha önce de başıma gelmişti. Bazen önemli bir donanım bileşeninin arızası bilgisayarın düzgün çalışmasını engelliyor. Ancak Windows bunu doğru bir şekilde haber vermiyor. Ama linux dmesg kayıtları bu iş için süper!
[ 0.147414] pci 0000:01:0a.0: Firmware left e100 interrupts enabled; disabling
[ 2.453617] e100: Intel(R) PRO/100 Network Driver, 3.5.24-k2-NAPI
[ 2.453630] e100: Copyright(c) 1999-2006 Intel Corporation
[ 2.454160] e100 0000:01:08.0: PCI INT A -> Link[LNKE] -> GSI 11 (level, low) -> IRQ 11
[ 2.475976] e100: 0000:01:08.0: e100_eeprom_load: EEPROM corrupted
[ 2.499144] e100 0000:01:08.0: PCI INT A disabled
[ 2.499187] e100: probe of 0000:01:08.0 failed with error -11
[ 2.499663] e100 0000:01:0a.0: PCI INT A -> Link[LNKG] -> GSI 11 (level, low) -> IRQ 11
[ 2.523051] e100 0000:01:0a.0: PME# disabled
[ 2.567253] e100: eth0: e100_probe: addr 0xfe9ef000, irq 11, MAC addr 00:02:b3:98:7f:08
Bu ethernet kartı on-board olduğu için değiştirme şansım yok. EEPROM'u tekrar programlama şansım var mıdır acaba? Google amca'ya sormak gerek...
Ek (22.08.2011)
Denemedim ama Linux tarafında bir yarabandı çözümü varmış.
/etc/modprobe.d/optionsdosyasına
options e100 eeprom_bad_csum_allow=1satırını ekleyince ve ardından
sudo update-initramfs -uyapınca çalışacakmış.