Alter.Org.UA
 << Back Home EN en   Donate Donate

ixgbe 2.4.5 for FreeBSD 7.2

by Alter (alterX@alter.org.ua (remove X))

Возникла задача завести 10G Ethernet на FreeBSD 7.2 (32-битная система i386 с PAE). Взяли Intel 10G карточки с 2 SFP+ портами. ixgbe драйвер, появившийся после cvsup'а, скомпилировался, загрузился (как модуль) и увидел ix0 и ix1. Версия драйвера была 1.7.4. При попытке настроить vlan'ы на ix0 оказалось, что трафик не бегает. Мало того, не работает infconfig up/down. После перезагрузки с PAE версией ядра вообще не завелось:

Mar 27 15:09:18 lion kernel: ix0:  p
ort 0xbf00-0xbf1f mem 0xfbc80000-0xfbcfffff,0xfbdfc000-0xfbdfffff irq 16 at device 0.0 on pci1
Mar 27 15:09:18 lion kernel: ix0: Using MSIX interrupts with 9 vectors
Mar 27 15:09:18 lion kernel: ix0: ixgbe_dma_malloc: bus_dma_tag_create failed; error 22
Mar 27 15:09:18 lion kernel: ix0: Unable to allocate TX Descriptor memory
Mar 27 15:09:18 lion kernel: device_attach: ix0 attach returned 12

Пришлось портировать ixgbe 2.4.5 из FreeBSD 8.0 и добавить возможность включения его в ядро. Т.к. новый драйвер умеет IFCAP_VLAN_HWTSO, в модуль поддержки vlan был добавлен соотв. кусок кода (if_vlan.c). PAE ядро со встроенным ixgbe успешно собралось и смогло инициализировать карточку:

Mar 27 17:06:02 lion kernel: ix0:  p
ort 0xbf00-0xbf1f mem 0xfbc80000-0xfbcfffff,0xfbdfc000-0xfbdfffff irq 16 at device 0.0 on pci1
Mar 27 17:06:02 lion kernel: ix0: Using MSIX interrupts with 9 vectors
Mar 27 17:06:02 lion kernel: ix0: [ITHREAD]
Mar 27 17:06:02 lion last message repeated 8 times
Mar 27 17:06:02 lion kernel: ix0: Ethernet address: 90:e2:ba:33:1f:40
Mar 27 17:06:02 lion kernel: ix0: PCI Express Bus: Speed 5.0Gb/s Width x8

Также, следует подправить /boot/loader.conf или /etc/sysctl.conf:

kern.ipc.nmbclusters=262144
kern.ipc.nmbjumbop=262144
kern.ipc.nmbjumbo16=32000
kern.ipc.nmbjumbo9=64000

Ниже приложен патч.

Patch and full sources download

7.2fbsd72-ixgbe-2.4.5-20130327.patch.gz
fbsd72-ixgbe-2.4.5-20130327.tgz

2013.03.27

См. также


FB or mail alterX@alter.org.ua (remove X)   Share
Автор: Alter (Александр А. Телятников) Сервер: Apache+PHP под FBSD © 2002-2024