Uploaded image for project: 'OpenShift Virtualization'
  1. OpenShift Virtualization
  2. CNV-25883

[2171395] virt-controller crashes because of out-of-bound slice access in evacuation controller

XMLWordPrintable

    • CNV Virtualization Sprint 232
    • High
    • None

      Description of problem:
      The evacuation controller hits out-of-bound slice access, which leads to virt-controller panic. The issue is that the index calculations in the evacuation controller is not protected against an occasion of negative values. Thus it can happen that the index would be negative.

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

      How reproducible:
      100%

      Steps to Reproduce:
      0. IMPORTANT: make sure that Kubevirt control-plane components are deployed on infra nodes, not on worker nodes. The reproduction involves drain, and we don't want the controllers to be evicted during reproduction.
      1. In Kubevirt configuration, set
      spec.configuration.migrations.parallelMigrationsPerCluster: 200
      spec.configuration.migrations.parallelOutboundMigrationsPerNode: 100

      2. Add custom label on one of the worker nodes, for example "type=worker001"
      3. Create 5 migratable VMIs with nodeSelector of "type=worker001"
      4. Drain the worker node with the label "type=worker001"
      5. Make sure you see 5 pending VM instance migrations "oc get vmim"
      6. Wait 4-5 minutes, observe the virt-controller pods status

      Actual results:

      Expected results:

      Additional info:

              ibezukh Igor Bezukh
              ibezukh Igor Bezukh
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: