On Fri, 2005-11-25 at 14:56 +0000, Ewan Mellor wrote:
> Yes, I've been discussing this with Keir and Ian, following your bug report
> and first patch. It would be nice if we could tear down cleanly, even when
> packets are in flight, but as you've found out, this is quite fiddly, as the
> backend may hold outstanding references to transmitted packets. The easiest
> solution might be to simply refuse to close down unless the network interface
> has been closed down in userspace, and then it should be much easier to close
> down the driver, because there will be no packets being transmitted. This
> does not seem like an unreasonable restriction to me.
>
> For the receive queue it will be necessary to drop packets in the queue, and
> remove the grants on that queue so that no more packets are received. This
> may require more synchronisation between frontend and backend than we have
> already, I'm not sure.
>
> Basically, it's quite a complicated piece of work still. Network hotplugging
> has never worked before, and it seems that there is still plenty of work
> needed on the driver before it can support it. You are more than welcome to
> work on it, but I think that you probably ought to speak to Keir, who
> understands the driver better than I do, before plowing in.
The xenidc stuff already works to do this correctly for USB and was
designed to be extensible for the different kind of transfer mechanism
required by networking. If you eventually choose to accept the xenidc
code I can help you to extend it to support the network driver.
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|