Uploaded image for project: 'OpenShift Bugs'
  1. OpenShift Bugs
  2. OCPBUGS-31893

The SR-IOV operator pod crashes if 'enableInjector' is set to nil

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Undefined Undefined
    • None
    • 4.15.z
    • Networking / SR-IOV
    • Moderate
    • False
    • Hide

      None

      Show
      None

      Description of problem:

      apiVersion: sriovnetwork.openshift.io/v1
      kind: SriovOperatorConfig
      metadata:
        creationTimestamp: "2024-04-07T13:58:37Z"
        generation: 37
        name: default
        namespace: openshift-sriov-network-operator
        resourceVersion: "1209105"
        uid: 468944a1-0d98-4e92-9de0-9f763b49fd85
      spec:
        enableOperatorWebhook: true
        logLevel: 2
       NAME                                     READY   STATUS             RESTARTS      AGE
      network-resources-injector-2gc5t         1/1     Running            0             8m35s
      network-resources-injector-rp429         1/1     Running            0             8m35s
      network-resources-injector-v9w5g         1/1     Running            0             8m34s
      operator-webhook-gpx8x                   1/1     Running            0             8m34s
      operator-webhook-n8dxh                   1/1     Running            0             8m34s
      operator-webhook-zgvmr                   1/1     Running            0             8m34s
      sriov-network-config-daemon-7pv5q        1/1     Running            0             8m33s
      sriov-network-config-daemon-8wxb7        1/1     Running            0             8m33s
      sriov-network-operator-55f99d5b9-h5gnd   0/1     CrashLoopBackOff   2 (16s ago)   8m33s
      2024-04-08T15:43:59.462468201Z	INFO	syncWebhookObjs	controllers/sriovoperatorconfig_controller.go:114	Start to sync webhook objects
      2024-04-08T15:43:59.465324559Z	INFO	runtime/panic.go:884	Observed a panic in reconciler: runtime error: invalid memory address or nil pointer dereference	{"controller": "sriovoperatorconfig", "controllerGroup": "sriovnetwork.openshift.io", "controllerKind": "SriovOperatorConfig", "SriovOperatorConfig": {"name":"default","namespace":"openshift-sriov-network-operator"}, "namespace": "openshift-sriov-network-operator", "name": "default", "reconcileID": "c2c342a2-3afc-436e-bfd4-b513a5bbaef4"}
      panic: runtime error: invalid memory address or nil pointer dereference [recovered]
      	panic: runtime error: invalid memory address or nil pointer dereference
      [signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x19cf6a7]
      
      goroutine 404 [running]:
      sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Reconcile.func1()
      	/go/src/github.com/k8snetworkplumbingwg/sriov-network-operator/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:116 +0x1fa
      panic({0x1c41460, 0x307ae30})
      	/usr/lib/golang/src/runtime/panic.go:884 +0x213
      github.com/k8snetworkplumbingwg/sriov-network-operator/controllers.(*SriovOperatorConfigReconciler).syncWebhookObjs(0xc000054640, {0x2200588, 0xc000b11200}, 0xc000005500)
      	/go/src/github.com/k8snetworkplumbingwg/sriov-network-operator/controllers/sriovoperatorconfig_controller.go:268 +0x6e7
      github.com/k8snetworkplumbingwg/sriov-network-operator/controllers.(*SriovOperatorConfigReconciler).Reconcile(0xc000054640, {0x2200588, 0xc000b11200}, {{{0xc000715460, 0x20}, {0xc0009f9f80, 0x7}}})
      	/go/src/github.com/k8snetworkplumbingwg/sriov-network-operator/controllers/sriovoperatorconfig_controller.go:114 +0x2cf
      sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Reconcile(0x2202de0?, {0x2200588?, 0xc000b11200?}, {{{0xc000715460?, 0xb?}, {0xc0009f9f80?, 0x0?}}})
      	/go/src/github.com/k8snetworkplumbingwg/sriov-network-operator/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:119 +0xc8
      sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler(0xc000498000, {0x22004e0, 0xc00069e0f0}, {0x1d0ad00?, 0xc0006a7440?})
      	/go/src/github.com/k8snetworkplumbingwg/sriov-network-operator/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:316 +0x3ca
      sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem(0xc000498000, {0x22004e0, 0xc00069e0f0})
      	/go/src/github.com/k8snetworkplumbingwg/sriov-network-operator/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:266 +0x1d9
      sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2()
      	/go/src/github.com/k8snetworkplumbingwg/sriov-network-operator/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:227 +0x85
      created by sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2
      	/go/src/github.com/k8snetworkplumbingwg/sriov-network-operator/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:223 +0x587 

      Version-Release number of selected component (if applicable):

      4.15.6

      How reproducible:

      100%

      Steps to Reproduce:
      1. 'enableInjector' is set to nil
      2.
      3.
      Actual results:

      Expected results:

      Additional info:
      test link:
      https://github.com/k8snetworkplumbingwg/sriov-network-operator/blob/master/test/conformance/tests/test_sriov_operator.go#L1803

            bnemeth@redhat.com Balazs Nemeth
            rhn-cnf-elevin Evgeny Levin
            Zhanqi Zhao Zhanqi Zhao
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: