vdpa: update used->flags in used ring relay
Checks
Commit Message
From: BillXiang <xiangwencheng@dayudpu.com>
The vDPA device will work incorrectly if flags such as
VRING_USED_F_NO_NOTIFY are not updated correctly.
Signed-off-by: BillXiang <xiangwencheng@dayudpu.com>
---
lib/vhost/vdpa.c | 1 +
1 file changed, 1 insertion(+)
Comments
On 7/17/24 05:24, BillXiang wrote:
> From: BillXiang <xiangwencheng@dayudpu.com>
>
> The vDPA device will work incorrectly if flags such as
> VRING_USED_F_NO_NOTIFY are not updated correctly.
>
> Signed-off-by: BillXiang <xiangwencheng@dayudpu.com>
> ---
> lib/vhost/vdpa.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/lib/vhost/vdpa.c b/lib/vhost/vdpa.c
> index a1dd5a753b..8abb073675 100644
> --- a/lib/vhost/vdpa.c
> +++ b/lib/vhost/vdpa.c
> @@ -174,6 +174,7 @@ rte_vdpa_relay_vring_used(int vid, uint16_t qid, void *vring_m)
> idx = vq->used->idx;
> idx_m = s_vring->used->idx;
> ret = (uint16_t)(idx_m - idx);
> + vq->used->flags = s_vring->used->flags;
>
> while (idx != idx_m) {
> /* copy used entry, used ring logging is not covered here */
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Thanks,
Maxime
On 9/19/24 12:37, Maxime Coquelin wrote:
>
>
> On 7/17/24 05:24, BillXiang wrote:
>> From: BillXiang <xiangwencheng@dayudpu.com>
>>
>> The vDPA device will work incorrectly if flags such as
>> VRING_USED_F_NO_NOTIFY are not updated correctly.
>>
>> Signed-off-by: BillXiang <xiangwencheng@dayudpu.com>
>> ---
>> lib/vhost/vdpa.c | 1 +
>> 1 file changed, 1 insertion(+)
>>
>> diff --git a/lib/vhost/vdpa.c b/lib/vhost/vdpa.c
>> index a1dd5a753b..8abb073675 100644
>> --- a/lib/vhost/vdpa.c
>> +++ b/lib/vhost/vdpa.c
>> @@ -174,6 +174,7 @@ rte_vdpa_relay_vring_used(int vid, uint16_t qid,
>> void *vring_m)
>> idx = vq->used->idx;
>> idx_m = s_vring->used->idx;
>> ret = (uint16_t)(idx_m - idx);
>> + vq->used->flags = s_vring->used->flags;
>> while (idx != idx_m) {
>> /* copy used entry, used ring logging is not covered here */
>
> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
I fix the title from used->flags to used flags.
And also add Fixes tag and Cc stable so that it is backported.
> Thanks,
> Maxime
@@ -174,6 +174,7 @@ rte_vdpa_relay_vring_used(int vid, uint16_t qid, void *vring_m)
idx = vq->used->idx;
idx_m = s_vring->used->idx;
ret = (uint16_t)(idx_m - idx);
+ vq->used->flags = s_vring->used->flags;
while (idx != idx_m) {
/* copy used entry, used ring logging is not covered here */