I had the same issue six months ago with a test server. I did not find a
solution. I'm very much would like to see if you do find one. Thanks.
Marek

> 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     r...@solo.xxx.biz:/usr/obj/usr/src/sys/solo.2
> amd64
>
> #pciconf -lv
> ...
> e...@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
> e...@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@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-net
> To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"
>


_______________________________________________
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"

Reply via email to