Re: [net-next rfc v7 1/3] virtio-net: separate fields of sending/receiving queue from virtnet_info

Jason Wang
2012-12-03T05:15:01Z

[-- Attachment #1.1: Type: text/plain, Size: 1862 bytes --]

On Monday, December 03, 2012 12:25:42 PM Rusty Russell wrote:
> Jason Wang <jasowang@redhat.com> 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 majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html

[-- Attachment #1.2: Type: text/html, Size: 10223 bytes --]

[-- Attachment #2: Type: text/plain, Size: 183 bytes --]

_______________________________________________
Virtualization mailing list
Virtualization@lists.linux-foundation.org