[dpdk-dev] [PATCH v8 2/2] eal: support for VFIO-PCI VF token

Thomas Monjalon thomas at monjalon.net
Mon Apr 20 19:12:26 CEST 2020


Hi,

A general comment, please try to limit line length (80 is a good limit),
and prefer breaking lines after a punctuation sign.
Try shortening sentences as well.

I would love seeing some documentation reviews from english native speakers.

18/04/2020 19:30, Haiyue Wang:
> --- a/doc/guides/linux_gsg/linux_drivers.rst
> +++ b/doc/guides/linux_gsg/linux_drivers.rst
> +The ``vfio-pci`` module since Linux version 5.7 supports the creation of virtual functions, this feature is disabled
> +by default. When enabled, the PF needs a shared VF token (UUID) to setup the trust between SR-IOV PF and VFs. The VF
> +token is any kind of valid UUID value selected by the user. When the PF device is bound to ``vfio-pci`` module, it should
> +not have any VFs created, this is consistent as before for security reason.
> +
> +Some use cases about how to use the VF token:
> +
> + - The user just uses PF only for DPDK, then no VF token is required to start the PF device.

This use case is not using the token, so it should be mentioned out of this list.

> +
> + - The user wants to creat SR-IOV VFs on the PF device which is bound to ``vfio-pci`` module, then the user needs to select

creat -> create

> +   a valid UUID type VF token to start the PF device; after the VFs are created, this VF token is also required to access each
> +   VF device.
> +
> + - If the DPDK application that runs on PF device exits, and the user wants to start it with another different VF token
> +   value, it will be OK if no application (DPDP or KVM) runs on VF, otherwise, it will fail to start with a kernel message

DPDP -> DPDK.

> +   "[19145.688094] vfio-pci 0000:87:00.0: Incorrect VF token provided for device" shown. When all of the VFs are free, the

The timestamp is useless in the log.
Please insert the log after :: as a fixed-size font line.

> +   user can select a new VF token to start the PF device.
> +
> +The VFs created are bound to ``vfio-pci`` module automatically. DPDK will use the keyword ``vf_token`` as the device argument
> +to pass the VF token value to PF and its related VFs, the PMD should not use it, and this argument will be pruned from the
> +device argument list, so the PMD can parse its own valid device arguments successfully without seeing it.
> +
> +.. code-block:: console
> +
> +    1. sudo modprobe vfio-pci enable_sriov=1
> +
> +    2. ./usertools/dpdk-devbind.py -b vfio-pci 0000:87:00.0
> +
> +    3. echo 2 > /sys/bus/pci/devices/0000:87:00.0/sriov_numvfs
> +
> +    4. Start the PF:
> +        ./x86_64-native-linux-gcc/app/testpmd -l 22-25 -n 4 -w 87:00.0,vf_token=2ab74924-c335-45f4-9b16-8569e5b08258 --file-prefix=pf -- -i

How did you generate this token?

> +
> +    5. Start the VF:
> +        ./x86_64-native-linux-gcc/app/testpmd -l 26-29 -n 4 -w 87:02.0,vf_token=2ab74924-c335-45f4-9b16-8569e5b08258 --file-prefix=vf0 -- -i

Please do not make bullets and comments part of code-block.




More information about the dev mailing list