Ъарггх! NETDEV WATCHDOG: eth0: transmit timed out

Всеки мрази проблеми. От всякакво естество. А най-отвратително е когато проблема уж се реши, а се оказва че само е отложен/разсеян/заобиколен/подтиснат…
Проблема е че LAN картата на случайни интервали от време спира да работи и единствения начин да се пусне е рестарт на машината. В dmesg имам:

NETDEV WATCHDOG: eth0: transmit timed out

LAN картата е Realtek 8139. Текуща версия на ядрото - 2.6.25.6, но проблема съществува във всички 2.6.х
В нета са изписани хиляди мнения по въпроса - никой не може да каже точно какво е. Навсякъде се повтаря ‘грешка в драйвъра на картата’. На места пишат че от 2.6.24 нагоре проблема е оправен - да, ама не. На места пишат че Windows записвал някакви шитни в паметта на картата, които пречат на други операционни системи да активират картата. Глупости, защото във FreeBSD нямам проблеми. Всъщност проблема се появява дори след рестарт от FreeBSD към Линукс.
Ето някои мои наблюдения върху феномена:
1) Грешката се появява само след рестарт от друга операционна система към Линукс.
2) Картата се изключва в абсолютно случаен момент от време - не зависи от мрежовото натоварване, от температурата или от фазата на Венера.
3) Ако се рестартира машината след получаване на грешката, има шанс това пак да се случи. Единствената застраховка - гарантирано че мрежата няма да изчезне - да се мине през пълен shut down. През какъвто и да е рестарт (топъл, студен) или стоп на машината да се мине, има шанс следващия път проблема пак да се появи.

На места намирам препоръка да се изключи tcp segmentation offload (каквото и да значи):

ethtool -K eth0 tso off

Не върши работа.

Някой казват че проблема е свързан с ACPI и препоръчват в процеса на boot-ване да се добави стринга “noacpi”. Не работи.

Най-тъпото е че Проблема (мисля че си заслужи главната буква) не може да се дебъгне с никакви конвенционални средства. Току изглежда че някаква магическа мантра помага - мрежата не пада… и след Х часа/дни/седмици пак се издъни.

А на всичкото отгоре DNS-a на доставчика ми внезапно спря да прави resolve на ivanatora.info.

Tags: , ,

5 Responses to “Ъарггх! NETDEV WATCHDOG: eth0: transmit timed out”

  1. Antonio Says:

    Същия проблем и при мен….ако намериш решение драсни го в блога…

  2. ivanatora Says:

    Добре.

  3. ILIA Says:

    Ia probvai dolnia link, niama zna4enie 4e ti e po novo iadroto pak go pa4ni , ako trebva i ra4no :), red po red . Pi6i mi ako ti e pomognalo :) .
    http://linux.derkeiler.com/Mailing-Lists/Kernel/2004-01/6776.html

  4. ILIA Says:

    Ne6to drogo iskam da dobavia, spored men problema moje da si e 4isto hardueren, defektna karta, swithch dori i mokar kabael po traseto. Moje da ti zvu4i neveroiatno no e taka, zatova i niama obiasnenie :) . Na men tazi gre6ka mi e vdiga na mrejovata karta eth1 - e1000 (Intel 1000pro server version!) koiato e varzana s 4 virtualni ma6ini i 4 bridja (Gentoo + XEN) , tarfik pod 200MB samo no6tem, denem e ludnica :) ,

  5. ivanatora Says:

    Благодаря за идеите, Илия.
    Само че веднага изключвам възможността за хлабава кримвация или проблеми по трасето - компютъра е местен на няколко места по света и винаги го прави тоя номер.
    Пача може да го пробвам някой ден (сега нямам възможност), но ако работи защо не е официално вкюьчен в сорса на ядрото?
    Поздрави!

Leave a Reply