From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <jianfeng.tan@intel.com>
Received: from mga07.intel.com (mga07.intel.com [134.134.136.100])
 by dpdk.org (Postfix) with ESMTP id 3438A1AEF6
 for <dev@dpdk.org>; Fri, 22 Sep 2017 04:30:25 +0200 (CEST)
Received: from orsmga004.jf.intel.com ([10.7.209.38])
 by orsmga105.jf.intel.com with ESMTP; 21 Sep 2017 19:30:24 -0700
X-ExtLoop1: 1
X-IronPort-AV: E=Sophos;i="5.42,426,1500966000"; d="scan'208";a="131208525"
Received: from fmsmsx104.amr.corp.intel.com ([10.18.124.202])
 by orsmga004.jf.intel.com with ESMTP; 21 Sep 2017 19:30:24 -0700
Received: from shsmsx101.ccr.corp.intel.com (10.239.4.153) by
 fmsmsx104.amr.corp.intel.com (10.18.124.202) with Microsoft SMTP Server (TLS)
 id 14.3.319.2; Thu, 21 Sep 2017 19:30:24 -0700
Received: from shsmsx103.ccr.corp.intel.com ([169.254.4.213]) by
 SHSMSX101.ccr.corp.intel.com ([169.254.1.159]) with mapi id 14.03.0319.002;
 Fri, 22 Sep 2017 10:30:21 +0800
From: "Tan, Jianfeng" <jianfeng.tan@intel.com>
To: Yuanhan Liu <yliu@fridaylinux.org>
CC: "dev@dpdk.org" <dev@dpdk.org>, "maxime.coquelin@redhat.com"
 <maxime.coquelin@redhat.com>, "mtetsuyah@gmail.com" <mtetsuyah@gmail.com>
Thread-Topic: [PATCH 10/12] vhost: support to kick in secondary process
Thread-Index: AQHTHYYUzV4m+ArMUUSWfES1Dvn3uKK+U5qAgADBIYD//58lgIABpjxg
Date: Fri, 22 Sep 2017 02:30:21 +0000
Message-ID: <ED26CBA2FAD1BF48A8719AEF02201E36512EF4CE@SHSMSX103.ccr.corp.intel.com>
References: <1503654052-84730-1-git-send-email-jianfeng.tan@intel.com>
 <1503654052-84730-11-git-send-email-jianfeng.tan@intel.com>
 <20170921033323.GA2251@yliu-home>
 <59f2bfc0-91ee-b276-68e3-563e5b5af89b@intel.com>
 <20170921091759.GE2251@yliu-home>
In-Reply-To: <20170921091759.GE2251@yliu-home>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-originating-ip: [10.239.127.40]
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Subject: Re: [dpdk-dev] [PATCH 10/12] vhost: support to kick in secondary
	process
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <http://dpdk.org/ml/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://dpdk.org/ml/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <http://dpdk.org/ml/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
X-List-Received-Date: Fri, 22 Sep 2017 02:30:26 -0000



> -----Original Message-----
> From: Yuanhan Liu [mailto:yliu@fridaylinux.org]
> Sent: Thursday, September 21, 2017 5:18 PM
> To: Tan, Jianfeng
> Cc: dev@dpdk.org; maxime.coquelin@redhat.com; mtetsuyah@gmail.com
> Subject: Re: [PATCH 10/12] vhost: support to kick in secondary process
>=20
> On Thu, Sep 21, 2017 at 03:04:39PM +0800, Tan, Jianfeng wrote:
> > >On Fri, Aug 25, 2017 at 09:40:50AM +0000, Jianfeng Tan wrote:
> > >>To support kick in secondary process, we propose callfd_pri and
> > >>kickfd_pri to store the value in primary process; and by a new
> > >>API, rte_vhost_set_vring_effective_fd(), we can set effective
> > >>callfd and kickfd which can be used by secondary process.
> > >>
> > >>Note in this case, either primary process or the secondary process
> > >>can kick the frontend; that is, they cannot kick a vring at the
> > >>same time.
> > >Since only one can work, why not just overwriting the fd? Say, you
> > >could introudce some APIs like "rte_vhost_set_vring_callfd", then
> > >you don't need to introduce few more fields like "callfd_pri".
> >
> > That cannot address the below case:
> > 1. Primary starts;
> > 2. Secondary one starts; (if we overwrite it without storing it in some
> > other fields)
> > 3. Secondary one exits;
> > 4. Secondary two starts. (primary cannot share the fd with this seconda=
ry
> > process now, as this fd does not mean anything to the primary process)
>=20
> I was thinking that those fds will be retrieved by the primary process
> once? So thsoe it got at beginning are still valid?

Yes, the FDs are valid to primary process at step 1. But After overwriting =
in step 2, those FDs are not valid to primary.