Displaying 9 results from an estimated 9 matches for "desc_iterator".
2017 Jul 23
2
[PATCH v12 5/8] virtio-balloon: VIRTIO_BALLOON_F_SG
...}
>
> The above seems unnecessary to me to have three different APIs.
> That's the reason to combine them into one virtqueue_add_chain_desc().
>
> -- or, do you have a different thought about using the three APIs?
>
>
> Implementation Reference:
>
> struct desc_iterator {
> unsigned int head;
> unsigned int tail;
> };
>
> add_first(*vq, *desc_iterator, *num_free, ..)
> {
> if (vq->vq.num_free < 1)
> return -ENOSPC;
> get_desc(&desc_id);
> desc[desc_id].flag &= ~_F_NEXT;
> desc_iterator...
2017 Jul 23
2
[PATCH v12 5/8] virtio-balloon: VIRTIO_BALLOON_F_SG
...}
>
> The above seems unnecessary to me to have three different APIs.
> That's the reason to combine them into one virtqueue_add_chain_desc().
>
> -- or, do you have a different thought about using the three APIs?
>
>
> Implementation Reference:
>
> struct desc_iterator {
> unsigned int head;
> unsigned int tail;
> };
>
> add_first(*vq, *desc_iterator, *num_free, ..)
> {
> if (vq->vq.num_free < 1)
> return -ENOSPC;
> get_desc(&desc_id);
> desc[desc_id].flag &= ~_F_NEXT;
> desc_iterator...
2017 Jul 13
2
[PATCH v12 5/8] virtio-balloon: VIRTIO_BALLOON_F_SG
On Thu, Jul 13, 2017 at 03:42:35PM +0800, Wei Wang wrote:
> On 07/12/2017 09:56 PM, Michael S. Tsirkin wrote:
> >
> > So the way I see it, there are several issues:
> >
> > - internal wait - forces multiple APIs like kick/kick_sync
> > note how kick_sync can fail but your code never checks return code
> > - need to re-write the last descriptor - might
2017 Jul 13
2
[PATCH v12 5/8] virtio-balloon: VIRTIO_BALLOON_F_SG
On Thu, Jul 13, 2017 at 03:42:35PM +0800, Wei Wang wrote:
> On 07/12/2017 09:56 PM, Michael S. Tsirkin wrote:
> >
> > So the way I see it, there are several issues:
> >
> > - internal wait - forces multiple APIs like kick/kick_sync
> > note how kick_sync can fail but your code never checks return code
> > - need to re-write the last descriptor - might
2017 Jul 14
0
[PATCH v12 5/8] virtio-balloon: VIRTIO_BALLOON_F_SG
...oto start;
} else {
goto next_one;
}
The above seems unnecessary to me to have three different APIs.
That's the reason to combine them into one virtqueue_add_chain_desc().
-- or, do you have a different thought about using the three APIs?
Implementation Reference:
struct desc_iterator {
unsigned int head;
unsigned int tail;
};
add_first(*vq, *desc_iterator, *num_free, ..)
{
if (vq->vq.num_free < 1)
return -ENOSPC;
get_desc(&desc_id);
desc[desc_id].flag &= ~_F_NEXT;
desc_iterator->head = desc_id
desc_iterator->tail...
2017 Jul 26
2
[PATCH v12 5/8] virtio-balloon: VIRTIO_BALLOON_F_SG
...> > > That's the reason to combine them into one virtqueue_add_chain_desc().
> > >
> > > -- or, do you have a different thought about using the three APIs?
> > >
> > >
> > > Implementation Reference:
> > >
> > > struct desc_iterator {
> > > unsigned int head;
> > > unsigned int tail;
> > > };
> > >
> > > add_first(*vq, *desc_iterator, *num_free, ..)
> > > {
> > > if (vq->vq.num_free < 1)
> > > return -ENOSPC;
> > >...
2017 Jul 26
2
[PATCH v12 5/8] virtio-balloon: VIRTIO_BALLOON_F_SG
...> > > That's the reason to combine them into one virtqueue_add_chain_desc().
> > >
> > > -- or, do you have a different thought about using the three APIs?
> > >
> > >
> > > Implementation Reference:
> > >
> > > struct desc_iterator {
> > > unsigned int head;
> > > unsigned int tail;
> > > };
> > >
> > > add_first(*vq, *desc_iterator, *num_free, ..)
> > > {
> > > if (vq->vq.num_free < 1)
> > > return -ENOSPC;
> > >...
2017 Jul 26
0
[PATCH v12 5/8] virtio-balloon: VIRTIO_BALLOON_F_SG
...eems unnecessary to me to have three different APIs.
>> That's the reason to combine them into one virtqueue_add_chain_desc().
>>
>> -- or, do you have a different thought about using the three APIs?
>>
>>
>> Implementation Reference:
>>
>> struct desc_iterator {
>> unsigned int head;
>> unsigned int tail;
>> };
>>
>> add_first(*vq, *desc_iterator, *num_free, ..)
>> {
>> if (vq->vq.num_free < 1)
>> return -ENOSPC;
>> get_desc(&desc_id);
>> desc[desc_id]...
2017 Jul 27
0
[PATCH v12 5/8] virtio-balloon: VIRTIO_BALLOON_F_SG
...;> That's the reason to combine them into one virtqueue_add_chain_desc().
>>>>
>>>> -- or, do you have a different thought about using the three APIs?
>>>>
>>>>
>>>> Implementation Reference:
>>>>
>>>> struct desc_iterator {
>>>> unsigned int head;
>>>> unsigned int tail;
>>>> };
>>>>
>>>> add_first(*vq, *desc_iterator, *num_free, ..)
>>>> {
>>>> if (vq->vq.num_free < 1)
>>>> return -ENOSP...