From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wg0-f45.google.com (mail-wg0-f45.google.com [74.125.82.45]) by dpdk.org (Postfix) with ESMTP id 913F9689B for ; Thu, 25 Dec 2014 13:46:15 +0100 (CET) Received: by mail-wg0-f45.google.com with SMTP id b13so12974142wgh.32 for ; Thu, 25 Dec 2014 04:46:15 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:message-id:date:from:user-agent:mime-version:to :subject:references:in-reply-to:content-type :content-transfer-encoding; bh=vTeDo25vsTkCQCkCZDdkY/1xSdU8Pfr5ngOmxMhyTIg=; b=NGkHRYlqGRERtXlBGi7d4VbCywKLz+J2qCi9mo5PpHd8gd2W8fKdN7xmrD7COWqdcf aBbnUZGNob+ZmlD90RNjWffq072oUQe+iQfvvUPlVhswAx/w7l/PeVXKUPSTQlwrIS/E +r3bJa71URqTSx+4D3MCYFytZ1zXPQE1xJjJcMux1eAsEF8Qex9ggPgBokJwMCp8uL/t TXKbM/HuxBdHcTYosVqooLPhTAxs91NMo27PjY0pVxdN3WvxBu9IL66Hcq0It+mPaQHM QWqqi/QqJPtsTzbfZdgiFy/qHquEzaCyziZHCA4rUzsZW1pFmPkJXPHC+d8A/OQsbWQM pt5g== X-Gm-Message-State: ALoCoQn+efTep95ppMip94vi5QjPn1cLv20/FYni2S9IBbi6kkHHfcuFqYXC6fJfkrAZky1JecBk X-Received: by 10.180.14.136 with SMTP id p8mr24473952wic.20.1419511575368; Thu, 25 Dec 2014 04:46:15 -0800 (PST) Received: from [10.0.0.165] (system.cloudius-systems.com. [84.94.198.183]) by mx.google.com with ESMTPSA id t6sm35032678wjf.49.2014.12.25.04.46.13 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 25 Dec 2014 04:46:14 -0800 (PST) Message-ID: <549C0714.9010603@cloudius-systems.com> Date: Thu, 25 Dec 2014 14:46:12 +0200 From: Vlad Zolotarov User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.3.0 MIME-Version: 1.0 To: "Ouyang, Changchun" , "dev@dpdk.org" References: <1419389808-9559-1-git-send-email-changchun.ouyang@intel.com> <1419398584-19520-1-git-send-email-changchun.ouyang@intel.com> <549A9A28.10401@cloudius-systems.com> In-Reply-To: Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [dpdk-dev] [PATCH v3 0/6] Enable VF RSS for Niantic 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: Thu, 25 Dec 2014 12:46:15 -0000 On 12/25/14 04:26, Ouyang, Changchun wrote: > Hi, > >> -----Original Message----- >> From: Vlad Zolotarov [mailto:vladz@cloudius-systems.com] >> Sent: Wednesday, December 24, 2014 6:49 PM >> To: Ouyang, Changchun;dev@dpdk.org >> Subject: Re: [dpdk-dev] [PATCH v3 0/6] Enable VF RSS for Niantic >> >> >> On 12/24/14 07:22, Ouyang Changchun wrote: >>> This patch enables VF RSS for Niantic, which allow each VF having at most 4 >> queues. >>> The actual queue number per VF depends on the total number of pool, >>> which is determined by the total number of VF at PF initialization >>> stage and the number of queue specified in config: >>> 1) If the number of VF is in the range from 1 to 32 and the number of >>> rxq is 4('--rxq 4' in testpmd), then there is totally 32 >>> pools(ETH_32_POOLS), and each VF have 4 queues; >>> >>> 2)If the number of VF is in the range from 33 to 64 and the number of >>> rxq is 2('--rxq 2' in testpmd), then there is totally 64 >>> pools(ETH_64_POOLS), and each VF have 2 queues; >>> >>> On host, to enable VF RSS functionality, rx mq mode should be set as >>> ETH_MQ_RX_VMDQ_RSS or ETH_MQ_RX_RSS mode, and SRIOV mode >> should be activated(max_vfs >= 1). >>> It also needs config VF RSS information like hash function, RSS key, RSS key >> length. >>> The limitation for Niantic VF RSS is: >>> the hash and key are shared among PF and all VF, the RETA table with >>> 128 entries are also shared among PF and all VF. So it is not good >>> idea to query the hash and reta content per VF on guest, instead, it makes >> sense to query them on host(PF). >>> v3 change: >>> - More cleanup; >> This series is still missing the appropriate patches in the >> rte_eth_dev_info_get() flow to return a reta_size for a VF device; and to >> rte_eth_dev_rss_reta_query() in the context of a VF device (I haven't >> noticed the initialization of a >> dev->dev_ops->reta_query for the VF device in this series). >> >> Without these code bits it's impossible to work with the VF devices in the RSS >> context the same way we work with the PF devices. It means that we'll have >> to do some special branching to handle the VF device and this voids the >> whole meaning of the framework which in turn is very unfortunate. >> > Again pls try to query reta content on pf/host, this is due to hw limitation, Again, I'm using DPDK from inside a Guest OS on Amazon Cloud. I have no and will never have an access to the PF due to obvious reasons thus I can't query it. Which HW limitations u are referring? It's a clear software issue - the VF-PF channel protocol should have a message to negotiate it but it looks like Intel hasn't cared to implemented it yet unless I miss something here. The problems don't end with the RETA. What about the hash key, which is also shared? There isn't an appropriate message to query it either. This is not a pure DPDK issue - it's a general issue with Linux 82599 drivers. > It don't affect any functionality, just the querying is special. How can u call the fact that some of DPDK API functionality is missing as "it don't affect any functionality"? Of course it affects it. Just like I said it may cause us treat the VF in the special way while there is not any real reason to do so. > Before this patch, customer often was notified Niantic can't support vf rss, > But with lots of experiments and find that it still has limited vf rss functionality. > Even on that, linux ixgbe driver has at most 2 queues per vf, > But the dpdk could enable 4 queues per vf. > In summary, dpdk could support vf rss on Niantic with at most 4 queues per vf, > but the querying of reta is very limited due to the HW limitation. Limited? I meant missing, right? > Hope you are on the same page now. > > Thanks > Changchun >