Phoronix found that AMD incorporated a new vulnerability fix for the Linux kernel, mainly because the original AMD Zen processor may leak data after dividing by zero.
As of press time, the Linux 6.4.10 stable kernel and the Linux 6.1.45 / 5.15.126 / 5.10.190 LTS kernel have fixed the vulnerability.
AMD Linux developer Borislav Petkov wrote a kernel patch to address the bug in the Ryzen 1000-series and EPYC 7001-series processors, explaining:
In some cases, an error occurred when integers were divided by 0, which could leave outdated quotient data from previous division operations on Zen1 architectures.
Perform a dummy 0/1 division before returning from the #DE exception handler to avoid any potential sensitive data issues leaking w.
In the code, this issue is simply referred to as “AMD DIV0 Speculation Bug”.
Of course, virtual division 0/1 only works on AMD Zen 1 processors. The kernel message added by this patch also states that disabling the SMT technique provides “full” protection against division by zero.
In addition to the AMD Zen 1 fixes, various other bugs were fixed in the Linux stable and LTS kernels this week.