Port-xen archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: NetBSD/xen goes off the network - reproduceable
> > xennet_handler: copying packet: i=902 free_rxreql=0
> > xennet_rx_mbuf_free: sc->sc_free_rxreql=0 SC_NLIVEREQ(sc)=0
> > xennet_rx_mbuf_free: sc->sc_free_rxreql=0 SC_NLIVEREQ(sc)=1
>
> but there is again one slot in the ring; this should be enough to make
> limited progress.
Another test with the same kernel looked like this when it locked up:
xennet_rx_mbuf_free: sc->sc_free_rxreql=0 SC_NLIVEREQ(sc)=0
xennet_handler: copying packet: i=961 free_rxreql=0
xennet_rx_mbuf_free: sc->sc_free_rxreql=0 SC_NLIVEREQ(sc)=0
xennet_handler: copying packet: i=962 free_rxreql=0
xennet_rx_mbuf_free: sc->sc_free_rxreql=0 SC_NLIVEREQ(sc)=0
> > # pkill telnet
> And at this point, the network has not restarted ?
Sorry if that wasn't clear. When I killed telnet, the network came
back immediately.
> When this happen, can you check the flags of the correponding
> xvif interface in the backend ?
I'm not sure if I understand your request. If you mean output from
ifconfig, it looks like this:
vif13.0 Link encap:Ethernet HWaddr fe:ff:ff:ff:ff:ff
inet6 addr: fe80::fcff:ffff:feff:ffff/64 Scope:Link
UP BROADCAST RUNNING PROMISC MULTICAST MTU:1500 Metric:1
RX packets:459 errors:0 dropped:0 overruns:0 frame:0
TX packets:890 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:32
RX bytes:30807 (30.0 KiB) TX bytes:79021 (77.1 KiB)
Other than the packet counters, it is always the same.
If you mean the output from netstat -i, it looks like this:
Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
vif9.0 1500 0 497 0 0 0 963 0 0 0 BMPRU
Normally, the packet counters are increasing. When the network stops, so
do the packet counters in the dom0.
> Can you give details about your dom0 ?
Currently I have Linux 2.6.18 on Xen 3.3 and Linux 3.1 on Xen 4.1. NetBSD
guests behave the same on both of these systems.
-----------------------
I have also repeated these tests with feature-rx-notify turned off.
In this case, things are a little better, but still unusable for heavy
network loads like NFS.
The complete console log is here:
http://www.panix.com/~marcotte/consolelog-no-rx-notify.txt
The difference is that instead of the network stopping completely, the
dom0 start dropping packets. This can be seen in the dom0 by running
netstat -i repeatedly:
Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
vif11.0 1500 0 520 0 0 0 1182 0 21 0 BMPRU
vif11.0 1500 0 528 0 0 0 1195 0 26 0 BMPRU
vif11.0 1500 0 542 0 0 0 1215 0 28 0 BMPRU
vif11.0 1500 0 557 0 0 0 1240 0 52 0 BMPRU
On the console:
xennet_rx_mbuf_free: sc->sc_free_rxreql=5 SC_NLIVEREQ(sc)=7
xennet_rx_mbuf_free: sc->sc_free_rxreql=6 SC_NLIVEREQ(sc)=4
xennet_rx_mbuf_free: sc->sc_free_rxreql=0 SC_NLIVEREQ(sc)=7
xennet_rx_mbuf_free: sc->sc_free_rxreql=1 SC_NLIVEREQ(sc)=1
xennet_handler: copying packet: i=1074 free_rxreql=0
xennet_rx_mbuf_free: sc->sc_free_rxreql=0 SC_NLIVEREQ(sc)=0
xennet_handler: copying packet: i=1075 free_rxreql=0
xennet_rx_mbuf_free: sc->sc_free_rxreql=0 SC_NLIVEREQ(sc)=0
xennet_handler: copying packet: i=1076 free_rxreql=0
[ It stays with this pattern until the test is stopped ]
xennet_rx_mbuf_free: sc->sc_free_rxreql=0 SC_NLIVEREQ(sc)=0
xennet_rx_mbuf_free: sc->sc_free_rxreql=0 SC_NLIVEREQ(sc)=1
xennet_rx_mbuf_free: sc->sc_free_rxreql=0 SC_NLIVEREQ(sc)=2
xennet_rx_mbuf_free: sc->sc_free_rxreql=1 SC_NLIVEREQ(sc)=2
xennet_rx_mbuf_free: sc->sc_free_rxreql=0 SC_NLIVEREQ(sc)=4
...
xennet_rx_mbuf_free: sc->sc_free_rxreql=93 SC_NLIVEREQ(sc)=162
xennet_rx_mbuf_free: sc->sc_free_rxreql=94 SC_NLIVEREQ(sc)=161
xennet_rx_mbuf_free: sc->sc_free_rxreql=95 SC_NLIVEREQ(sc)=160
Thanks
--
- Brian
Home |
Main Index |
Thread Index |
Old Index