[ovs-dev] [PATCH] vswitch.xml: Fix column for xdpmode.

William Tu u9012063 at gmail.com
Wed Nov 6 17:56:56 UTC 2019


On Wed, Nov 06, 2019 at 01:50:58PM +0100, Ilya Maximets wrote:
> On 05.11.2019 22:20, Ben Pfaff wrote:
> >On Tue, Nov 05, 2019 at 09:54:08PM +0100, Ilya Maximets wrote:
> >>'xdpmode' is part of 'options', not the 'other_config'.
> >>
> >>CC: William Tu <u9012063 at gmail.com>
> >>Fixes: 0de1b425962d ("netdev-afxdp: add new netdev type for AF_XDP.")
> >>Signed-off-by: Ilya Maximets <i.maximets at ovn.org>
> >
> >It's not clear to me whether the options related to XDP and DPDK and PMD
> >consistently follow the intended convention.  The intention is that
> >options is for settings that are specific to a particular configured
> >interface type, and other-config is for options independent of the
> >interface type.
> 
> 'options'      goes to  netdev_set_config().
> 'other_config' goes to  dpif_set_port_config().
I think you mean dpif_netdev_set_config

> 
> And that dictates the rules of how we're using them.
> 
> 'options' are used to store configuration options that needs to be
> applied to netdev itself. Those are number of HW queues, different
> work modes, numbers of HW descriptors, etc.
> 
> 'other_config' is only used by dpif-netdev and stores per-port
> datapath configurations like enabling/disabling flow caches for
> particular port or pinning of netdev rx queues to pmd threads
> (this is actually the full list of currently supported configs).
> 
> I agree that vswitch.xml might be better structured. For example,
> we could make more subcategories for afxdp, dpdk and vhost-user
> options to make the list more visual in man pages. It's not fully
> clear how to separate 'other_config's. And I'm also not really
> comfortable with using "PMD" abbreviation for "netdev that works
> in polling mode/interface that requires polling", but I have no

I agree. "PMD" is very confusing, especially "Driver".
How about poll-mode netdev? 

> good ideas for short and meaningful replacement.
> 
> What we can do is following:
> 
>        PMD (Poll Mode Driver) Options:
>          options : n_rxq             optional string <...>
> 
>          PMD Options: dpdk only:
>            options : dpdk-devargs      optional string
>            options : n_rxq_desc        optional string, <...>
>            options : n_txq_desc        optional string, <...>
> 
>          PMD Options: dpdkvhostuserclient only:
>            options : vhost-server-path optional string
>            options : dq-zero-copy      optional string, <...>
>            options : tx-retries-max    optional string, <...>
> 
>          PMD Options: afxdp only:
>            options : xdpmode           optional string, <...>
>            options : use-need-wakeup   optional string, <...>
> 
>        Userspace Datapath Configuration:
>          other_config : emc-enable   optional string, <...>
> 
>          Userspace Datapath Configuration: PMD only:
>            other_config : pmd-rxq-affinity  optional string
> 
> Suggestions are welcome.
> 
> Here we can see that all "PMD" netdevs should somehow support n_rxq
> option and it might make sense to pass it via other_config, but this
> doesn't fit existing code structure, i.e. will probably have to make
> an additional netdev interface like netdev_set_rx_multiq() for passing
> that value from the dpif (analogue of existing netdev_set_tx_multiq()).
> Another point is that not all the netdevs are "PMD" netdevs, so this
> option still kind of netdev specific.
> 
Good idea, I think it's much clearer.

William

> 
> Best regards, Ilya Maximets.
> _______________________________________________
> dev mailing list
> dev at openvswitch.org
> https://mail.openvswitch.org/mailman/listinfo/ovs-dev


More information about the dev mailing list