LINUX.ORG.RU

Странное поведение Realtek RTL8111/8168B


0

2

Здравствуйте! Есть сервер на CENTOS [root@o071 log]# uname -r 2.6.28.9 Все работает прекрасно, за исключением сетевой карты:

[root@o071 ~]# lspci | grep Real 02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 02)

[root@o071 log]# ethtool -i eth0 driver: r8169 version: 2.3LK-NAPI firmware-version: bus-info: 0000:02:00.0

Проблема в следующем: при возникновении трафика более 5-8Мb/seс, будь то http, ssh, при копировании бекапов - сетевая отваливается (нет пинга), но сервер судя по всему не зависает. в логах ничего нет, спасает только ресет из панели ДЦ.

Решил поставить на сетевой 10Mb half duplex (mii-tool -F 10baseT-HD eth0) - при смене режима работы сетевой она также отваливается. то же самое происходит если сетевую попытаться ресетить (mii-tool -R eth0).

Грешу на драйвер r8169, но порыл в гугле - у людей вроде как уже давно нет проблем с этим драйвером.

В какую сторону копать, подскажите пожалуйста!

вестимо сетевая встроенная?

Dhoine ()
Ответ на: комментарий от Dhoine

Всегда думал что нет

02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 02) Subsystem: Micro-Star International Co., Ltd. Unknown device 501c Flags: bus master, fast devsel, latency 0, IRQ 17 I/O ports at e800 [size=256] Memory at fdfff000 (64-bit, prefetchable) [size=4K] Memory at fdfe0000 (64-bit, prefetchable) [size=64K] [virtual] Expansion ROM at fdf00000 [disabled] [size=64K] Capabilities: [40] Power Management version 3 Capabilities: [50] Message Signalled Interrupts: 64bit+ Queue=0/1 Enable- Capabilities: [70] Express Endpoint IRQ 1 Capabilities: [b0] MSI-X: Enable- Mask- TabSize=2 Capabilities: [d0] Vital Product Data Capabilities: [100] Advanced Error Reporting Capabilities: [140] Virtual Channel Capabilities: [160] Device Serial Number 00-00-00-00-00-00-00-00 00: ec 10 68 81 07 00 10 00 02 00 00 02 10 00 00 00 10: 01 e8 00 00 00 00 00 00 0c f0 ff fd 00 00 00 00 20: 0c 00 fe fd 00 00 00 00 00 00 00 00 62 14 1c 50 30: 00 00 00 00 40 00 00 00 00 00 00 00 0a 01 00 00

Crasnov ()
Ответ на: комментарий от Dhoine

Хотя вы правы, судя по всему встроенная Вычитал также, что можно поменять драйвер r8168 - но стремно, вдруг после установки сеть не поднимится.

Crasnov ()
Ответ на: комментарий от Crasnov

Просто у меня вот такой выхлоп на 'lspci |grep Rea'. хотя карточка дискретная

02:06.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)

Проблема всегда была, или появилась после каких-то телодвижений?

Dhoine ()
Ответ на: комментарий от Dhoine

Проблема всегда была, раньше возникала очень редко, раз в месяц может быть реже. Перезагружал сервер, думал что кривые скрипты валят его. Первый раз связь с трафиком обнаружил, когда копировал бекапы с него на другой сервер: доходит до 5-8 МБ/сек и сервер больше не пингуется. Но тогда забил, огранича скорость скачки бекапов.

А сейчас видимо в связи с ростом трафика на сайтах, сервер перестает пинговаться раз-два в неделю.

Также можно этот эффект вызвать искусственно, например попробовать переключить сетевуху в полудуплекс или переключить на 10Мб.

Crasnov ()
Ответ на: комментарий от Crasnov

Насколько я знаю, интегрированные карточки плохо себя ведут при большой нагрузке

Dhoine ()
Ответ на: комментарий от Dhoine

Дык меня бы и 10 мегабит устроило, так не дает себе перевести.

Crasnov ()
Ответ на: комментарий от Dhoine

с 8139 проблем уже давным давно нет, а вот с 8111/8168B - есть,
у меня подобная встройка от Intel, работает нормально с ядрами 30+


жалуются обычно владельцы таких же карт, но не Интел,
если ядро старое и не обновить - есть драйвер вендора, можно попробовать его

если можно обновить - имеет смысл попробовать посвежее

Sylvia ★★★★★ ()
Ответ на: комментарий от Dhoine

Да, это крайний случай. Я все таки думаю попробовать другие драйвера на 8168. Народ года два назад так решал гемор с этими сетевухами....

Crasnov ()
Ответ на: комментарий от Crasnov

Добавил тему в избранное. Отпишись, когда решишь проблему.

Dhoine ()
Ответ на: комментарий от Sylvia

ядро 2.6.28.9, вроде не такое уж и старое.

а как по удаленке поставить новый драйвер? стремно блин, если сетевая не заведется.

Crasnov ()
Ответ на: комментарий от Sylvia

Реально ли поставить драйвер через консоль по ssh? Реалтек говорит, что 8169 модуль должен быть выгружен перед загрузкой 8168. Получается что после выгрузки модуля сеть упадет?

Crasnov ()
Ответ на: комментарий от Crasnov

-=:=-

...тогда все подготовь на сервере к автомат.смене драйвера.
ПО крону Одноразово!! выставь скрипт:

сеть офф. (/etc/rc.d/network stop и для iptables если есть)
все модули, юзающие текущий драйвер rmmod
rmmod драйвер
insmod нужный_драйвер 1>/1.txt 2>/2.txt
поднятие сети ..мммм /etc/rc.d/network start (и iptables если нужно).
if [ping kernel.org == «Epic fail»] then
do
dmesq >> /log_of_epic_fail.txt
reboot
else
echo «Imba driver is work» >> /log_of_driver_change.txt
done

Ну...как-то так...просто первое что в голову пришло...:-\

KosmiK ()

Готовый r8168 для центоса есть в elrepo. Но по личному опыту — вряд ли поможет, проблема скорее всего железная. 69-е реалтеки всегда этим славились, сам сталкивался неоднократно на разных ядрах и осях.

nnz ★★★★ ()

У меня эта же карточка, но ревизия 01, судя по lspci. Таких проблем нет. Может c ядром у вас что не так?

Deleted ()
Ответ на: комментарий от Crasnov

>Реалтек говорит, что 8169 модуль должен быть выгружен перед загрузкой 8168. Получается что после выгрузки модуля сеть упадет?

Совершенно верно.
Самый простой путь — запустить в screen команду типа modprobe -r r8169 && modprobe r8168 && service network restart. Если в течение минуты сеть не поднимется, ребутай.

Перед началом испытаний убедись, что ядро подхватило модуль, т.е. modprobe -l r8168 не выдает ошибки. Если выдает — запусти depmod -a.

nnz ★★★★ ()
Ответ на: комментарий от Crasnov

-=:=-

..мил человек, ты это..не пропадай..отпишись...а то ж волнуемся...вдруг что.. >_<

KosmiK ()
Ответ на: комментарий от Crasnov

-=:=-

хм..посмотри что за рпмка качнулась, скачай вручную и посмотри, как в ней модуль называется и его размер... (и есть ли он воопще)
и далее find / -name «название_неуловимого модуля»

KosmiK ()
Ответ на: комментарий от Crasnov

>только в /lib/modules/ядро/kernel/drivers/ нет папки net

DKMS-модули могут лежать отдельно.

Правильный метод поиска модуля — modprobe -l r8168

nnz ★★★★ ()
Ответ на: -=:=- от KosmiK

>посмотри что за рпмка качнулась, скачай вручную и посмотри, как в ней модуль называется и его размер...

В данном случае сии действия не имеет смысла, т.к. это DKMS-пакет. Он содержит только компоненты для автоматической сборки модуля под нужное ядро.

nnz ★★★★ ()

Я, возможно, не в тему, но не так давно наловил уйму веселых глюков на такой сетевухе. Не заработала ни под оффтопом, ни под линуксом, была отключена и заменена.

А через ndiswrapper попробовать ее заюзать?

thesis ★★★★★ ()
Ответ на: комментарий от nnz

> Правильный метод поиска модуля — modprobe -l r8168

выполнил yum install dkms-r8168

modprobe -l r8168 не находит модуль.

да, действительно, DKMS-модуль лежит отдельно.

Как быть дальше?

Crasnov ()
Ответ на: комментарий от Crasnov

>Как быть дальше?

Ну, варианта два. Либо рисковать, либо, соответственно, не рисковать :)

Про первый случай я уже писал выше:

запустить в screen команду типа modprobe -r r8169 && modprobe r8168 && service network restart. Если в течение минуты сеть не поднимется, ребутай.

nnz ★★★★ ()
Ответ на: комментарий от nnz

дело в том, что даже при вводе modprobe -r r8169 ничего не происходит.

[root@o071 src]# lsmod Module Size Used by

по идее здесь же должен быть текущий модуль r8169?

второй вариант - это править modprobe.conf на r8168?

Crasnov ()
Ответ на: комментарий от Crasnov

>дело в том, что даже при вводе modprobe -r r8169 ничего не происходит.

Попробуй просто ввести это в консоли. Возможно, он не будет выгружаться при поднятой сети или из-за наличия подгруженных модулей, зависящих от него.

по идее здесь же должен быть текущий модуль r8169?


Да, а что там сейчас?

второй вариант - это править modprobe.conf на r8168?


А как ты потом до сервака достучишься, ежели что?

nnz ★★★★ ()
Ответ на: комментарий от nnz

>> Попробуй просто ввести это в консоли. вводил - ничего не происходит. сетка не отваливается, модуль не выгружается. Видимо, это связано с версией CENTOS - 5.3:

Анонс 5.3: «Добавлены новые драйверы: ath5k, hp-ilo, inet_lro, neic, niu, r8169, t2x00, rtl818x, uvcvideo, virtio »

http://forum.bel-net.ru/index.php?showtopic=93455

Да, а что там сейчас?

пусто.

[root@o071 src]# lsmod

Module Size Used by

[root@o071 src]#

А как ты потом до сервака достучишься, ежели что?

понятно что никак. планировал выгрузить модуль 8169 подгрузить 8168 и посмотреть что будет. А потом уже править modprobe.conf. Но только выгружать нечего.

Crasnov ()

>Есть сервер на CENTOS [root@o071 log]# uname -r 2.6.28.9

Врёте, нет CentOS'а с таким ядром

Led ★★★☆☆ ()
Ответ на: комментарий от Led

да действительно, ошибка вышла

[root@o071 src]# cat /etc/redhat-release CentOS release 5.5 (Final)

Crasnov ()
Ответ на: комментарий от Led

а насчет ядра

[root@o071 src]# uname -a Linux xxxxxx 2.6.28.9 #1 SMP Sun Mar 29 06:07:47 CEST 2009 i686 athlon i386 GNU/Linux [root@o071 src]#

не врал

Crasnov ()
Ответ на: комментарий от Crasnov

> а насчет ядра

[root@o071 src]# uname -a Linux xxxxxx 2.6.28.9 #1 SMP Sun Mar 29 06:07:47 CEST 2009 i686 athlon i386 GNU/Linux [root@o071 src]#

не врал

Соврал. Ядро - не из CentOS'а, а криворучносборное, отсюда и проблемы.

Led ★★★☆☆ ()

тред не читал, была подобная проблема на сервере с фрибсд, там была причина в автоопределении скорости подключения. после жесткой установки 100 Full на коммутаторе и на сетевом интерфейсе все стало нормально

HighwayStar ★★★★★ ()
Ответ на: комментарий от Crasnov

>Module Size Used by

А сервер физический или VPS/VDS?

nnz ★★★★ ()
Ответ на: комментарий от HighwayStar

При попытке смена режима работы - сеть отваливается.

Crasnov ()
Ответ на: комментарий от Led

Возможно вы правы на счет ядра. Если смена драйверов/сетевой не поможет - будем ядро менять

Crasnov ()
Ответ на: комментарий от Crasnov

Понятно. Значит ядро собрано монолитно. Т.е. r8169 ты не выгрузишь из него при всем желании.

anonymous ()
Ответ на: комментарий от anonymous

RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 03)

У меня тоже такая проблема на карточке 03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 03) Ядро обновил до 2.6.32-bpo.5-amd64. Проблема не решилась. Уже даже не знаю. Что делать.Сетевую другую ставить?

vladbbk ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.