Description
In the Linux kernel, the following vulnerability has been resolved: drm/i915/gem: Prevent overstepping exec array boundary It is possible for eb_relocate_parse_slow() to call kvfree() on entries outside the original exec array during following scenario inside eb_relocate_parse_slow(): 1) eb_copy_relocations() allocates as many as eb->buffer_count copies for exec entries; 2) eb_parse() appends up to two VMAs, right after incrementing eb->buffer_count; 3) cleanup under "out" label uses this incremented buffer_count to release relocation pointers from exec array via kvfree(), not from VMA array. To amend this problem, ensure that relocation cleanup uses the original exec object count, excluding the VMAs appended by the command parser. (cherry picked from commit 2a0158925fb943c7ba8f3216e2734952128defc9)
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
8e4ba491b0ba6fef69270d3c4e48fc517096ef41 to < 24c04e80c35ff36947366f6deafddb522eea080caffected8e4ba491b0ba6fef69270d3c4e48fc517096ef41 to < b1c357131fc467c579f65e9a9d1fdc1a6273ae1daffected8e4ba491b0ba6fef69270d3c4e48fc517096ef41 to < 152fb5083b9333a1cb8629572f9e0f276a404ba6affected8e4ba491b0ba6fef69270d3c4e48fc517096ef41 to < 72d5cbb10d4916a3f8ef9da516c5c0634aca8439affected8e4ba491b0ba6fef69270d3c4e48fc517096ef41 to < ebe162db655881a38de43301151ff7ac940602b5affected
Linux Linux
Default version status: affected
5.10affected0 to < 5.10unaffected6.6.160 to ≤ 6.6.*unaffected6.12.113 to ≤ 6.12.*unaffected6.18.57 to ≤ 6.18.*unaffected7.2.11 to ≤ 7.2.*unaffected7.3 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/24c04e80c35ff36947366f6deafddb522eea080c ↗
- https://git.kernel.org/stable/c/b1c357131fc467c579f65e9a9d1fdc1a6273ae1d ↗
- https://git.kernel.org/stable/c/152fb5083b9333a1cb8629572f9e0f276a404ba6 ↗
- https://git.kernel.org/stable/c/72d5cbb10d4916a3f8ef9da516c5c0634aca8439 ↗
- https://git.kernel.org/stable/c/ebe162db655881a38de43301151ff7ac940602b5 ↗