Jason Wang
2022-Feb-14 06:28 UTC
[PATCH V4 3/4] vhost_vdpa: don't setup irq offloading when irq_num < 0
? 2022/2/3 ??3:27, Zhu Lingshan ??:> When irq number is negative(e.g., -EINVAL), the virtqueue > may be disabled or the virtqueues are sharing a device irq. > In such case, we should not setup irq offloading for a virtqueue. > > Signed-off-by: Zhu Lingshan <lingshan.zhu at intel.com> > --- > drivers/vhost/vdpa.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/drivers/vhost/vdpa.c b/drivers/vhost/vdpa.c > index 851539807bc9..c4fcacb0de3a 100644 > --- a/drivers/vhost/vdpa.c > +++ b/drivers/vhost/vdpa.c > @@ -96,6 +96,10 @@ static void vhost_vdpa_setup_vq_irq(struct vhost_vdpa *v, u16 qid) > if (!ops->get_vq_irq) > return; > > + irq = ops->get_vq_irq(vdpa, qid); > + if (irq < 0) > + return; > + > irq = ops->get_vq_irq(vdpa, qid);So the get_vq_irq() will be called twice?> irq_bypass_unregister_producer(&vq->call_ctx.producer); > if (!vq->call_ctx.ctx || irq < 0)We're already checked irq against 0 here. Thanks