[dpdk-dev] [PATCH v7 07/10] qat_crypto_pmd: Addition of a new QAT DPDK PMD.

Mcnamara, John john.mcnamara at intel.com
Wed Nov 25 13:01:58 CET 2015


> -----Original Message-----
> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Declan Doherty
> Sent: Friday, November 13, 2015 6:58 PM
> To: dev at dpdk.org
> Subject: [dpdk-dev] [PATCH v7 07/10] qat_crypto_pmd: Addition of a new QAT
> DPDK PMD.
> 
> This patch adds a PMD for the Intel Quick Assist Technology DH895xxC
> hardware accelerator.




> +Crypto Device Drivers
> +====================================
> +
> +|today|
> +
> +
> +**Contents**
> +

It is best to omit the |today| since it isn't generally useful. Also, **Content** is added automatically in the PDF out and not really required in Html output so that can be omitted as well.





> +Quick Assist Crypto Poll Mode Driver
> +====================================
> +
> +The QAT PMD provides poll mode crypto driver support for **Intel
> +QuickAssist Technology DH895xxC** hardware accelerator. QAT PMD has
> +current been tested on Fedora 21 64-bit with gcc and on the 4.3
> kernel.org

Typo: current(ly) but it is probably clearer without that word.



> +Features
> +--------
> +QAT PMD has support for:
> +
> +Cipher algorithms:
> +* RTE_CRYPTO_SYM_CIPHER_AES128_CBC
> +* RTE_CRYPTO_SYM_CIPHER_AES256_CBC
> +* RTE_CRYPTO_SYM_CIPHER_AES512_CBC

The list needs to be separated from the previous line with a blank line to render correctly. It would also be worth rending the algorithms as fixed width text.

Cipher algorithms:

* ``RTE_CRYPTO_SYM_CIPHER_AES128_CBC``
* ``RTE_CRYPTO_SYM_CIPHER_AES256_CBC``
* ``RTE_CRYPTO_SYM_CIPHER_AES512_CBC``

Same comments for next paragraph.




> +Installation
> +------------
> +To use the DPDK QAT PMD an SRIOV-enabled QAT kernel driver is required.
> +The VF devices exposed by this driver will be used by QAT PMD.
> +
> +If you are running on kernel 4.3 or greater, see instructions for
> "Installation using
> +kernel.org QAT driver".  If you're on a kernel earlier than 4.3, see
> "Installation using the
> +01.org QAT driver".

The section references don't match the section names. These could also be links like this:

If you are running on kernel 4.3 or greater, see instructions for `Installation using
kernel.org driver`_ below. If you're on a kernel earlier than 4.3, see `Installation using
01.org QAT driver`_.



> +Compiling the 01.org driver - notes:
> +If using a later kernel and the build fails with an error relating to
> strict_stroul not being available patch the following file:
> +
> +.. code-block:: console

You could "use code-block:: diff" here to render the patch nicely in the docs.



> +If build fails due to missing header files you may need to do following:
> +  *  sudo yum install zlib-devel
> +  *  sudo yum install openssl-devel

Probably should be rendered as a code block with ::


> +
> +Installation using kernel.org driver
> +------------------------------------
> +
> +Assuming you are running on at least a 4.3 kernel, you can use the stock
> kernel.org QAT
> +driver to start the QAT hardware.
> +
> +Steps below assume
> +  * running DPDK on a platform with one DH895xCC device
> +  * on a kernel at least version 4.3
> +
> +In BIOS ensure that SRIOV is enabled and VT-d is disabled.
> +
> +Ensure the QAT driver is loaded on your system, by executing:
> +    lsmod | grep qat

The commands in this section should be rendered with ::

Ensure the QAT driver is loaded on your system, by executing::

    lsmod | grep qat



> +Binding the available VFs to the DPDK UIO driver
> +------------------------------------------------
> +The unbind command below assumes bdfs of 03:01.00-03:04.07, if yours are
> different adjust the unbind command below.
> +
> +Make available to DPDK
> +
> +.. code-block:: console
> +
> +   cd $(RTE_SDK) (See http://dpdk.org/doc/quick-start to install DPDK)
> +   "modprobe uio"
> +   "insmod ./build/kmod/igb_uio.ko"
> +   "for device in $(seq 1 4); do for fn in $(seq 0 7); do echo -n
> 0000:03:0${device}.${fn} >
> /sys/bus/pci/devices/0000\:03\:0${device}.${fn}/driver/unbind;done ;done"
> +   "echo "8086 0443" > /sys/bus/pci/drivers/igb_uio/new_id"
> +

This is too long to be rendered in PDF. Something like the following would work better in the docs while being functionally the same:

The unbind command below assumes ``bdfs`` of ``03:01.00-03:04.07``, if yours are different adjust the unbind command below::

   cd $RTE_SDK
   modprobe uio
   insmod ./build/kmod/igb_uio.ko

   for device in $(seq 1 4); do \
       for fn in $(seq 0 7); do \
           echo -n 0000:03:0${device}.${fn} > \
           /sys/bus/pci/devices/0000\:03\:0${device}.${fn}/driver/unbind; \
       done; \
   done

   echo "8086 0443" > /sys/bus/pci/drivers/igb_uio/new_id

You can use ``lspci -vvd:443`` to confirm that all devices are now in use by igb_uio kernel driver.


John.
-- 


More information about the dev mailing list