Skip to main content
← All vulnerabilities
CVE-2026-93238

s390/vfio-ap: fix potential use of uninitialized apm_filtered bitmap

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 6.6.157, 6.12.110, 6.18.51, 7.2.5
None on Exploit-DB, Metasploit or GitHub

Summary

In the Linux kernel, the following vulnerability has been resolved: s390/vfio-ap: fix potential use of uninitialized apm_filtered bitmap The DECLARE_BITMAP(apm_filtered, AP_DEVICES) macro allocates the bitmap on the stack without zero-initializing it. In vfio_ap_mdev_hot_plug_cfg(), the vfio_ap_mdev_filter_matrix() function is only called to initialize and populate apm_filtered if either filter_adapters or filter_domains is true. If the hot plug configuration change only adds control domains (meaning filter_cdoms is true, but filter_adapters and filter_domains are both false), vfio_ap_mdev_filter_matrix() is bypassed. Consequently, apm_filtered is passed to reset_queues_for_apids() with uninitialized stack garbage. This can cause reset_queues_for_apids() to interpret arbitrary stack garbage bits as valid APIDs to reset, potentially performing unintended guest hardware queue resets. Fix this by zero-initializing the apm_filtered bitmap at the beginning of vfio_ap_mdev_hot_plug_cfg() using bitmap_zero().

Timeline

  1. CVE published
  2. Record last updated

Affected versions

  • Linux Linux

    From eeb386aeb5b7c8d2dae6a3ba49255d8a97803182 · fixed in 4ba8a08f5f26ed59f356a6318bca3aa7cc0af3e2; From eeb386aeb5b7c8d2dae6a3ba49255d8a97803182 · fixed in f73db632524320d2b93bc8534be8ea875053502d; From eeb386aeb5b7c8d2dae6a3ba49255d8a97803182 · fixed in 6d554f2571e6b4db242593ba561efd6a6d1f99a9; From eeb386aeb5b7c8d2dae6a3ba49255d8a97803182 · fixed in 09548edc6114f1eb1035b30795e893204ef45b85; From eeb386aeb5b7c8d2dae6a3ba49255d8a97803182 · fixed in bf09b9d7cd7890bc3a3b7eb63d5ece15f88bfde7

  • Linux Linux

    6.0

  • KernelLinux

    From 6.0.0 · fixed in 6.6.157; From 6.7.0 · fixed in 6.12.110; From 6.13.0 · fixed in 6.18.51; From 6.19.0 · fixed in 7.2.5

References 5

git.kernel.org