From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pa0-f49.google.com (mail-pa0-f49.google.com [209.85.220.49]) by dpdk.org (Postfix) with ESMTP id F22824A65 for ; Mon, 14 Mar 2016 02:54:17 +0100 (CET) Received: by mail-pa0-f49.google.com with SMTP id fe3so129137876pab.1 for ; Sun, 13 Mar 2016 18:54:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=igel-co-jp.20150623.gappssmtp.com; s=20150623; h=subject:to:references:cc:from:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding; bh=MdAjoOtXm6B6It08ngWqhqLOQNy0b63fspn5nAjGrX8=; b=RBqmeXEi/DpVYLajnbW/uj5+iqniWdYgnL3xAg4krA/MggKyn/JV3awCtB/dHoYP33 ziGA4CwkFMAVc3dwXi1BntLozbjaGhRdi3bS+U4BGk9X2ne8plbMFtyx/2Kx7HJdRqTl 4LPZNgFsR8g/TGXXM10KXR2OZaBk/JvZmiTEUeeHrMaF8XmhrsuRXusRVx5aButgCBNE tEA3sHVX9LZt6UVM3LMVmu4UaNhby9O/1qSVCETfgxmEmwN63lJ11EVtkNuENpeqa0IE PzlaOCaNJvQwb2mnV6EhtW2iHiXHSCyGALUZg1xfp6BBAg+ySOYsbtgrR7+SmTylAeBO zu2Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:subject:to:references:cc:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding; bh=MdAjoOtXm6B6It08ngWqhqLOQNy0b63fspn5nAjGrX8=; b=VgifdDTG1unn2qoreBvR2iGtnOsJm/lO8Ziaz0+dRLrJ7PcdqumCbCwHiGyf3pxyRH cvGmlPw7XJEmGVsIgIM/0fO88LlFviPVau7v//XWzrWitB8CdzedT7GtPIelkOtliLTw tRhxdlt3g3D9BqJDzzYwuOBP8biCN1Mq+V3fvi1a6zfSuB48xpMV4E4nKIDRG+cmQYCA RkC1YR1IZAtpioTYHKBmvbezRm8t8nX7Z92mVoX4xM7QwmYhxcMXncYHOsICdf5vdud2 GL/oxveZcaLuFFUda7nu8znFk0WYFczod05v54rV/mLQFbqCT47D4xUE4fyobCazydW3 TTUw== X-Gm-Message-State: AD7BkJLc8h5dC/scmm/H+ABimOfr6FGhMbSAlmVeYwwtzktagzH2rKIIOkZTStp6TqwPjA== X-Received: by 10.66.122.100 with SMTP id lr4mr32834962pab.99.1457920457108; Sun, 13 Mar 2016 18:54:17 -0700 (PDT) Received: from [10.16.129.101] (napt.igel.co.jp. [219.106.231.132]) by smtp.googlemail.com with ESMTPSA id cs14sm27706829pac.10.2016.03.13.18.54.15 (version=TLSv1/SSLv3 cipher=OTHER); Sun, 13 Mar 2016 18:54:16 -0700 (PDT) To: Yuanhan Liu References: <1457590462-3680-1-git-send-email-mukawa@igel.co.jp> <1457593565-16240-1-git-send-email-mukawa@igel.co.jp> <20160311071907.GI979@yliu-dev.sh.intel.com> Cc: dev@dpdk.org, jianfeng.tan@intel.com, huawei.xie@intel.com From: Tetsuya Mukawa Message-ID: <56E619C6.6060809@igel.co.jp> Date: Mon, 14 Mar 2016 10:54:14 +0900 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.6.0 MIME-Version: 1.0 In-Reply-To: <20160311071907.GI979@yliu-dev.sh.intel.com> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Subject: Re: [dpdk-dev] [PATCH v2] vhost: Fix default value of kickfd and callfd X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 14 Mar 2016 01:54:18 -0000 On 2016/03/11 16:19, Yuanhan Liu wrote: > On Thu, Mar 10, 2016 at 04:06:05PM +0900, Tetsuya Mukawa wrote: >> Currently, default values of kickfd and callfd are -1. >> If the values are -1, current code guesses kickfd and callfd haven't >> been initialized yet. And vhost library will guess the virtqueue isn't >> ready for processing. >> But callfd and kickfd will be set as -1 when "--enable-kvm" >> isn't specified in QEMU command line. It means we cannot treat -1 as >> uninitialized state. The patch changes default values to -2. And the >> patch defines -2 as VIRTIO_UNINITIALIZED_EVENTFD. > This looks more like a workaround to me. Hi Yuanhan, Sorry for late reply. I have checked QEMU documentation, and found below. ---------- * VHOST_USER_SET_VRING_CALL Id: 14 Equivalent ioctl: VHOST_SET_VRING_CALL Master payload: u64 Set the event file descriptor to signal when buffers are used. It is passed in the ancillary data. Bits (0-7) of the payload contain the vring index. Bit 8 is the invalid FD flag. ---------- VHOST_USER_SET_VRING_KICK has almost same description. I will check this invalid flag, and if it works for our case, then will use it. How about it? > Besides, this patch would make > following fail: > > eventfd_write(vq->callfd, (eventfd_t)1); It's my fault. I thought above case should be blocked by virtio spec itself. So just leave it. But eventfd is came from vhost spec, so VRING_AVAIL_F_NO_INTERRUPT might be set even when kickfd and callfd are -1. Thanks for checking it. Tetsuya > --yliu