Messages in this thread | | | Subject | Re: [PATCH RFC v8 02/11] vhost: use batched get_vq_desc version | From | Jason Wang <> | Date | Tue, 23 Jun 2020 15:15:40 +0800 |
| |
On 2020/6/23 下午3:00, Eugenio Perez Martin wrote: > On Tue, Jun 23, 2020 at 4:51 AM Jason Wang <jasowang@redhat.com> wrote: >> >> On 2020/6/23 上午12:00, Michael S. Tsirkin wrote: >>> On Wed, Jun 17, 2020 at 11:19:26AM +0800, Jason Wang wrote: >>>> On 2020/6/11 下午7:34, Michael S. Tsirkin wrote: >>>>> static void vhost_vq_free_iovecs(struct vhost_virtqueue *vq) >>>>> { >>>>> kfree(vq->descs); >>>>> @@ -394,6 +400,9 @@ static long vhost_dev_alloc_iovecs(struct vhost_dev *dev) >>>>> for (i = 0; i < dev->nvqs; ++i) { >>>>> vq = dev->vqs[i]; >>>>> vq->max_descs = dev->iov_limit; >>>>> + if (vhost_vq_num_batch_descs(vq) < 0) { >>>>> + return -EINVAL; >>>>> + } >>>> This check breaks vdpa which set iov_limit to zero. Consider iov_limit is >>>> meaningless to vDPA, I wonder we can skip the test when device doesn't use >>>> worker. >>>> >>>> Thanks >>> It doesn't need iovecs at all, right? >>> >>> -- MST >> >> Yes, so we may choose to bypass the iovecs as well. >> >> Thanks >> > I think that the kmalloc_array returns ZERO_SIZE_PTR for all of them > in that case, so I didn't bother to skip the kmalloc_array parts. > Would you prefer to skip them all and let them NULL? Or have I > misunderstood what you mean?
I'm ok with either approach, but my understanding is that Michael wants to skip them all.
Thanks
> > Thanks! >
| |