CVE-2026-64524 PUBLISHED

drm/hyperv: validate resolution_count and fix WIN8 fallback

Assigner: Linux
Reserved: 19.07.2026 Published: 25.07.2026 Updated: 25.07.2026

In the Linux kernel, the following vulnerability has been resolved:

drm/hyperv: validate resolution_count and fix WIN8 fallback

A SYNTHVID_RESOLUTION_RESPONSE with resolution_count > 64 walks past the supported_resolution[SYNTHVID_MAX_RESOLUTION_COUNT] array in the parse loop. Bound resolution_count against the array size, folded into the existing zero-check.

When the WIN10 resolution probe fails, the caller in hyperv_connect_vsp() left hv->screen_max / preferred unpopulated, which sets mode_config.max_width / max_height to 0 and makes drm_internal_framebuffer_create() reject every userspace framebuffer with -EINVAL. The pre-WIN10 branch had the same gap for preferred_width / preferred_height. Use a single post-probe fallback guarded by screen_width_max == 0 so both paths converge on the WIN8 defaults.

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from 76c56a5affeba1e163b66b9d8cc192e6154466f0 to 96f7de3172d4aa878b7f87173b2b3507c350fcd6 (excl.)
  • affected from 76c56a5affeba1e163b66b9d8cc192e6154466f0 to bc573752f3dac0d1ab8df7078c1851bc76717653 (excl.)
  • affected from 76c56a5affeba1e163b66b9d8cc192e6154466f0 to 1fb565b77b8f44afabb02de6310065f109d89e94 (excl.)
  • affected from 76c56a5affeba1e163b66b9d8cc192e6154466f0 to a321c908f2eeea01539668eb270d074d9b88e490 (excl.)
  • affected from 76c56a5affeba1e163b66b9d8cc192e6154466f0 to 9c698b2c43c2667c34f5336bf46ad5786216ac2a (excl.)
  • affected from 76c56a5affeba1e163b66b9d8cc192e6154466f0 to 8a114b25b5521eae451b13bce98ae978624962e5 (excl.)
  • affected from 76c56a5affeba1e163b66b9d8cc192e6154466f0 to 13d33b9ef67066c77c84273fac5a1d3fde3533d1 (excl.)
Vendor Linux
Product Linux
Versions Default: affected
  • Version 5.14 is affected
  • unaffected from 0 to 5.14 (excl.)
  • unaffected from 5.15.210 to 5.15.* (incl.)
  • unaffected from 6.1.176 to 6.1.* (incl.)
  • unaffected from 6.6.143 to 6.6.* (incl.)
  • unaffected from 6.12.93 to 6.12.* (incl.)
  • unaffected from 6.18.35 to 6.18.* (incl.)
  • unaffected from 7.0.12 to 7.0.* (incl.)
  • unaffected from 7.1 to * (incl.)

References