When calling vringh_init_iotlb(), use the negotiated features which
might be different than the supported features.
Fixes: 011c35bac5ef ("vdpa_sim: add supported_features field in vdpasim_dev_attr)
Signed-off-by: Eli Cohen <[email protected]>
---
drivers/vdpa/vdpa_sim/vdpa_sim.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/vdpa/vdpa_sim/vdpa_sim.c b/drivers/vdpa/vdpa_sim/vdpa_sim.c
index 14e024de5cbf..89a474c7a096 100644
--- a/drivers/vdpa/vdpa_sim/vdpa_sim.c
+++ b/drivers/vdpa/vdpa_sim/vdpa_sim.c
@@ -66,7 +66,7 @@ static void vdpasim_queue_ready(struct vdpasim *vdpasim, unsigned int idx)
{
struct vdpasim_virtqueue *vq = &vdpasim->vqs[idx];
- vringh_init_iotlb(&vq->vring, vdpasim->dev_attr.supported_features,
+ vringh_init_iotlb(&vq->vring, vdpasim->features,
VDPASIM_QUEUE_MAX, false,
(struct vring_desc *)(uintptr_t)vq->desc_addr,
(struct vring_avail *)
@@ -86,7 +86,7 @@ static void vdpasim_vq_reset(struct vdpasim *vdpasim,
vq->device_addr = 0;
vq->cb = NULL;
vq->private = NULL;
- vringh_init_iotlb(&vq->vring, vdpasim->dev_attr.supported_features,
+ vringh_init_iotlb(&vq->vring, vdpasim->features,
VDPASIM_QUEUE_MAX, false, NULL, NULL, NULL);
vq->vring.notify = NULL;
--
2.30.1
?? 2021/7/19 ????9:44, Eli Cohen д??:
> When calling vringh_init_iotlb(), use the negotiated features which
> might be different than the supported features.
>
> Fixes: 011c35bac5ef ("vdpa_sim: add supported_features field in vdpasim_dev_attr)
As Stefano said.
It should be 2c53d0f64c06f ("vdpasim: vDPA device simulator")
Other than this
Acked-by: Jason Wang <[email protected]>
> Signed-off-by: Eli Cohen <[email protected]>
> ---
> drivers/vdpa/vdpa_sim/vdpa_sim.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/vdpa/vdpa_sim/vdpa_sim.c b/drivers/vdpa/vdpa_sim/vdpa_sim.c
> index 14e024de5cbf..89a474c7a096 100644
> --- a/drivers/vdpa/vdpa_sim/vdpa_sim.c
> +++ b/drivers/vdpa/vdpa_sim/vdpa_sim.c
> @@ -66,7 +66,7 @@ static void vdpasim_queue_ready(struct vdpasim *vdpasim, unsigned int idx)
> {
> struct vdpasim_virtqueue *vq = &vdpasim->vqs[idx];
>
> - vringh_init_iotlb(&vq->vring, vdpasim->dev_attr.supported_features,
> + vringh_init_iotlb(&vq->vring, vdpasim->features,
> VDPASIM_QUEUE_MAX, false,
> (struct vring_desc *)(uintptr_t)vq->desc_addr,
> (struct vring_avail *)
> @@ -86,7 +86,7 @@ static void vdpasim_vq_reset(struct vdpasim *vdpasim,
> vq->device_addr = 0;
> vq->cb = NULL;
> vq->private = NULL;
> - vringh_init_iotlb(&vq->vring, vdpasim->dev_attr.supported_features,
> + vringh_init_iotlb(&vq->vring, vdpasim->features,
> VDPASIM_QUEUE_MAX, false, NULL, NULL, NULL);
>
> vq->vring.notify = NULL;
On Tue, Jul 20, 2021 at 11:13:00AM +0800, Jason Wang wrote:
>
> 在 2021/7/19 下午9:44, Eli Cohen 写道:
> > When calling vringh_init_iotlb(), use the negotiated features which
> > might be different than the supported features.
> >
> > Fixes: 011c35bac5ef ("vdpa_sim: add supported_features field in vdpasim_dev_attr)
>
>
> As Stefano said.
>
> It should be 2c53d0f64c06f ("vdpasim: vDPA device simulator")
Makes sense. Though I haven't got Stefano's message.
I will post another one.
>
> Other than this
>
> Acked-by: Jason Wang <[email protected]>
>
>
> > Signed-off-by: Eli Cohen <[email protected]>
> > ---
> > drivers/vdpa/vdpa_sim/vdpa_sim.c | 4 ++--
> > 1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/vdpa/vdpa_sim/vdpa_sim.c b/drivers/vdpa/vdpa_sim/vdpa_sim.c
> > index 14e024de5cbf..89a474c7a096 100644
> > --- a/drivers/vdpa/vdpa_sim/vdpa_sim.c
> > +++ b/drivers/vdpa/vdpa_sim/vdpa_sim.c
> > @@ -66,7 +66,7 @@ static void vdpasim_queue_ready(struct vdpasim *vdpasim, unsigned int idx)
> > {
> > struct vdpasim_virtqueue *vq = &vdpasim->vqs[idx];
> > - vringh_init_iotlb(&vq->vring, vdpasim->dev_attr.supported_features,
> > + vringh_init_iotlb(&vq->vring, vdpasim->features,
> > VDPASIM_QUEUE_MAX, false,
> > (struct vring_desc *)(uintptr_t)vq->desc_addr,
> > (struct vring_avail *)
> > @@ -86,7 +86,7 @@ static void vdpasim_vq_reset(struct vdpasim *vdpasim,
> > vq->device_addr = 0;
> > vq->cb = NULL;
> > vq->private = NULL;
> > - vringh_init_iotlb(&vq->vring, vdpasim->dev_attr.supported_features,
> > + vringh_init_iotlb(&vq->vring, vdpasim->features,
> > VDPASIM_QUEUE_MAX, false, NULL, NULL, NULL);
> > vq->vring.notify = NULL;
>