Description
In the Linux kernel, the following vulnerability has been resolved: drm/amdkfd: Avoid integer underflow with ffs in EOP ring size calc The low 6 bits of cp_hqd_eop_control store the base-2 logarithm of the EOP ring size. This was calculated as ffs(q->eop_ring_buffer_size / sizeof(unsigned int)) - 1 - 1 But ffs can in theory return 1 or 0, so this could underflow (although in practice the ring buffer size cannot be less than 4096). Change this to ffs(q->eop_ring_buffer_size / sizeof(unsigned int) / 4) using properties of logarithms. (cherry picked from commit 4f18c56630383c14bfc6b2d65f88f2f895d2121a)
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
14328aa58ce523a59996c5a82681c43ec048cc33 to < 82e1b8299c6da02ce02185c208d2fdf7572b5ea1affected14328aa58ce523a59996c5a82681c43ec048cc33 to < c883d0a132d430ef7ebb23fd94323be94d0fbdb8affected
Linux Linux
Default version status: affected
5.3affected0 to < 5.3unaffected7.2.8 to ≤ 7.2.*unaffected7.3 to ≤ *unaffected