The patches really fix/simplify things :) Did you test device open->close->open? It was broken in my last test, we cad add link indications too.
Besides that I also remembered that adding 'vq->num_free =vq->ring.num;' after reset fixed part of the problems, I don't remember why (gonna re-check it soon), I think it was the reset calls for (..) detach_buf for all buffers regardless if they were free already. Cheers, Dor On Thu, 2008-01-24 at 01:18 +1100, Rusty Russell wrote: > diff -r f9464b21ed9c drivers/net/virtio_net.c > --- a/drivers/net/virtio_net.c Wed Jan 23 23:52:47 2008 +1100 > +++ b/drivers/net/virtio_net.c Thu Jan 24 00:47:05 2008 +1100 > @@ -415,12 +415,10 @@ static void virtnet_remove(struct virtio > struct sk_buff *skb; > > /* Free our skbs in send and recv queues, if any. */ > - vi->rvq->vq_ops->shutdown(vi->rvq); > while ((skb = __skb_dequeue(&vi->recv)) != NULL) { > kfree_skb(skb); > vi->num--; > } > - vi->svq->vq_ops->shutdown(vi->svq); > while ((skb = __skb_dequeue(&vi->send)) != NULL) > kfree_skb(skb); ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel