URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 71866
[ Назад ]

Исходное сообщение
"em0 не могу поднять поллинг"

Отправлено William , 01-Фев-07 16:33 
FreeBSD 5.3-RELEASE
Стоит сетевуха Intel PRO/1000 в слоте PCI32

Установил с Intel.com последний драйвер. Прописал if_em_load="YES" в /boot/loader.conf

# sysctl -a|grep em.0
dev.em.0.чsc: Intel(R) PRO/1000 Network Connection Version - 5.1.5
dev.em.0.%driver: em
dev.em.0.%location: slot=2 function=0
dev.em.0.%pnpinfo: vendor=0x8086 device=0x1026 subvendor=0x8086 subdevice=0x1001 class=0x020000
dev.em.0.%parent: pci2

# ifconfig em0
em0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
        options=1b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING>

В ядре прописано
options DEVICE_POLLING
options HZ=1000

В итоге:
# ifconfig em0 polling
ifconfig: polling: Invalid argument

Самое обидное, что в этой же машине стоит D-Link, который прекрасно поднимает поллинг:
rl0: flags=18843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST,POLLING> mtu 1500
        options=48<VLAN_MTU,POLLING>


Собственно вопрос: где собака порылась? Почему нормальные Интеловские серверные карточки не понимают поллинг? Неужели из-за того, что воткнута в pci-32 а не pci-64???


Содержание

Сообщения в этом обсуждении
"em0 не могу поднять поллинг"
Отправлено ываыва , 01-Фев-07 16:56 
>FreeBSD 5.3-RELEASE
>Стоит сетевуха Intel PRO/1000 в слоте PCI32
>
>Установил с Intel.com последний драйвер.
Нафига? Если ставишь дрова с intel.com - пускай тебе и интел их саппортит.
Юзай те, что в freebsd интегрированны.

"em0 не могу поднять поллинг"
Отправлено William , 01-Фев-07 17:17 
>Нафига? Если ставишь дрова с intel.com - пускай тебе и интел их
>саппортит.
На соседней машине (тренеровочной) с интегрированной сетевухой на интеловскую мамку именно после этого пошло.


"em0 не могу поднять поллинг"
Отправлено Relaev , 02-Фев-07 06:37 
>FreeBSD 5.3-RELEASE

>Собственно вопрос: где собака порылась? Почему нормальные Интеловские серверные карточки не понимают
>поллинг? Неужели из-за того, что воткнута в pci-32 а не pci-64???
>
Где собака порылась не знаю, но вот мой пример, может натолкнет на мысли нужные:
6.1-RELEASE-p11 FreeBSD 6.1-RELEASE-p11
<Intel(R) PRO/1000 Network Connection Version - 3.2.18>

==в ядре==
options         HZ=2000
options         DEVICE_POLLING
==========

em0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
        options=4b<RXCSUM,TXCSUM,VLAN_MTU,POLLING>


sysctl -a | grep pol
kern.polling.burst: 150
kern.polling.burst_max: 150
kern.polling.each_burst: 5
kern.polling.idle_poll: 0
kern.polling.user_frac: 50
kern.polling.reg_frac: 20
kern.polling.short_ticks: 1388
kern.polling.lost_polls: 234040
kern.polling.pending_polls: 0
kern.polling.residual_burst: 0
kern.polling.handlers: 2
kern.polling.enable: 1
kern.polling.phase: 0
kern.polling.suspect: 225810
kern.polling.stalled: 0
kern.polling.idlepoll_sleeping: 1


"em0 не могу поднять поллинг"
Отправлено William , 02-Фев-07 09:37 
>6.1-RELEASE-p11 FreeBSD 6.1-RELEASE-p11
><Intel(R) PRO/1000 Network Connection Version - 3.2.18>
До этого была версия 3.2.15, грешил на нее.
sysctl -a | grep pol пришет примерно то же самое.
Смущает, что у Вас options=4b<....   а у меня options=1b<....
Что-то мне подсказывает, что в этой строчке описано что может и не может карточка.

"em0 не могу поднять поллинг"
Отправлено William , 02-Фев-07 10:28 
Может для гуру это будет полезно, но в /etc/sysctl.conf прописываю вот еще что:

net.link.ether.ipfw=1
net.inet.tcp.sendspace=65535
net.inet.tcp.recvspace=65535
net.local.stream.recvspace=65535
net.local.stream.sendspace=65535
net.inet.udp.maxdgram=65535
ern.ipc.somaxconn=32786
net.inet.icmp.drop_redirect=1
net.inet.icmp.log_redirect=0
net.inet6.ip6.redirect=0
net.link.ether.inet.max_age=1200
net.inet.ip.sourceroute=0
net.inet.ip.accept_sourceroute=0
net.inet.icmp.bmcastecho=0
net.inet.icmp.maskrepl=0
net.inet.tcp.blackhole=2
net.inet.udp.blackhole=1
net.inet.tcp.msl=7500
net.inet.icmp.icmplim=50
kern.polling.enable=1
kern.polling.user_frac=10
kern.ipc.somaxconn=4096
net.inet.ip.redirect=0


"em0 не могу поднять поллинг"
Отправлено Igor , 06-Фев-07 03:25 
А ядро собрано с поддержкой SMP ?
Если да, то возможно Polling работать не будет.

Из описания к драйверам:

  Polling
  -------
  NOTES: DEVICE POLLING is only valid for non-SMP (Symmetric MultiProcessing)
  kernels.


"em0 не могу поднять поллинг"
Отправлено William , 06-Фев-07 08:41 
>А ядро собрано с поддержкой SMP ?
>Если да, то возможно Polling работать не будет.

Нет. Тогда бы и на rl0 не работало ;(


"em0 не могу поднять поллинг"
Отправлено Osirix , 06-Фев-07 13:28 
При включении в ярде поллинга и его последующей сборке в драйвер сетевухи вкомпиливается дополнительный код.
Я не знаю как ты поставил внешние дрова с сайта интела может ты их как собранный ko подгружаешь тогд адействительно в них не будет никакого поллинга.
Юзай встроенные в твою фрю дрова и все будет ок.


"em0 не могу поднять поллинг"
Отправлено William , 06-Фев-07 14:55 
>Я не знаю как ты поставил внешние дрова с сайта интела может
>ты их как собранный ko подгружаешь тогд адействительно в них не
>будет никакого поллинга.
Именно так и есть! Спасибо за идею. Дрова именно подгружаю. Ночью попробую ребутнуть сервер без интеловских дров.