From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yuanhan Liu Subject: Re: [PATCH v3 4/9] vhost: Add API to get MTU value Date: Fri, 17 Mar 2017 13:32:51 +0800 Message-ID: <20170317053251.GA18844@yliu-dev.sh.intel.com> References: <20170213142820.8964-1-maxime.coquelin@redhat.com> <20170312163406.17714-1-maxime.coquelin@redhat.com> <20170312163406.17714-5-maxime.coquelin@redhat.com> <20170316080059.GT18844@yliu-dev.sh.intel.com> <101becb5-2770-1817-e28f-9f07208c53d8@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: aconole@redhat.com, sodey@sonusnet.com, jianfeng.tan@intel.com, thomas.monjalon@6wind.com, dev@dpdk.org To: Maxime Coquelin Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by dpdk.org (Postfix) with ESMTP id 5C2273B5 for ; Fri, 17 Mar 2017 06:34:39 +0100 (CET) Content-Disposition: inline In-Reply-To: <101becb5-2770-1817-e28f-9f07208c53d8@redhat.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 Thu, Mar 16, 2017 at 12:37:23PM +0100, Maxime Coquelin wrote: > > > On 03/16/2017 09:00 AM, Yuanhan Liu wrote: > >On Sun, Mar 12, 2017 at 05:34:01PM +0100, Maxime Coquelin wrote: > >>This patch implements the function for the application to > >>get the MTU value. > > > >I'm thinking the other way. As we are making vhost being generic, it > >doesn't make too much sense now to store a net specific value at vhost > >layer. I'm thinking we may could introduce a vhost-user request handler, > >something like: > > > > rte_vhost_driver_register_msg_handler(socket, handler); > > That's a good point. > > >All vhost-user message then will goto the driver's sepcific handler. > >if it's handlered, do nothing in vhost lib. Otherwise, we handle it > >in vhost lib. > > > >In this way, you could handle the mtu message inside vhost-pmd; thus, > >there is no need to introduce one more (net specific) API. > > > >Thoughts? > > I need to think more about it, but advantage of having a dedicated API > is that in case the MTU value is not available, you can know from > return code whether it is not yet available (-EAGAIN), or not supported > (-ENOTSUP). > > That could be managed with the callback tough, by calling the callback > with a 0 mtu value if not supported, so that the application can be > sure that if the callback hasn't been called, then it is just that it > is not ready yet. > > What do you think? I don't think the application should even be aware of the callback. Application should get the mtu from the ethdev layer, by the API rte_eth_dev_get_mtu(). And such MTU request should be only handled in vhost-pmd, to serve the rte_eth_dev_get_mtu() API. --yliu