[dpdk-dev] [PATCH 4/4] vhost: define callfd and kickfd as int type
Yuanhan Liu
yuanhan.liu at linux.intel.com
Wed Sep 9 03:54:55 CEST 2015
On Wed, Sep 09, 2015 at 01:43:06AM +0000, Ouyang, Changchun wrote:
>
>
> > -----Original Message-----
> > From: Yuanhan Liu [mailto:yuanhan.liu at linux.intel.com]
> > Sent: Monday, August 24, 2015 11:55 AM
> > To: dev at dpdk.org
> > Cc: Xie, Huawei; Ouyang, Changchun; Yuanhan Liu
> > Subject: [PATCH 4/4] vhost: define callfd and kickfd as int type
> >
> > So that we can remove the redundant (int) cast.
> >
> > Signed-off-by: Yuanhan Liu <yuanhan.liu at linux.intel.com>
> > ---
>
> > diff --git a/lib/librte_vhost/rte_virtio_net.h
> > b/lib/librte_vhost/rte_virtio_net.h
> > index b9bf320..a037c15 100644
> > --- a/lib/librte_vhost/rte_virtio_net.h
> > +++ b/lib/librte_vhost/rte_virtio_net.h
> > @@ -87,8 +87,8 @@ struct vhost_virtqueue {
> > uint16_t vhost_hlen; /**< Vhost header
> > length (varies depending on RX merge buffers. */
> > volatile uint16_t last_used_idx; /**< Last index used
> > on the available ring */
> > volatile uint16_t last_used_idx_res; /**< Used for
> > multiple devices reserving buffers. */
> > - eventfd_t callfd; /**< Used to notify
> > the guest (trigger interrupt). */
> > - eventfd_t kickfd; /**< Currently
> > unused as polling mode is enabled. */
> > + int callfd; /**< Used to notify
> > the guest (trigger interrupt). */
> > + int kickfd; /**< Currently
> > unused as polling mode is enabled. */
>
> I don't think we have to change it from 8B(eventfd_t is defined as uint64_t) to 4B,
> Any benefit for this change?
As I stated in the commit log, to remove the redundant (int) cast. Casts
like following are a bit ugly:
if ((int)dev->virtqueue[VIRTIO_RXQ]->callfd >= 0)
close((int)dev->virtqueue[VIRTIO_RXQ]->callfd);
On the other hand, why it has to be uint64_t? The caller side sends the
message(be more precisely, qemu) actually uses int type.
--yliu
More information about the dev
mailing list