Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: ring-buffer: Check resize_disabled before publishing the new subbuf order ring_buffer_subbuf_order_set() stores the new order and only then walks the CPUs, returning -EBUSY if any of them has resizing disabled. A user mapped buffer has resizing disabled, and __rb_map_vma() reads buffer->subbuf_order without buffer->mutex, so an mmap of an already mapped CPU racing the failing order change sizes the mapping with the new order and inserts pages past the sub-buffer into the VMA. Check the CPUs before storing the new order.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected 117c39200d9d760cbd5944bb89efb7b9c51965aa before f2099644e1b2a2c0805c5240d63ab0522d9d0174; affected 117c39200d9d760cbd5944bb89efb7b9c51965aa before 9fd4ea952e6ac12a63c3fe89f08ad02771aa2c06; affected 117c39200d9d760cbd5944bb89efb7b9c51965aa before 32bf47db9237c5b8b6f6aaa5356bb4c79d241f76; affected 117c39200d9d760cbd5944bb89efb7b9c51965aa before d860c67c051685abb0460b593b193f0f45f4fa92 |
| Linux / Linux | affected 6.10; unaffected 0 before 6.10; unaffected 6.12.111 through 6.12.*; unaffected 6.18.53 through 6.18.*; unaffected 7.2.7 through 7.2.*; unaffected 7.3 through * |
CWE
No CWE identifiers supplied.