Uploaded image for project: 'RHEL'
  1. RHEL
  2. RHEL-149866

viostor: Fix device configuration updates

Linking RHIVOS CVEs to...Migration: Automation ...Sync from "Extern...XMLWordPrintable

    • Icon: Story Story
    • Resolution: Unresolved
    • Icon: Normal Normal
    • rhel-10.3
    • None
    • virtio-win
    • None
    • rhel-virt-windows
    • None
    • False
    • False
    • Hide

      None

      Show
      None
    • None
    • None
    • Requested
    • virtio-win-prewhql-0.1-297
    • None
    • Unspecified
    • Unspecified
    • Unspecified
    • None

      This fixes viostor to handle Device Configuration Interrupts more correctly.

      In the case of `msix_has_config_vector == false`, the driver didn't even try to get the notification, but it disabled the config vector entirely. This is changed to share vector 0 between a queue and config updates. This is easy to reproduce: After resizing the disk (with `block_resize` in the QEMU monitor), the change would not be picked up by Windows if the disk had `vectors < num_queues + 1` until the device is disabled and reenabled. With the fixed driver, the new size is recognised and shown e.g. in Disk Management after hitting F5.

      The fixes in `VirtIoInterrupt()` make the driver more compliant with the spec, but are more theoretical in nature.

              kwolf@redhat.com Kevin Wolf
              yvugenfi@redhat.com Yan Vugenfirer
              Virt Windows SST Bugs Virt Windows SST Bugs
              Xiaoling Gao Xiaoling Gao
              Votes:
              0 Vote for this issue
              Watchers:
              7 Start watching this issue

                Created:
                Updated: