[dpdk-users] Crypto QAT device not found

Pathak, Pravin pravin.pathak at intel.com
Tue Oct 23 03:20:29 CEST 2018


Hi Keith -
Thanks for sharing the scripts. It definitely helps.
Pravin


-----Original Message-----
From: Wiles, Keith 
Sent: Friday, October 19, 2018 7:07 PM
To: Pathak, Pravin <pravin.pathak at intel.com>
Cc: Trahe, Fiona <fiona.trahe at intel.com>; users at dpdk.org
Subject: Re: [dpdk-users] Crypto QAT device not found



> On Oct 19, 2018, at 5:01 PM, Pathak, Pravin <pravin.pathak at intel.com> wrote:
> 
> Hi Fiona -
> That explains it. I was using make T=... again at last.
> Pravin

Do not know if this will help at all. I some times copy the config/deconfig_x86_64-native-linuxapp-gcc to config/deconfig_x86_64-mine-linuxapp-gcc then modify the new file to contain the changes you want the config file. This way you do not have to be concerned about how you do the make … config or as I do it this way.

cd dpdk
export RTE_SDK=`pwd`
export RTE_TARGET=x86_64-mine-linuxapp-gcc

make install T=$RTE_TARGET -j

You will get a warning at the end, but you can ignore it as you were not installing the results anyway. Here is a bash script I use being lazy.

function _rte() {
    if [ "$1" != "" ]; then
        export RTE_SDK=`pwd`
        export RTE_TARGET=`basename $1`
        echo "RTE_SDK: "$RTE_SDK " RTE_TARGET: "$RTE_TARGET
    else
        echo "Currently RTE_SDK: "$RTE_SDK " RTE_TARGET: "$RTE_TARGET
    fi
}

function _bld() {
    echo make -C ${RTE_SDK} install T=${RTE_TARGET} $@ -j
    make -C ${RTE_SDK} install T=${RTE_TARGET} $@ -j }

function _dbld() {
    echo make -C ${RTE_SDK} install T=${RTE_TARGET} EXTRA_CFLAGS="-g -O0" $@ -j
    make -C ${RTE_SDK} install T=${RTE_TARGET} EXTRA_CFLAGS="-g -O0" $@ -j }

alias rte=_rte $@
alias bld=_bld $@
alias dbld=_dbld $@


Then I just cd into the DPDK directory and type ‘rte x86_64-native-linuxapp-gcc’ then I can just do ‘bld’ to build DPDK and it does not matter which directory I am in when I do the build it will stay in the directory I executed ‘bld’. The dbld command is to build DPDK with EXTRA_CFLAGS=“-g -O0"

The rte command without args will print the current values and I normally cd to DPDK directory and do ‘rte x8<tab>’ to complete the command.

Anyway I hope that helps.

> 
> 
> -----Original Message-----
> From: Trahe, Fiona
> Sent: Friday, October 19, 2018 5:40 PM
> To: Pathak, Pravin <pravin.pathak at intel.com>; users at dpdk.org
> Cc: Trahe, Fiona <fiona.trahe at intel.com>
> Subject: RE: Crypto QAT device not found
> 
> Hi Pravin,
> 
> Good that it's working now.
> Be careful of the order on changing config, this works:
> 1. make T=x86_64-native-linuxapp-gcc config 2. change build/.config 
> (if you do make T=xx config after this it overwrites your changes and 
> reverts to the default again) 3. make
> 
> Fiona
> 
>> -----Original Message-----
>> From: Pathak, Pravin
>> Sent: Friday, October 19, 2018 2:00 PM
>> To: Trahe, Fiona <fiona.trahe at intel.com>; users at dpdk.org
>> Subject: RE: Crypto QAT device not found
>> 
>> Hi Fiona -
>> 
>> Thanks for the help.  I was using 18.05 and then moved to 18.08.
>> For configuration changes, there is  build/.config,    config/common_base and x86_64-native-linuxapp-
>> gcc/.config.
>> I was changing build/.config and building but some reason it was not picking the new options set.
>> Now I changed common_base, regenerated config and build again. It worked after that.
>> I think I am not following correct build procedure.
>> There is make,   make T= x86_64-native-linuxapp-gcc, make install...
>> Each seems to work differently.
>> 
>> I am able to use HW crypto device now.
>> 
>> Regards
>> Pravin
>> 
>> 
>> -----Original Message-----
>> From: Trahe, Fiona
>> Sent: Friday, October 19, 2018 4:25 PM
>> To: Pathak, Pravin <pravin.pathak at intel.com>; users at dpdk.org
>> Cc: Trahe, Fiona <fiona.trahe at intel.com>
>> Subject: RE: Crypto QAT device not found
>> 
>> Hi Pravin,
>> 
>> As your VFs are bound to igb_uio this looks fine.
>> DPDK QAT PMD does support 37c9
>> 
>> Can you confirm which DPDK version you're using? You mentioned 18.04 but there's no such release.
>> If it's 18.08 then you also need CONFIG_RTE_LIBRTE_PMD_QAT_SYM=y but not in earlier releases.
>> 
>> Does the test code run for you?
>> run "make test-build" in the top-level directory 
>> ./build/build/test/test/test -l1 -n1 -w <your bdf>
>>> cryptodev_qat_autotest
>> 
>> Fiona
>>> -----Original Message-----
>>> From: Pathak, Pravin
>>> Sent: Friday, October 19, 2018 11:26 AM
>>> To: Trahe, Fiona <fiona.trahe at intel.com>; users at dpdk.org
>>> Subject: RE: Crypto QAT device not found
>>> 
>>> Hi Fiona -
>>> Thanks for the reply. I tried -cdev_type HW  but it did not help.  I 
>>> am not sure of DPDK supports the device on our board.
>>> Device is with ID 37c8/c9
>>> 
>>> 3d:00.0 Co-processor: Intel Corporation Device 37c8 (rev 04)
>>> 3f:00.0 Co-processor: Intel Corporation Device 37c8 (rev 04)
>>> da:00.0 Co-processor: Intel Corporation Device 37c8 (rev 04)
>>> 3d:01.0 Co-processor: Intel Corporation Device 37c9 (rev 04)
>>> 3d:01.1 Co-processor: Intel Corporation Device 37c9 (rev 04)
>>> 3d:01.2 Co-processor: Intel Corporation Device 37c9 (rev 04)
>>> 3d:01.3 Co-processor: Intel Corporation Device 37c9 (rev 04) ........
>>> 
>>> Everything looks correct except DPDK does not see these crypto 
>>> devices. It seems virtual device if I add one.
>>> Is there any command like argument I need to pass or build option 
>>> other than CONFIG_RTE_LIBRTE_PMD_QAT=y
>>> 
>>> PFs are bound to Kernel and VFs are bound to DPDK.
>>> 
>>> Crypto devices using kernel driver
>>> ==================================
>>> 0000:3d:00.0 'Device 37c8' if= drv=c6xx unused=qat_c62x,igb_uio
>>> 0000:3f:00.0 'Device 37c8' if= drv=c6xx unused=qat_c62x,igb_uio
>>> 0000:da:00.0 'Device 37c8' if= drv=c6xx unused=qat_c62x,igb_uio
>>> 
>>> Crypto devices using DPDK-compatible driver 
>>> ===========================================
>>> 0000:3d:01.0 'Device 37c9' drv=igb_uio unused=qat_c62xvf
>>> 0000:3d:01.1 'Device 37c9' drv=igb_uio unused=qat_c62xvf
>>> 0000:3d:01.2 'Device 37c9' drv=igb_uio unused=qat_c62xvf
>>> 0000:3d:01.3 'Device 37c9' drv=igb_uio unused=qat_c62xvf
>>> 0000:3d:01.4 'Device 37c9' drv=igb_uio unused=qat_c62xvf
>>> 
>>> # Drivers loaded
>>> 
>>> pkpathak at paamrpdk03:~/acp/snr/install$ lsmod | grep qat
>>> qat_c62xvf             16384  0
>>> qat_c62x               20480  0
>>> intel_qat             163840  3 qat_c62x,qat_c62xvf,usdm_drv
>>> uio                    20480  2 igb_uio,intel_qat
>>> authenc                16384  1 intel_qat
>>> 
>>> Anything you can spot incorrect or missing?
>>> Regards
>>> Pravin
>>> 
>>> -----Original Message-----
>>> From: Trahe, Fiona
>>> Sent: Thursday, October 18, 2018 8:05 PM
>>> To: Pathak, Pravin <pravin.pathak at intel.com>; users at dpdk.org
>>> Subject: RE: Crypto QAT device not found
>>> 
>>> Hi Pravin,
>>> See below.
>>> 
>>>> -----Original Message-----
>>>> From: users [mailto:users-bounces at dpdk.org] On Behalf Of Pathak, 
>>>> Pravin
>>>> Sent: Thursday, October 18, 2018 2:30 PM
>>>> To: users at dpdk.org
>>>> Subject: [dpdk-users] Crypto QAT device not found
>>>> 
>>>> Hi All -
>>>> I have server with Intel QAT c62x device.  I followed all documentation.
>>>> 
>>>> -        Rebuild DPDK to use QAT
>>>> 
>>>> -        QAT drivers are loaded.
>>>> 
>>>> -        QAT devices are bound to DPDK
>>>> 
>>>> 
>>>> Crypto devices using DPDK-compatible driver 
>>>> ===========================================
>>>> 0000:3d:01.0 'Device 37c9' drv=igb_uio unused=qat_c62xvf,vfio-pci
>>>> 0000:3d:01.1 'Device 37c9' drv=igb_uio unused=qat_c62xvf,vfio-pci
>>>> 0000:3d:01.2 'Device 37c9' drv=igb_uio unused=qat_c62xvf,vfio-pci
>>>> 0000:3d:01.3 'Device 37c9' drv=igb_uio unused=qat_c62xvf,vfio-pci
>>>> 0000:3d:01.4 'Device 37c9' drv=igb_uio unused=qat_c62xvf,vfio-pci
>>>> 0000:3d:01.5 'Device 37c9' drv=igb_uio unused=qat_c62xvf,vfio-pci
>>>> 0000:3d:01.6 'Device 37c9' drv=igb_uio unused=qat_c62xvf,vfio-pci
>>>> 0000:3d:01.7 'Device 37c9' drv=igb_uio unused=qat_c62xvf,vfio-pci
>>>> 0000:3d:02.0 'Device 37c9' drv=igb_uio unused=qat_c62xvf,vfio-pci
>>>> 0000:3d:02.1 'Device 37c9' drv=igb_uio unused=qat_c62xvf,vfio-pci
>>>> 0000:3d:02.2 'Device 37c9' drv=igb_uio unused=qat_c62xvf,vfio-pci
>>>> 
>>>> But if I use l2fwd-crypto sample, I get no crypto device found 
>>>> error
>>>> 
>>>> Checking link statusdone
>>>> Port0 Link Up. Speed 1000 Mbps - full-duplex
>>>> Port1 Link Up. Speed 1000 Mbps - full-duplex Lcore 0: RX port 0 
>>>> Lcore
>>>> 1: RX port 1 No crypto devices available
>>>> EAL: Error - exiting with code: 1
>>>>  Cause: Failed to initialize crypto devices
>>>> 
>>>> It works if I add  virtual device --vdev "crypto_aesni_mb0" but I am not able to use HW device.
>>>> Your help is appreciated.
>>>> 
>>>> Thanks
>>>> Pravin
>>> [Fiona] I haven't used this tool for a while, but the command line 
>>> options should be similar to the dpdk- test-crypto-perf tool. For 
>>> that for QAT you should whitelist the
>> device. e.g.:
>>> -w 0000:3d:01.0 ( before the -- , i.e. it's an EAL parameter) and 
>>> use --devtype crypto_qat  (after the -- , it's a parameter for the application).
>>> The terminology of --vdev changed in a recent release, so refer to 
>>> the version of 
>>> http://doc.dpdk.org/guides/sample_app_ug/l2_forward_crypto.html
>>> for the cmdline options appropriate to the release you're using.
>>> -cdev_type HW should also cause it to select QAT
> 

Regards,
Keith



More information about the users mailing list