Error: em0: Watchdog timeout -- resetting
Artyom Viklenko
artem at viklenko.net
Thu Aug 26 05:19:18 UTC 2010
26.08.2010 00:38, Vladislav V. Prodan пишет:
>
> Add to /etc/rc.local :
> ifconfig em0 debug
> ifconfig em0 media 100baseTX mediaopt full-duplex
>
> For in rc.conf not working these options:
> #ifconfig_em0="100baseTX mediaopt full-duplex"
> #ifconfig_em0="debug -vlanmtu -vlanhwtag -vlanhwfilter -vlanhwtso -wol"
>
Try
ifconfig_em0="100baseTX mediaopt full-duplex"
ifconfig_em0_alias0="debug -vlanmtu -vlanhwtag -vlanhwfilter -vlanhwtso
-wol"
> Now the network card looks like this:
> # ifconfig em0 | grep -v inet
> em0: flags=8847<UP,BROADCAST,DEBUG,RUNNING,SIMPLEX,MULTICAST> metric 0
> mtu 1500
>
> options=219b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,TSO4,WOL_MAGIC>
> ether 00:25:90:05:83:7a
> nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
> media: Ethernet 100baseTX<full-duplex>
> status: active
>
>
> 25.08.2010 0:57, Vladislav V. Prodan wrote:
>> The server is sometimes off the network card.
>> It helps just to restart via KVM-IPMI.
>>
>> MotherBoard: X8SIL/X8SIL-F
>> BIOS Version: 1.0c
>> Build Date: 02/05/10
>>
>> OS: FreeBSD 8.1-RELEASE, FreeBSD 8.1-STABLE, FreeBSD 9.0-CURRENT
>>
>> What would you recommend to address the problem?
>>
>>
>> # uname -a
>> FreeBSD solo.XXX.biz 9.0-CURRENT FreeBSD 9.0-CURRENT #0: Tue Aug 24
>> 15:52:21 EEST 2010 root at solo.XXX.biz:/usr/obj/usr/src/sys/solo.2 amd64
>>
>> #pciconf -lv
>> ...
>> em0 at pci0:2:0:0: class=0x020000 card=0x060515d9 chip=0x10d38086 rev=0x00
>> hdr=0x00
>> vendor = 'Intel Corporation'
>> device = 'Intel 82574L Gigabit Ethernet Controller (82574L)'
>> class = network
>> subclass = ethernet
>> em1 at pci0:3:0:0: class=0x020000 card=0x060515d9 chip=0x10d38086 rev=0x00
>> hdr=0x00
>> vendor = 'Intel Corporation'
>> device = 'Intel 82574L Gigabit Ethernet Controller (82574L)'
>> class = network
>> subclass = ethernet
>> ...
>>
>> In /usr/src/sys/dev/e1000/if_em.c:
>>
>> static void
>> em_local_timer(void *arg)
>> {
>> struct adapter *adapter = arg;
>> struct ifnet *ifp = adapter->ifp;
>> struct tx_ring *txr = adapter->tx_rings;
>>
>> EM_CORE_LOCK_ASSERT(adapter);
>>
>> em_update_link_status(adapter);
>> em_update_stats_counters(adapter);
>>
>> /* Reset LAA into RAR[0] on 82571 */
>> if (e1000_get_laa_state_82571(&adapter->hw) == TRUE)
>> e1000_rar_set(&adapter->hw, adapter->hw.mac.addr, 0);
>>
>> /*
>> ** Check for time since any descriptor was cleaned
>> */
>> for (int i = 0; i< adapter->num_queues; i++, txr++) {
>> EM_TX_LOCK(txr);
>> if (txr->watchdog_check == FALSE) {
>> EM_TX_UNLOCK(txr);
>> continue;
>> }
>> if ((ticks - txr->watchdog_time)> EM_WATCHDOG)
>> goto hung;
>> EM_TX_UNLOCK(txr);
>> }
>>
>> callout_reset(&adapter->timer, hz, em_local_timer, adapter);
>> return;
>> hung:
>> device_printf(adapter->dev, "Watchdog timeout -- resetting\n");
>> ifp->if_drv_flags&= ~IFF_DRV_RUNNING;
>> adapter->watchdog_events++;
>> EM_TX_UNLOCK(txr);
>> em_init_locked(adapter);
>> }
>>
>> Someone will finish the piece for debugging, to further diagnose the error?
>>
>> _______________________________________________
>> freebsd-net at freebsd.org mailing list
>> http://lists.freebsd.org/mailman/listinfo/freebsd-net
>> To unsubscribe, send any mail to "freebsd-net-unsubscribe at freebsd.org"
>>
>>
>>
>
> _______________________________________________
> freebsd-net at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-net
> To unsubscribe, send any mail to "freebsd-net-unsubscribe at freebsd.org"
--
Sincerely yours,
Artyom Viklenko.
-------------------------------------------------------
artem at aws-net.org.ua | http://www.aws-net.org.ua/~artem
artem at viklenko.net | ================================
FreeBSD: The Power to Serve - http://www.freebsd.org
More information about the freebsd-net
mailing list