From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maxime Coquelin Subject: Re: [PATCH 07/17] vhost: export vhost vring info Date: Thu, 16 Mar 2017 10:20:03 +0100 Message-ID: References: <1488534682-3494-1-git-send-email-yuanhan.liu@linux.intel.com> <1488534682-3494-8-git-send-email-yuanhan.liu@linux.intel.com> <482f834a-9e22-0bec-1fd7-1be68563b7f7@redhat.com> <20170316072411.GP18844@yliu-dev.sh.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Cc: dev@dpdk.org, Harris James R , Liu Changpeng To: Yuanhan Liu Return-path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by dpdk.org (Postfix) with ESMTP id DFE0D1075 for ; Thu, 16 Mar 2017 10:20:08 +0100 (CET) In-Reply-To: <20170316072411.GP18844@yliu-dev.sh.intel.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On 03/16/2017 08:24 AM, Yuanhan Liu wrote: > On Tue, Mar 14, 2017 at 01:11:24PM +0100, Maxime Coquelin wrote: >>> +int >>> +rte_vhost_get_vhost_vring(int vid, uint16_t vring_idx, >>> + struct rte_vhost_vring *vring) >>> +{ >>> + struct virtio_net *dev; >>> + struct vhost_virtqueue *vq; >>> + >>> + dev = get_device(vid); >>> + if (!dev) >>> + return -1; >>> + >>> + if (vring_idx > VHOST_MAX_VRING) >> Shouldn't be ">=" ? > > Nice catch! > >>> +#define VHOST_MAX_VRING 0x100 >> Looking at the code, I'm not clear where this limitation comes from. >> It seems that it can be up to 0x10000, no? > > It comes from the vhost-user spec: > > --yliu > > --- > * VHOST_USER_SET_VRING_KICK > > Id: 12 > Equivalent ioctl: VHOST_SET_VRING_KICK > Master payload: u64 > > Set the event file descriptor for adding buffers to the vring. It > is passed in the ancillary data. > Bits (0-7) of the payload contain the vring index. Bit 8 is the > invalid FD flag. This flag is set when there is no file descriptor > in the ancillary data. This signals that polling should be used > instead of waiting for a kick. Thanks for the pointer. With the vring_idx check fixed you can add my: Reviewed-by: Maxime Coquelin Cheers, Maxime