From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 0471CA046B; Wed, 8 Jan 2020 14:11:37 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id BEA6B1D724; Wed, 8 Jan 2020 14:11:37 +0100 (CET) Received: from dispatch1-us1.ppe-hosted.com (dispatch1-us1.ppe-hosted.com [148.163.129.52]) by dpdk.org (Postfix) with ESMTP id 66BDF1C2F5 for ; Wed, 8 Jan 2020 14:11:36 +0100 (CET) X-Virus-Scanned: Proofpoint Essentials engine Received: from webmail.solarflare.com (uk.solarflare.com [193.34.186.16]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by mx1-us1.ppe-hosted.com (PPE Hosted ESMTP Server) with ESMTPS id 85A1610006B; Wed, 8 Jan 2020 13:11:34 +0000 (UTC) Received: from [192.168.38.17] (10.17.10.39) by ukex01.SolarFlarecom.com (10.17.10.4) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Wed, 8 Jan 2020 13:11:26 +0000 To: Matan Azrad , Tiwei Bie , "Maxime Coquelin" CC: Zhihong Wang , Xiao Wang , Ferruh Yigit , "dev@dpdk.org" , "Thomas Monjalon" References: <1577287161-10321-1-git-send-email-matan@mellanox.com> <1577287161-10321-3-git-send-email-matan@mellanox.com> <20200108052835.GA308847@___> <34d771f8-b064-7bdf-32dd-4e0320fba7c5@solarflare.com> From: Andrew Rybchenko Autocrypt: addr=arybchenko@solarflare.com; keydata= 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 Znk9 Message-ID: <25a39d8f-f790-e2e3-8566-dc8d51e5725c@solarflare.com> Date: Wed, 8 Jan 2020 16:11:21 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.2.2 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset="utf-8" Content-Language: en-US Content-Transfer-Encoding: 7bit X-Originating-IP: [10.17.10.39] X-ClientProxiedBy: ocex03.SolarFlarecom.com (10.20.40.36) To ukex01.SolarFlarecom.com (10.17.10.4) X-TM-AS-Product-Ver: SMEX-12.5.0.1300-8.5.1010-25154.003 X-TM-AS-Result: No-26.962600-8.000000-10 X-TMASE-MatchedRID: IeZYkn8zfFo9gZmQY0RBhPZvT2zYoYOwC/ExpXrHizxIXJo+eGm+FOUK tdp5qGU1G7A8qz7wh4kRmbEoOzvkX6Gnquim0WHznMQdNQ64xfdFadcfrR12T7xgMf9QE2ebO8+ BEoNgmT/lGeC1fZ8vnWrpSxhrLECDo8oz25kGCNBNkpJuEXQygaIf1lfNT7ZiYy6fApvL8BcId3 mMEY7ob/8mF3XRav/QgRSppS4zqFimBXGbm6B3eTahjZPEodkXfYrr1p9yfCoHQvT9S3vHUBCnY ZEmcg0Nv2GWB8fv+7Sic9FDffvET/CQsArAGc+WGUlF/M3Dxp/fIfhOVHn3r1SOymiJfTYX1mIq SQOMZGzdy+E+4eJ1r8P6PpzH108S6bBYqnb9Z7doMLOoNHsM9lIOc8QjxyVtdLv/+WrG6tN65NU waiDDItIPsumQ4rVro55G5QBSsGb73t5CJqhvBVXXOFXDx25iiK5qg1cmsr9jjMm9SMavFdO6Q5 cVbfMn9UkrjO1kJUHzAg+ZVKP8e+eiJSd6vaOmZ7QXUcH2LaFxR6rIK7qIWSQhrlniBEOwjGykv TEeLpGsEOoJRqU3PILqFdWWbkCTmXJj4uBazN/Pt0BCUKvjb6dlL9piCOvOC1y1ZwD+mE/Icj2m +H71b+C6181vxiZGgrFppJGTdcbQ6mDOfBeUQWwTEruL9ObTN590TuHQb1QP9Npwxv6z3hwz72z DzvkOekAtF4IpVATLI8/gO6lRmmI3m3Q3FzqdpyEWs4H2RqcBDya2JbH/+sFKi4VGOHQClYxeHs ++iSMfb3iFVeeD9JwRzuZg3R9eG4m8MaUGgEaeAiCmPx4NwLTrdaH1ZWqC1B0Hk1Q1KyLUZxEAl FPo8/cUt5lc1lLgtT4piLWpY7p+3BndfXUhXQ== X-TM-AS-User-Approved-Sender: Yes X-TM-AS-User-Blocked-Sender: No X-TMASE-Result: 10--26.962600-8.000000 X-TMASE-Version: SMEX-12.5.0.1300-8.5.1010-25154.003 X-MDID: 1578489095-H9yls7-sKO8C Subject: Re: [dpdk-dev] [PATCH v1 2/3] doc: add vDPA feature table X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list 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 1/8/20 1:42 PM, Matan Azrad wrote: > Hi all > > Thanks very much for the review. > Please see below. > > From: Andrew Rybchenko >> On 1/8/20 8:28 AM, Tiwei Bie wrote: >>> On Tue, Jan 07, 2020 at 06:39:36PM +0100, Maxime Coquelin wrote: >>>> On 12/25/19 4:19 PM, Matan Azrad wrote: >>>>> Add vDPA devices features table and explanation. >>>>> >>>>> Any vDPA driver can add its own supported features by ading a new >>>>> ini file to the features directory in doc/guides/vdpadevs/features. >>>>> >>>>> Signed-off-by: Matan Azrad >>>>> --- >>>>> doc/guides/conf.py | 5 +++ >>>>> doc/guides/vdpadevs/features/default.ini | 55 >>>>> ++++++++++++++++++++++++++ >> doc/guides/vdpadevs/features_overview.rst | 65 >> +++++++++++++++++++++++++++++++ >>>>> doc/guides/vdpadevs/index.rst | 1 + >>>>> 4 files changed, 126 insertions(+) >>>>> create mode 100644 doc/guides/vdpadevs/features/default.ini >>>>> create mode 100644 doc/guides/vdpadevs/features_overview.rst >>>>> >>>>> diff --git a/doc/guides/conf.py b/doc/guides/conf.py index >>>>> 0892c06..c368fa5 100644 >>>>> --- a/doc/guides/conf.py >>>>> +++ b/doc/guides/conf.py >>>>> @@ -401,6 +401,11 @@ def setup(app): >>>>> 'Features', >>>>> 'Features availability in compression drivers', >>>>> 'Feature') >>>>> + table_file = dirname(__file__) + >> '/vdpadevs/overview_feature_table.txt' >>>>> + generate_overview_table(table_file, 1, >>>>> + 'Features', >>>>> + 'Features availability in vDPA drivers', >>>>> + 'Feature') >>>>> >>>>> if LooseVersion(sphinx_version) < LooseVersion('1.3.1'): >>>>> print('Upgrade sphinx to version >= 1.3.1 for ' >>>>> diff --git a/doc/guides/vdpadevs/features/default.ini >>>>> b/doc/guides/vdpadevs/features/default.ini >>>>> new file mode 100644 >>>>> index 0000000..a3e0bc7 >>>>> --- /dev/null >>>>> +++ b/doc/guides/vdpadevs/features/default.ini >>>>> @@ -0,0 +1,55 @@ >>>>> +; >>>>> +; Features of a default vDPA driver. >>>>> +; >>>>> +; This file defines the features that are valid for inclusion in ; >>>>> +the other driver files and also the order that they appear in ; the >>>>> +features table in the documentation. The feature description ; >>>>> +string should not exceed feature_str_len defined in conf.py. >>>>> +; >>>> I think some entries below could be removed for vDPA. >>> +1 >>> >>>>> +[Features] >>>>> +csum = >>>>> +guest csum = >>>>> +mac = >>>>> +gso = >>>>> +guest tso4 = >>>>> +guest tso6 = >>>>> +ecn = >>>>> +ufo = >>>>> +host tso4 = >>>>> +host tso6 = >>>>> +mrg rxbuf = >>>>> +ctrl vq = >>>>> +ctrl rx = >>>>> +any layout = >>>>> +guest announce = >>>>> +mq = >>>>> +version 1 = >>>>> +log all = >>>>> +protocol features = >>> We may not need to list this. The proto * would imply it. > > So can you explain why this flag is exposed by the vhost features? > >>>>> +indirect desc = >>>>> +event idx = >>>>> +mtu = >>>>> +in_order = >>>>> +IOMMU platform = >>>>> +packed = >>>>> +proto mq = >>>>> +proto log shmfd = >>>>> +proto rarp = >>>>> +proto reply ack = >>>>> +proto slave req = >>> Ditto. This feature is to be used by other features. >>> Features like host notifier would imply it. > > So can you explain why this flag is exposed by the vhost protocol features? > >>>>> +proto crypto session = >>> We don't need to list this before we officially support the crypto >>> vDPA device. >>> > > Ok, will remove. > >>>>> +proto host notifier = >>>>> +proto pagefault = >>>>> +Multiprocess aware = >>> There is no support for this in library currently. >>> To support it, we need to sync vhost fds and messages among processes. >>> > > Ok, will remove. > >>>>> +BSD nic_uio = >>>>> +Linux UIO = >>>> E.g. UIO, which cannot be used since vDPA requires an IOMMU. > > Ok, will remove. > >>>>> +Linux VFIO = >>>>> +Other kdrv = >>>>> +ARMv7 = >>>>> +ARMv8 = >>>>> +Power8 = >>>>> +x86-32 = >>>>> +x86-64 = >>>>> +Usage doc = >>>>> +Design doc = >>>>> +Perf doc = >>>>> \ No newline at end of file >>>>> diff --git a/doc/guides/vdpadevs/features_overview.rst >>>>> b/doc/guides/vdpadevs/features_overview.rst >>>>> new file mode 100644 >>>>> index 0000000..c7745b7 >>>>> --- /dev/null >>>>> +++ b/doc/guides/vdpadevs/features_overview.rst >>>>> @@ -0,0 +1,65 @@ >>>>> +.. SPDX-License-Identifier: BSD-3-Clause >>>>> + Copyright 2019 Mellanox Technologies, Ltd >>>>> + >>>>> +Overview of vDPA drivers features >>>>> +================================= >>>>> + >>>>> +This section explains the supported features that are listed in the table >> below. >>>>> + >>>>> + * csum - Device can handle packets with partial checksum. >>>>> + * guest csum - Guest can handle packets with partial checksum. >>>>> + * mac - Device has given MAC address. >>>>> + * gso - Device can handle packets with any GSO type. >>>>> + * guest tso4 - Guest can receive TSOv4. >>>>> + * guest tso6 - Guest can receive TSOv6. >>>>> + * ecn - Device can receive TSO with ECN. >>>>> + * ufo - Device can receive UFO. >>>>> + * host tso4 - Device can receive TSOv4. >>>>> + * host tso6 - Device can receive TSOv6. >>>>> + * mrg rxbuf - Guest can merge receive buffers. >>>>> + * ctrl vq - Control channel is available. >>>>> + * ctrl rx - Control channel RX mode support. >>>>> + * any layout - Device can handle any descriptor layout. >>>>> + * guest announce - Guest can send gratuitous packets. >>>>> + * mq - Device supports Receive Flow Steering. >>>>> + * version 1 - v1.0 compliant. >>>>> + * log all - Device can log all write descriptors (live migration). >>>>> + * protocol features - Protocol features negotiation support. >>>>> + * indirect desc - Indirect buffer descriptors support. >>>>> + * event idx - Support for avail_idx and used_idx fields. >>>>> + * mtu - Host can advise the guest with its maximum supported MTU. >>>>> + * in_order - Device can use descriptors in ring order. >>>>> + * IOMMU platform - Device support IOMMU addresses. >>>>> + * packed - Device support packed virtio queues. >>>>> + * proto mq - Support the number of queues query. >>>>> + * proto log shmfd - Guest support setting log base. >>>>> + * proto rarp - Host can broadcast a fake RARP after live migration. >>>>> + * proto reply ack - Host support requested operation status ack. >>>>> + * proto slave req - Allow the slave to make requests to the master. >>>>> + * proto crypto session - Support crypto session creation. >>>>> + * proto host notifier - Host can register memory region based host >> notifiers. >>>>> + * proto pagefault - Slave expose page-fault FD for migration process. >>>>> + * Multiprocess aware - Driver can be used for primary-secondary >> process model. >>>>> + * BSD nic_uio - BSD ``nic_uio`` module supported. >>>>> + * Linux UIO - Works with ``igb_uio`` kernel module. >>>>> + * Linux VFIO - Works with ``vfio-pci`` kernel module. >>>>> + * Other kdrv - Kernel module other than above ones supported. >>>>> + * ARMv7 - Support armv7 architecture. >>>>> + * ARMv8 - Support armv8a (64bit) architecture. >>>>> + * Power8 - Support PowerPC architecture. >>>>> + * x86-32 - Support 32bits x86 architecture. >>>>> + * x86-64 - Support 64bits x86 architecture. >>>>> + * Usage doc - Documentation describes usage, In >> ``doc/guides/vdpadevs/``. >>>>> + * Design doc - Documentation describes design. In >> ``doc/guides/vdpadevs/``. >>>>> + * Perf doc - Documentation describes performance values, In >> ``doc/perf/``. >> >> Are you going to put Y mark for all these features in v20.02 release cycle? > > No. > >> Basically the question is: is it OK to have features that no driver supports? >> "Dead" features do not look nice. >> I would say yes for architecture support since it is better to list all >> architectures supported by DPDK and make it clear which architectures are >> supported by particular vDPA driver. >> May be it is OK for features which are directly correspond to virtio/vhost >> features (of course, it is very useful to know spec compliance). >> In this case I think it would be very helpful to add references to spec >> sections. > > These features are supported in vhost library. So I think it may sense to add them. > I think, especially in vDPA case, It is good for the vhost users to see what is supported and what is not supported by the vDPA driver. > > Which spec are you talking about? Vhost user protocol specification and virtio specification (since some features directly correspond to virtio features). [1] https://docs.oasis-open.org/virtio/virtio/v1.1/csprd01/virtio-v1.1-csprd01.html [2] https://qemu.weilnetz.de/doc/interop/vhost-user.html >> Also I like doc/guides/nics/features.rst and would like to know why the >> practice is not used here. I'm talking about features description format. > > Yes, but except nic class, no class uses it. IMO it is one of best practices in DPDK which should be used by other classes as well. > Maybe it is because there are not a lot of different ways to add the configuration\capability. > Here, for example, most of them are just in feature bitmap. More formal description simplifies search and helps driver developers and maintainers a lot. >> [snip] >