In the Linux kernel, the following vulnerability has been resolved:
remoteproc: mediatek: Make sure IPI buffer fits in L2TCM
The IPI buffer location is read from the firmware that we load to the System Companion Processor, and it's not granted that both the SRAM (L2TCM) size that is defined in the devicetree node is large enough for that, and while this is especially true for multi-core SCP, it's still useful to check on single-core variants as well.
Failing to perform this check may make this driver perform R/W operations out of the L2TCM boundary, resulting (at best) in a kernel panic.
To fix that, check that the IPI buffer fits, otherwise return a failure and refuse to boot the relevant SCP core (or the SCP at all, if this is single core).
[
{
"id": "CVE-2024-36965-0fcf602f",
"digest": {
"line_hashes": [
"20455396588377448396418263734820897136",
"233722928701939960003523978897001851298",
"223126120710167645849242093740231895993",
"195199706090935217439747180203234190261",
"282463055840442580612405075203792783768",
"223098938701564106616188425313807526776",
"266787285442103958173504656165056845976"
],
"threshold": 0.9
},
"deprecated": false,
"target": {
"file": "drivers/remoteproc/mtk_scp.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@26c6d7dc8c6a9fde9d362ab2eef6390efeff145e",
"signature_type": "Line",
"signature_version": "v1"
},
{
"id": "CVE-2024-36965-1a745514",
"digest": {
"line_hashes": [
"20455396588377448396418263734820897136",
"233722928701939960003523978897001851298",
"223126120710167645849242093740231895993",
"195199706090935217439747180203234190261",
"282463055840442580612405075203792783768",
"223098938701564106616188425313807526776",
"266787285442103958173504656165056845976"
],
"threshold": 0.9
},
"deprecated": false,
"target": {
"file": "drivers/remoteproc/mtk_scp.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@00548ac6b14428719c970ef90adae2b3b48c0cdf",
"signature_type": "Line",
"signature_version": "v1"
},
{
"id": "CVE-2024-36965-2b2e1eb7",
"digest": {
"line_hashes": [
"20455396588377448396418263734820897136",
"233722928701939960003523978897001851298",
"223126120710167645849242093740231895993",
"195199706090935217439747180203234190261",
"282463055840442580612405075203792783768",
"223098938701564106616188425313807526776",
"266787285442103958173504656165056845976"
],
"threshold": 0.9
},
"deprecated": false,
"target": {
"file": "drivers/remoteproc/mtk_scp.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@331f91d86f71d0bb89a44217cc0b2a22810bbd42",
"signature_type": "Line",
"signature_version": "v1"
},
{
"id": "CVE-2024-36965-3e767b4d",
"digest": {
"line_hashes": [
"20455396588377448396418263734820897136",
"233722928701939960003523978897001851298",
"223126120710167645849242093740231895993",
"195199706090935217439747180203234190261",
"282463055840442580612405075203792783768",
"223098938701564106616188425313807526776",
"266787285442103958173504656165056845976"
],
"threshold": 0.9
},
"deprecated": false,
"target": {
"file": "drivers/remoteproc/mtk_scp.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@838b49e211d59fa827ff9df062d4020917cffbdf",
"signature_type": "Line",
"signature_version": "v1"
},
{
"id": "CVE-2024-36965-603f6e55",
"digest": {
"length": 584.0,
"function_hash": "10089190715325171274835429811858243752"
},
"deprecated": false,
"target": {
"file": "drivers/remoteproc/mtk_scp.c",
"function": "scp_ipi_init"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@838b49e211d59fa827ff9df062d4020917cffbdf",
"signature_type": "Function",
"signature_version": "v1"
},
{
"id": "CVE-2024-36965-67aec06f",
"digest": {
"length": 584.0,
"function_hash": "10089190715325171274835429811858243752"
},
"deprecated": false,
"target": {
"file": "drivers/remoteproc/mtk_scp.c",
"function": "scp_ipi_init"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@26c6d7dc8c6a9fde9d362ab2eef6390efeff145e",
"signature_type": "Function",
"signature_version": "v1"
},
{
"id": "CVE-2024-36965-7580ba2a",
"digest": {
"length": 584.0,
"function_hash": "10089190715325171274835429811858243752"
},
"deprecated": false,
"target": {
"file": "drivers/remoteproc/mtk_scp.c",
"function": "scp_ipi_init"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@00548ac6b14428719c970ef90adae2b3b48c0cdf",
"signature_type": "Function",
"signature_version": "v1"
},
{
"id": "CVE-2024-36965-938ef10b",
"digest": {
"length": 584.0,
"function_hash": "10089190715325171274835429811858243752"
},
"deprecated": false,
"target": {
"file": "drivers/remoteproc/mtk_scp.c",
"function": "scp_ipi_init"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@1d9e2de24533daca36cbf09e8d8596bf72b526b2",
"signature_type": "Function",
"signature_version": "v1"
},
{
"id": "CVE-2024-36965-a22fafd5",
"digest": {
"length": 584.0,
"function_hash": "10089190715325171274835429811858243752"
},
"deprecated": false,
"target": {
"file": "drivers/remoteproc/mtk_scp.c",
"function": "scp_ipi_init"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@331f91d86f71d0bb89a44217cc0b2a22810bbd42",
"signature_type": "Function",
"signature_version": "v1"
},
{
"id": "CVE-2024-36965-a75c44ec",
"digest": {
"length": 584.0,
"function_hash": "10089190715325171274835429811858243752"
},
"deprecated": false,
"target": {
"file": "drivers/remoteproc/mtk_scp.c",
"function": "scp_ipi_init"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@36c79eb4845551e9f6d28c663b38ce0ab03b84a9",
"signature_type": "Function",
"signature_version": "v1"
},
{
"id": "CVE-2024-36965-b70d8a4d",
"digest": {
"line_hashes": [
"20455396588377448396418263734820897136",
"233722928701939960003523978897001851298",
"223126120710167645849242093740231895993",
"195199706090935217439747180203234190261",
"282463055840442580612405075203792783768",
"223098938701564106616188425313807526776",
"266787285442103958173504656165056845976"
],
"threshold": 0.9
},
"deprecated": false,
"target": {
"file": "drivers/remoteproc/mtk_scp.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@1d9e2de24533daca36cbf09e8d8596bf72b526b2",
"signature_type": "Line",
"signature_version": "v1"
},
{
"id": "CVE-2024-36965-be00f6e7",
"digest": {
"line_hashes": [
"20455396588377448396418263734820897136",
"233722928701939960003523978897001851298",
"223126120710167645849242093740231895993",
"195199706090935217439747180203234190261",
"282463055840442580612405075203792783768",
"223098938701564106616188425313807526776",
"266787285442103958173504656165056845976"
],
"threshold": 0.9
},
"deprecated": false,
"target": {
"file": "drivers/remoteproc/mtk_scp.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@36c79eb4845551e9f6d28c663b38ce0ab03b84a9",
"signature_type": "Line",
"signature_version": "v1"
}
]