On Monday, December 03, 2012 12:25:42 PM Rusty Russell wrote:
> Jason Wang <[email protected]> writes:
> > To support multiqueue transmitq/receiveq, the first step is to separate
> > queue related structure from virtnet_info. This patch introduce
> > send_queue and receive_queue structure and use the pointer to them as the
> > parameter in functions handling sending/receiving.
>
> OK, seems like a straightforward xform: a few nit-picks:
> > +/* Internal representation of a receive virtqueue */
> > +struct receive_queue {
> > + /* Virtqueue associated with this receive_queue */
> > + struct virtqueue *vq;
> > +
> > + struct napi_struct napi;
> > +
> > + /* Number of input buffers, and max we've ever had. */
> > + unsigned int num, max;
>
> Weird whitespace here.
>
Oh, yes, will fix it.
> > +
> > + /* Work struct for refilling if we run low on memory. */
> > + struct delayed_work refill;
>
> I can't really see the justificaiton for a refill per queue. Just have
> one work iterate all the queues if it happens, unless it happens often
> (in which case, we need to look harder at this anyway).
But during this kind of iteration, we may need enable/disable the napi
regardless of whether the receive queue has lots to be refilled. This may add
extra latency.
>
> > struct virtnet_info {
> >
> > struct virtio_device *vdev;
> >
> > - struct virtqueue *rvq, *svq, *cvq;
> > + struct virtqueue *cvq;
> >
> > struct net_device *dev;
> > struct napi_struct napi;
>
> You leave napi here, and take it away in the next patch. I think it's
> supposed to go away now.
Yes, will remove it.
Thanks
>
> Cheers,
> Rusty.
> --
> To unsubscribe from this list: send the line "unsubscribe kvm" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html_______________________________________________
Virtualization mailing list
[email protected]
https://lists.linuxfoundation.org/mailman/listinfo/virtualization