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
On Wed, Feb 22, 2012 at 08:10:36AM -0500, Brian Marcotte wrote:
> > I found the problem: [bpf panic]
>
> I'm no longer getting a panic.
>
> > I also fixed the xennet_rx_free_req() logic to not wait for the
> > ring to be completely empty to start filling it. 4/5 of the ring size
> > looks a good compromise (doing it too often for a low number of buffers
> > increases significantly the CPU usage).
>
> In fact, without that, I would find that the dom0 would stop sending
> packets to the domU about every minute or so. Having the domU send a
> packet would unstick things. The packets were held somewhere and not
> lost.
>
> This is something I've seen in 5.1 as well, but only rarely and only
> when a system was just sitting idle for long periods of time.
>
> I found that switching to this code fixes that problem:
>
> > +#if 0
> > + RING_PUSH_REQUESTS_AND_CHECK_NOTIFY(&sc->sc_rx_ring, notify);
> > + if (notify)
> > + hypervisor_notify_via_evtchn(sc->sc_evtchn);
> > +#endif
>
> In fact, I used to run with that code in place when I was running 5.0.
It's not supposed to be needed, at last with a NetBSD dom0. Earlier linux
dom0 were not cheching the rx ring from the event handler; so sending
an event was useless. Linux 2.6.39 does check, so this code is
probably usefull now.
--
Manuel Bouyer <bouyer%antioche.eu.org@localhost>
NetBSD: 26 ans d'experience feront toujours la difference
--
Home |
Main Index |
Thread Index |
Old Index