intel / intel/intel-technology-enabling-for-openshift
OCP 4.14 + QAT Operator 0.28 ; setting enable services is not working
- Dominant language
- Python
- Stars
- 22
- Forks
- 13
- PR merge metrics
- No merged PRs in 30d
Description
I have been also testing this and I found the bugs that is causing this:
$ oc logs -c intel-qat-initcontainer intel-qat-plugin-6p2pf -n openshift-operators | grep -B5 -A5 sym
/usr/local/bin/qat-init.sh: line 44: echo: write error: Invalid argument <---------------------------------------------
Device f7:00.0 configured with services: dc
/usr/local/bin/qat-init.sh: line 44: echo: write error: Invalid argument
Device f3:00.0 configured with services: sym;asym
---
when checking the script:
line 44: echo "$SERVICES_ENABLED" > "$DEVPATH"/qat/cfg_services
It is trying to write the updated configuration from user to the device by the write fails.
I have tried to use a different kernel module as specified in Intel's Doc but could not find a suitable one: Only 4xxxvf
oc apply -f 004-qat-device-plugin-cr.yaml
The QatDevicePlugin "qatdeviceplugin-sample" is invalid: spec.kernelVfDrivers[0]: Unsupported value: "402xx": supported values: "4xxxvf"
----
oc apply -f 004-qat_device_plugin-orig.yaml
The QatDevicePlugin "qatdeviceplugin-sample" is invalid: spec.kernelVfDrivers[0]: Unsupported value: "401xx": supported values: "4xxxvf"
-----
even doing it manually does not work
bash-5.1# echo sym > /sys/bus/pci/devices/0000:f3:00.0/qat/cfg_services
bash: echo: write error: Invalid argument
-----
Full test:
[root@master-0 ~]# echo -n down > /sys/bus/pci/devices/0000:f3:00.0/qat/state
[root@master-0 ~]# echo -n dc > /sys/bus/pci/devices/0000:f3:00.0/qat/cfg_services
[root@master-0 ~]# echo -n asym > /sys/bus/pci/devices/0000:f3:00.0/qat/cfg_services
-bash: echo: write error: Invalid argument
[root@master-0 ~]# echo -n asym;sym > /sys/bus/pci/devices/0000:f3:00.0/qat/cfg_services
asym-bash: sym: command not found
[root@master-0 ~]# echo -n 'asym;sym' > /sys/bus/pci/devices/0000:f3:00.0/qat/cfg_services
-bash: echo: write error: Invalid argument
[root@master-0 ~]# echo -n 'sym;asym' > /sys/bus/pci/devices/0000:f3:00.0/qat/cfg_services
[root@master-0 ~]# echo -n 'sym;dc' > /sys/bus/pci/devices/0000:f3:00.0/qat/cfg_services
-bash: echo: write error: Invalid argument
[root@master-0 ~]# echo -n 'asym;dc' > /sys/bus/pci/devices/0000:f3:00.0/qat/cfg_services
-bash: echo: write error: Invalid argument
[root@master-0 ~]# echo -n 'dc;asym' > /sys/bus/pci/devices/0000:f3:00.0/qat/cfg_services
-bash: echo: write error: Invalid argument
[root@master-0 ~]# echo -n 'dc;sym' > /sys/bus/pci/devices/0000:f3:00.0/qat/cfg_services
-bash: echo: write error: Invalid argument
[root@master-0 ~]#
----
so in OCP 4.14 with QAT operator 0.28 ;
It is only possible to set dc or sym;asym
default : when no ServicesEnabled is set ;
"[qat.intel.com/cy](http://qat.intel.com/cy)": "16",
"[qat.intel.com/dc](http://qat.intel.com/dc)": "16"
when set dc
"[qat.intel.com/cy](http://qat.intel.com/cy)": "0",
"[qat.intel.com/dc](http://qat.intel.com/dc)": "32"
when set sym;asym
"[qat.intel.com/cy](http://qat.intel.com/cy)": "32",
"[qat.intel.com/dc](http://qat.intel.com/dc)": "0"
Contributor guide
Research direction
Start with /usr/local/bin/qat-init.sh, especially line 44, and reproduce the cfg_services writes shown in the issue. Compare the accepted service combinations with the 004-qat-device-plugin-cr.yaml examples and QatDevicePlugin kernelVfDrivers validation; done means supported ServicesEnabled values configure successfully and expose the expected cy and dc resources.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- kubernetes, shell
- Domain
- infrastructure
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100