Skip to content
CVE PROGRAM SOURCE RECORDUnscored

CVE-2025-37929

arm64: errata: Add missing sentinels to Spectre-BHB MIDR arrays

Description

In the Linux kernel, the following vulnerability has been resolved: arm64: errata: Add missing sentinels to Spectre-BHB MIDR arrays Commit a5951389e58d ("arm64: errata: Add newer ARM cores to the spectre_bhb_loop_affected() lists") added some additional CPUs to the Spectre-BHB workaround, including some new arrays for designs that require new 'k' values for the workaround to be effective. Unfortunately, the new arrays omitted the sentinel entry and so is_midr_in_range_list() will walk off the end when it doesn't find a match. With UBSAN enabled, this leads to a crash during boot when is_midr_in_range_list() is inlined (which was more common prior to c8c2647e69be ("arm64: Make  _midr_in_range_list() an exported function")): | Internal error: aarch64 BRK: 00000000f2000001 [#1] PREEMPT SMP | pstate: 804000c5 (Nzcv daIF +PAN -UAO -TCO -DIT -SSBS BTYPE=--) | pc : spectre_bhb_loop_affected+0x28/0x30 | lr : is_spectre_bhb_affected+0x170/0x190 | [...] | Call trace: | spectre_bhb_loop_affected+0x28/0x30 | update_cpu_capabilities+0xc0/0x184 | init_cpu_features+0x188/0x1a4 | cpuinfo_store_boot_cpu+0x4c/0x60 | smp_prepare_boot_cpu+0x38/0x54 | start_kernel+0x8c/0x478 | __primary_switched+0xc8/0xd4 | Code: 6b09011f 54000061 52801080 d65f03c0 (d4200020) | ---[ end trace 0000000000000000 ]--- | Kernel panic - not syncing: aarch64 BRK: Fatal exception Add the missing sentinel entries.

Affected products

Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.

Linux Linux

Default version status: unaffected

  • 4a2f3d8260a996bc43dcc1ce49ac594db54f4b3e to < e68da90ac00d8b681561aeb8f5d6c47af3a04861affected
  • 46e22de65eb45a67a68ddfe9301f79b0c3821ca8 to < 6266b3509b2c6ebf2f9daf2239ff8eb60c5f5bd3affected
  • a53b3599d9bf9375f9033f2aa1fa92714fb1d0f0 to < 446289b8b36b2ee98dabf6388acbddcc33ed41beaffected
  • 4117975672c4743cffaf32b6fd018cfacd1b420e to < 3821cae9bd5a99a42d3d0be1b58e41f072cd4c4caffected
  • 9ca4fe357464bbdad0db67985275f2694df8dab5 to < 090c8714efe1c3c470301cc2f794c1ee2a57746caffected
  • e060dbb7393ed7bdfba6b5ea7566f9ef87381cfb to < 333579202f09e260e8116321df4c55f80a19b160affected
  • a5951389e58d2e816eed3dbec5877de9327fd881 to < fee4d171451c1ad9e8aaf65fc0ab7d143a33bd72affected
  • ed681e90fb244aa883b918c4d8be2614e816c6dfaffected
  • 6.13.12 to < 6.14affected

Linux Linux

Default version status: unaffected

  • 5.15.181 to < 5.15.182affected
  • 6.1.135 to < 6.1.138affected
  • 6.6.88 to < 6.6.90affected
  • 6.12.24 to < 6.12.28affected
  • 6.14.3 to < 6.14.6affected

References