Настройка сетевого адаптераIntel 82579LM на материнской плате Supermicro X9SCM-F

Автор CAS, 15 ноября 2015, 22:32:33

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

CAS

День добрый (а для кого и ночь), Коллеги!
Первый раз пытаюсь решить проблему созданием темы на профильном форуме. Ранее всегда находил ответы самостоятельно.
Суть проблемы - не устанавливается сетевая карта. Вводная информация: 

uname -a

Linux zabbix 3.2.0-4-amd64 #1 SMP Debian 3.2.68-1+deb7u6 x86_64 GNU/Linux

lsb_release -a

No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux 7.9 (wheezy)
Release:        7.9
Codename:       wheezy


Одна из сетевых карт, а именно (lspci -v):

0b:00.0 Ethernet controller: Intel Corporation 82579LM Gigabit Network Connection (rev 05)
        Subsystem: Super Micro Computer Inc Device 1502
        Physical Slot: 192
        Flags: fast devsel, IRQ 19
        Memory at fd3c0000 (32-bit, non-prefetchable) [size=128K]
        Memory at fd3ff000 (32-bit, non-prefetchable) [size=4K]
        I/O ports at 5000 [size=32]
        Capabilities: [c8] Power Management version 2
        Capabilities: [d0] MSI: Enable- Count=1/1 Maskable- 64bit+
        Capabilities: [e0] PCI Advanced Features

не работает - среди pci-устройств видна, а среди интерфейсов (ifconfig -a) ее нет.

Что пробовал.

Скачивал драйвер (e1000e-3.2.4.2.tar.gz), устанавливал командой

make install

подгружал модуль через /etc/rc.local:

rmmod e1000e
modprobe e1000e


после загрузки, модуль виден:

lsmod | grep e1000e

e1000e                133833  0


но сей модуль, видимо, считает что сетевой адаптер не подходит под данный драйвер (или наоборот). Краем уха слышал, что проблема может быть из за:

Subsystem: Super Micro Computer Inc Device 1502

а ведь сам адаптер от Intel..., но это догадки. Причем, гугление приводит, в основном, на темы с проблемой в работе сего адаптера (на забугорных форумах -  ;D у меня все впереди). Значит я простых вещей еще не знаю ::) - ведь у них все установилось...


Что интересно, под гипервизором ESXI 5.1\5.5 этот адаптер "заводится" установкой драйверов (а в 6.0 так вообще "из коробки" поддерживается). Но сей адаптер я "пробросил" в виртуалку с Debian и встал вопрос установки драйверов.

Linux использую давно (на серверах), но во всех случаях железо без проблем обнаруживалось еще при установке, а тут....

Может кто сталкивался с такой проблемой и подскажет направление действий - что где проверить, и как "заставить" драйвер "опознать" карту.
Заранее спасибо.

* Используйте теги [код] для оформления сообщения, ihammers.

endru

debian установлен как ВМ на Esxi?
если да: тулсы гипервизора установлены?

CAS

Цитата: endru от 16 ноября 2015, 06:18:30debian установлен как ВМ на Esxi?
если да: тулсы гипервизора установлены?
Да, но тулсы тут не причем карта "проброшена" как устройство. Сначала я карту "пробросил" в уже установленную ВМ с тулсами, но драйвер подключить не удалось. Решил поступить хитрее - создал новую машину (пробовал Debian 7 и Ubuntu 14.04 LTS). Расчет был на то, что установщик должен ее опознать - карта не новая. Но обе ОС еще на этапе установки сообщили что не могут опознать сетевой адаптер. После установки в списке PCI-устройство карта видна. Полагаю, что должна быть стандартная процедура принудительного назначения имеющегося драйвера для устройства, даже если устройство "считает" что драйвер не для него (ну в ОС windows такое можно сделать, а чем Linux хуже...).

endru

попробуй костыльный способ.
узнаешь ven dev устройства.
lspci -n| grep 0b:00.0
подгружай нужный модуль:
modprobe e1000e
далее подсовывай свой ven dev
echo "ven dev" > /sys/bus/pci/drivers/e1000e/new_id

CAS



CAS

Драйвер обновился:


[b]sudo modinfo e1000e[/b]

filename:       /lib/modules/3.2.0-4-amd64/kernel/drivers/net/ethernet/intel/e1000e/e1000e.ko
version:        3.2.4.2-NAPI
license:        GPL
description:    Intel(R) PRO/1000 Network Driver
author:         Intel Corporation, <linux.nics@intel.com>
srcversion:     1EE6CA999CFD6B1C5E7B422
alias:          pci:v00008086d000015B8sv*sd*bc*sc*i*
alias:          pci:v00008086d000015B7sv*sd*bc*sc*i*
alias:          pci:v00008086d00001570sv*sd*bc*sc*i*
alias:          pci:v00008086d0000156Fsv*sd*bc*sc*i*
alias:          pci:v00008086d000015A3sv*sd*bc*sc*i*
alias:          pci:v00008086d000015A2sv*sd*bc*sc*i*
alias:          pci:v00008086d000015A1sv*sd*bc*sc*i*
alias:          pci:v00008086d000015A0sv*sd*bc*sc*i*
alias:          pci:v00008086d00001559sv*sd*bc*sc*i*
alias:          pci:v00008086d0000155Asv*sd*bc*sc*i*
alias:          pci:v00008086d0000153Bsv*sd*bc*sc*i*
alias:          pci:v00008086d0000153Asv*sd*bc*sc*i*
alias:          pci:v00008086d00001503sv*sd*bc*sc*i*
alias:          pci:v00008086d00001502sv*sd*bc*sc*i*
alias:          pci:v00008086d000010F0sv*sd*bc*sc*i*
alias:          pci:v00008086d000010EFsv*sd*bc*sc*i*
alias:          pci:v00008086d000010EBsv*sd*bc*sc*i*
alias:          pci:v00008086d000010EAsv*sd*bc*sc*i*
alias:          pci:v00008086d00001525sv*sd*bc*sc*i*
alias:          pci:v00008086d000010DFsv*sd*bc*sc*i*
alias:          pci:v00008086d000010DEsv*sd*bc*sc*i*
alias:          pci:v00008086d000010CEsv*sd*bc*sc*i*
alias:          pci:v00008086d000010CDsv*sd*bc*sc*i*
alias:          pci:v00008086d000010CCsv*sd*bc*sc*i*
alias:          pci:v00008086d000010CBsv*sd*bc*sc*i*
alias:          pci:v00008086d000010F5sv*sd*bc*sc*i*
alias:          pci:v00008086d000010BFsv*sd*bc*sc*i*
alias:          pci:v00008086d000010E5sv*sd*bc*sc*i*
alias:          pci:v00008086d0000294Csv*sd*bc*sc*i*
alias:          pci:v00008086d000010BDsv*sd*bc*sc*i*
alias:          pci:v00008086d000010C3sv*sd*bc*sc*i*
alias:          pci:v00008086d000010C2sv*sd*bc*sc*i*
alias:          pci:v00008086d000010C0sv*sd*bc*sc*i*
alias:          pci:v00008086d00001501sv*sd*bc*sc*i*
alias:          pci:v00008086d00001049sv*sd*bc*sc*i*
alias:          pci:v00008086d0000104Dsv*sd*bc*sc*i*
alias:          pci:v00008086d0000104Bsv*sd*bc*sc*i*
alias:          pci:v00008086d0000104Asv*sd*bc*sc*i*
alias:          pci:v00008086d000010C4sv*sd*bc*sc*i*
alias:          pci:v00008086d000010C5sv*sd*bc*sc*i*
alias:          pci:v00008086d0000104Csv*sd*bc*sc*i*
alias:          pci:v00008086d000010BBsv*sd*bc*sc*i*
alias:          pci:v00008086d00001098sv*sd*bc*sc*i*
alias:          pci:v00008086d000010BAsv*sd*bc*sc*i*
alias:          pci:v00008086d00001096sv*sd*bc*sc*i*
alias:          pci:v00008086d0000150Csv*sd*bc*sc*i*
alias:          pci:v00008086d000010F6sv*sd*bc*sc*i*
alias:          pci:v00008086d000010D3sv*sd*bc*sc*i*
alias:          pci:v00008086d0000109Asv*sd*bc*sc*i*
alias:          pci:v00008086d0000108Csv*sd*bc*sc*i*
alias:          pci:v00008086d0000108Bsv*sd*bc*sc*i*
alias:          pci:v00008086d0000107Fsv*sd*bc*sc*i*
alias:          pci:v00008086d0000107Esv*sd*bc*sc*i*
alias:          pci:v00008086d0000107Dsv*sd*bc*sc*i*
alias:          pci:v00008086d000010B9sv*sd*bc*sc*i*
alias:          pci:v00008086d000010D5sv*sd*bc*sc*i*
alias:          pci:v00008086d000010DAsv*sd*bc*sc*i*
alias:          pci:v00008086d000010D9sv*sd*bc*sc*i*
alias:          pci:v00008086d00001060sv*sd*bc*sc*i*
alias:          pci:v00008086d000010A5sv*sd*bc*sc*i*
alias:          pci:v00008086d000010BCsv*sd*bc*sc*i*
alias:          pci:v00008086d000010A4sv*sd*bc*sc*i*
alias:          pci:v00008086d0000105Fsv*sd*bc*sc*i*
alias:          pci:v00008086d0000105Esv*sd*bc*sc*i*
depends:        ptp
vermagic:       3.2.0-4-amd64 SMP mod_unload modversions
parm:           copybreak:Maximum size of packet that is copied to a new buffer on receive (uint)
parm:           TxIntDelay:Transmit Interrupt Delay (array of int)
parm:           TxAbsIntDelay:Transmit Absolute Interrupt Delay (array of int)
parm:           RxIntDelay:Receive Interrupt Delay (array of int)
parm:           RxAbsIntDelay:Receive Absolute Interrupt Delay (array of int)
parm:           InterruptThrottleRate:Interrupt Throttling Rate (array of int)
parm:           IntMode:Interrupt Mode (array of int)
parm:           SmartPowerDownEnable:Enable PHY smart power down (array of int)
parm:           KumeranLockLoss:Enable Kumeran lock loss workaround (array of int)
parm:           CrcStripping:Enable CRC Stripping, disable if your BMC needs the CRC (array of int)
parm:           EEE:Enable/disable on parts that support the feature (array of int)
parm:           Node:[ROUTING] Node to allocate memory on, default -1 (array of int)
parm:           debug:Debug level (0=none,...,16=all) (int)


Натолкнулся на статью:

http://sourceforge.net/p/e1000/bugs/1/

Похоже проблема именно в связке драйвера и esxi - дрова не тестировались в виртуальной среде (ну не для этих целей создана эта сетевуха). Так же сообщалось, что ошибка 2 - это проблема определения PHY. Посоветовали скомпилировать дрова с флагами отладки, что я и сделал:


make EXTRA_CFLAGS=-DDEBUG install


После установки, соответственно:


sudo update-initramfs -u


Ну а после перезапуска сервера заглянем в лог загрузки:


sudo dmesg | grep e1000e


Все стало информативней:

[    0.760912] e1000e: Intel(R) PRO/1000 Network Driver - 3.2.4.2-NAPI
[    0.760914] e1000e: Copyright(c) 1999 - 2015 Intel Corporation.
[    0.768089] e1000e 0000:0b:00.0: Interrupt Throttling Rate (ints/sec) set to dynamic conservative mode
[    0.768280] e1000e 0000:0b:00.0: irq 73 for MSI/MSI-X
[    0.768406] e1000e 0000:0b:00.0: (unregistered net_device): reading PHY page 0 (or 0x0 shifted) reg 0x2
[    0.866730] e1000e 0000:0b:00.0: (unregistered net_device): MDI Read did not complete
[    0.866733] e1000e 0000:0b:00.0: (unregistered net_device): reading PHY page 0 (or 0x0 shifted) reg 0x2
[    0.964870] e1000e 0000:0b:00.0: (unregistered net_device): MDI Read did not complete
[    0.964876] e1000e 0000:0b:00.0: (unregistered net_device): Setting page 0x6020
[    1.063170] e1000e 0000:0b:00.0: (unregistered net_device): MDI Write did not complete
[    1.453209] e1000e 0000:0b:00.0: (unregistered net_device): LAN_INIT_DONE not set, increase timeout
[    1.473258] e1000e 0000:0b:00.0: (unregistered net_device): Setting page 0x6020
[    1.571602] e1000e 0000:0b:00.0: (unregistered net_device): MDI Write did not complete
[    1.571776] e1000e: probe of 0000:0b:00.0 failed with error -2

И уже озвученная проблема с определением PHY подтвердилась! Остается понять, чья это проблема:
ESXi?
Intel?
Связка Intel + ESXi?

По сети "гуляют" гайды по правке исходников драйвера, но везде рекомендации разные (что связано с разными платформами). Думал задать вопрос производителю, но для разбора полетов надо поставить Debian 7 на голое железо. Пока из запасов достал карту Intel EXPI9301CT - попробую ее установить и пробросить в Гостевую ОС. А эксперименты по установке Debian 7 на сервер без гипервизора отложу на позднее время (сервер боевой).




endru

скорее всего проблема в связке гипервизора и карточки.
попробуй LiveCD с данной картой.

CAS

Цитата: endru от 18 ноября 2015, 11:19:46скорее всего проблема в связке гипервизора и карточки.
попробуй LiveCD с данной картой.
Идея хорошая, но можно и проще - ведь инсталлятор Debian настраивает сеть еще до разметки диска. При установке Debian 7 на голое железо определились две сетевые карты. Так что проблема, скорее всего, в связке - может быть драйвер не учитывает временные накладные расходы гипервизора. Ведь 82574L - полноценный контроллер, а 82579LM - все же PHY - есть зависимость от BIOS-a MB. Опыты я еще проведу - попробую "пробросить" карту в гостевую ОС на базе Windows, а там посмотрим  ???. А пока в Debiane буду использовать EXPI9301CT = 82574L  отдельной платой. 

CAS

Цитата: CAS от 18 ноября 2015, 19:01:38Опыты я еще проведу - попробую "пробросить" карту в гостевую ОС
Попробовал, установка драйверов под Win7 x32 (гостевая ОС с "проброшенным" адаптером) не увенчалась успехом, ОС выдала следующее: ...., но при попытке установки этих драйверов произошла ошибка. Запуск этого устройства не возможен. (Код 10).
Отсюда делаем вывод, что дело не в Debiane и не в Windows, а в том, что данная сетевая карта не входит в HCL. На этом эксперименты завершаю.