CVE-2021-47631: ARM: davinci: da850-evm: Avoid NULL pointer dereference
In the Linux kernel, the following vulnerability has been resolved:
ARM: davinci: da850-evm: Avoid NULL pointer dereference
With newer versions of GCC, there is a panic in da850evmconfigemac() when booting multiv5defconfig in QEMU under the palmetto-bmc machine:
Unable to handle kernel NULL pointer dereference at virtual address 00000020 pgd = (ptrval) [00000020] pgd=00000000 Internal error: Oops: 5 [#1] PREEMPT ARM Modules linked in: CPU: 0 PID: 1 Comm: swapper Not tainted 5.15.0 #1 Hardware name: Generic DT based system PC is at da850evmconfigemac+0x1c/0x120 LR is at dooneinitcall+0x50/0x1e0
The emacpdata pointer in socinfo is NULL because davincisocinfo only gets populated on davinci machines but da850evmconfigemac() is called on all machines via deviceinitcall().
Move the rmiien assignment below the machine check so that it is only dereferenced when running on a supported SoC.
Affected Software
Remediation
Event History
Frequently Asked Questions
What is the severity of CVE-2021-47631?
CVE-2021-47631 has been classified as a medium severity vulnerability affecting the Linux kernel.
How do I fix CVE-2021-47631?
To fix CVE-2021-47631, upgrade the Linux kernel to version 5.15.0 or later.
Which versions of Linux are affected by CVE-2021-47631?
CVE-2021-47631 affects multiple versions of the Linux kernel, specifically versions from 2.6.33 up to 5.15.0.
What types of systems might be impacted by CVE-2021-47631?
Systems running affected versions of the Linux kernel, especially those utilizing ARM architecture, may be impacted by CVE-2021-47631.
What is the nature of the issue in CVE-2021-47631?
CVE-2021-47631 involves a NULL pointer dereference that can cause a panic during the boot process in specific configurations.