ACC100 pod in pending state when vfDriver:igb_uio is configured using sriov-fec-operator
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
StarlingX |
Fix Released
|
Medium
|
Balendu Mouli Burla |
Bug Description
Brief Description
-----------------
Cannot bring up a pod using acc100 when vfDriver:igb_uio is configured using sriov-fec-operator. There are no errors applying the config yaml.
If we uses "system host-device-modify controller-0 pci_0000_c3_00_0 --driver igb_uio --vf-driver igb_uio -N 16" we can bring up the pod.
Severity
--------
<Minor: System/Feature is usable with minor issue>
Steps to Reproduce
------------------
system application-upload /usr/local/
system application-apply sriov-fec-operator
kubectl apply -f sriov-fec-
wait configuration is done
kubectl get sriovfecnodecon
create the pod
kubectl create -f acc100.yml (attachments)
check the pod remains on pending state
default acc100 0/1 Pending
kubectl describe pod acc100
0/1 nodes are available: 1 Insufficient intel.com/
Expected Behavior
------------------
Pod in running state
Actual Behavior
----------------
Pod in pending state
Reproducibility
---------------
Reproducible
System Configuration
-------------------
One node system
Branch/Pull Time/Commit
-------
BUILD_ID=
Timestamp/Logs
--------------
- pod
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Warning FailedScheduling 3s (x26 over 120m) default-scheduler 0/1 nodes are available: 1 Insufficient intel.com/
- config output
kubectl get sriovfecnodecon
apiVersion: sriovfec.
kind: SriovFecNodeConfig
metadata:
creationTimes
generation: 9
name: controller-0
namespace: sriov-fec-system
resourceVersion: "235211"
uid: 4dd150d9-
spec:
drainSkip: true
physicalFunct
- bbDevConfig:
acc100:
downlink4G:
downlink5G:
uplink4G:
uplink5G:
pciAddress: 0000:c3:00.0
pfDriver: igb_uio
vfAmount: 16
vfDriver: igb_uio
status:
conditions:
- lastTransitionTime: "2023-05-
message: Configured successfully
observedGen
reason: Succeeded
status: "True"
type: Configured
inventory:
sriovAccele
- deviceID: 0d5c
driver: igb_uio
maxVirtua
pciAddress: 0000:c3:00.0
vendorID: "8086"
virtualFu
- deviceID: 0d5d
driver: igb_uio
pciAddress: 0000:c4:00.0
- deviceID: 0d5d
driver: igb_uio
pciAddress: 0000:c4:00.1
- deviceID: 0d5d
driver: igb_uio
pciAddress: 0000:c4:01.2
- deviceID: 0d5d
driver: igb_uio
pciAddress: 0000:c4:01.3
- deviceID: 0d5d
driver: igb_uio
pciAddress: 0000:c4:01.4
- deviceID: 0d5d
driver: igb_uio
pciAddress: 0000:c4:01.5
- deviceID: 0d5d
driver: igb_uio
pciAddress: 0000:c4:01.6
- deviceID: 0d5d
driver: igb_uio
pciAddress: 0000:c4:01.7
- deviceID: 0d5d
driver: igb_uio
pciAddress: 0000:c4:00.2
- deviceID: 0d5d
driver: igb_uio
pciAddress: 0000:c4:00.3
- deviceID: 0d5d
driver: igb_uio
pciAddress: 0000:c4:00.4
- deviceID: 0d5d
driver: igb_uio
pciAddress: 0000:c4:00.5
- deviceID: 0d5d
driver: igb_uio
pciAddress: 0000:c4:00.6
- deviceID: 0d5d
driver: igb_uio
pciAddress: 0000:c4:00.7
- deviceID: 0d5d
driver: igb_uio
pciAddress: 0000:c4:01.0
- deviceID: 0d5d
driver: igb_uio
pciAddress: 0000:c4:01.1
- sysfs
ls /sys/bus/
lrwxrwxrwx 1 root root 0 May 19 13:19 /sys/bus/
sysadmin@
lrwxrwxrwx 1 root root 0 May 19 13:19 /sys/bus/
sysadmin@
lrwxrwxrwx 1 root root 0 May 19 13:19 /sys/bus/
- sriov-fec-daemonset pod shows that it is binding to igb_uio
{"file"
{"file"
{"file"
{"file"
- kubectl logs sriov-device-
...
{
}
},
...
I0519 13:19:14.847849 1 manager.go:110] Creating new ResourcePool: intel_fec_acc100
I0519 13:19:14.847852 1 manager.go:111] DeviceType: accelerator
I0519 13:19:14.853184 1 manager.go:125] no devices in device pool, skipping creating resource server for intel_fec_acc100
Test Activity
-------------
Feature Testing
Workaround
----------
1 - Change the vfDriver to vfio-pci if configured using sriov-fec-operator
or
2 - Configure vfDriver igb_uio using "system host-modify-device"
Changed in starlingx: | |
assignee: | nobody → Balendu Mouli Burla (balendu) |
tags: | added: stx.networ |
tags: |
added: stx.networking removed: stx.networ |
Changed in starlingx: | |
importance: | Undecided → Medium |
tags: | added: stx.9.0 |
Hi,
As described in the problem description, support driver for VF interface to bind are "pci-pf-stub" and "vfio-pci" only.
This has been the configuration of FEC operator from the beginning. It is recommended to not to use the igb_uio driver for either for PF or for VF interfaces.
======= ======= ======
" resourceName" : "intel_fec_acc100",
" deviceType" : "accelerator",
" selectors" : {
"vendors" : ["8086"],
"devices" : ["0d5d"],
"drivers" : ["pci-pf-stub", "vfio-pci"]
}
{
},
===================
FEC Operator with igb_uio driver was never tested, nor it was in the scope.
This configuration is not supported in FEC operator.
Thanks,
Mouli