[dpdk-dev] [PATCH v1] vhost: add device reset status

Xia, Chenbo chenbo.xia at intel.com
Fri Aug 7 09:42:55 CEST 2020


Hi Adrian,

> -----Original Message-----
> From: Adrian Moreno <amorenoz at redhat.com>
> Sent: Thursday, August 6, 2020 7:59 PM
> To: Xia, Chenbo <chenbo.xia at intel.com>; dev at dpdk.org
> Cc: maxime.coquelin at redhat.com; Wang, Zhihong <zhihong.wang at intel.com>
> Subject: Re: [PATCH v1] vhost: add device reset status
> 
> 
> 
> On 8/6/20 1:34 PM, Chenbo Xia wrote:
> > vhost lib now does not have definition of reset status. This patch
> > adds the reset status definiton and changes related log.
> >
> > Signed-off-by: Chenbo Xia <chenbo.xia at intel.com>
> > ---
> >  lib/librte_vhost/vhost.h      | 1 +
> >  lib/librte_vhost/vhost_user.c | 2 ++
> >  2 files changed, 3 insertions(+)
> >
> > diff --git a/lib/librte_vhost/vhost.h b/lib/librte_vhost/vhost.h
> > index 632f66d53..73a1ed889 100644
> > --- a/lib/librte_vhost/vhost.h
> > +++ b/lib/librte_vhost/vhost.h
> > @@ -239,6 +239,7 @@ struct vhost_virtqueue {
> >  } __rte_cache_aligned;
> >
> >  /* Virtio device status as per Virtio specification */
> > +#define VIRTIO_DEVICE_STATUS_RESET		0x00
> >  #define VIRTIO_DEVICE_STATUS_ACK		0x01
> >  #define VIRTIO_DEVICE_STATUS_DRIVER		0x02
> >  #define VIRTIO_DEVICE_STATUS_DRIVER_OK		0x04
> > diff --git a/lib/librte_vhost/vhost_user.c
> b/lib/librte_vhost/vhost_user.c
> > index c3c924fae..1b520ead7 100644
> > --- a/lib/librte_vhost/vhost_user.c
> > +++ b/lib/librte_vhost/vhost_user.c
> > @@ -2531,6 +2531,7 @@ vhost_user_set_status(struct virtio_net **pdev,
> struct VhostUserMsg *msg,
> >  	}
> >
> >  	VHOST_LOG_CONFIG(INFO, "New device status(0x%08x):\n"
> > +			"\t-RESET: %u\n"
> >  			"\t-ACKNOWLEDGE: %u\n"
> >  			"\t-DRIVER: %u\n"
> >  			"\t-FEATURES_OK: %u\n"
> > @@ -2538,6 +2539,7 @@ vhost_user_set_status(struct virtio_net **pdev,
> struct VhostUserMsg *msg,
> >  			"\t-DEVICE_NEED_RESET: %u\n"
> >  			"\t-FAILED: %u\n",
> >  			dev->status,
> > +			!!(dev->status & VIRTIO_DEVICE_STATUS_RESET),
> 
> (dev->status & 0) will always be 0, right?
> how about (dev->status == VIRTIO_DEVICE_STATUS_RESET)?

Yes. Will correct this in v2.

Thanks!
Chenbo

> 
> >  			!!(dev->status & VIRTIO_DEVICE_STATUS_ACK),
> >  			!!(dev->status & VIRTIO_DEVICE_STATUS_DRIVER),
> >  			!!(dev->status & VIRTIO_DEVICE_STATUS_FEATURES_OK),
> >
> 
> --
> Adrián Moreno



More information about the dev mailing list