In the Linux kernel, the following vulnerability has been resolved:
ARM: rockchip: fix kernel hang during smp initialization
In order to bring up secondary CPUs main CPU write trampoline code to SRAM. The trampoline code is written while secondary CPUs are powered on (at least that true for RK3188 CPU). Sometimes that leads to kernel hang. Probably because secondary CPU execute trampoline code while kernel doesn't expect.
The patch moves SRAM initialization step to the point where all secondary CPUs are powered down.
That fixes rarely hangs on RK3188: [ 0.091568] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000 [ 0.091996] rockchipsmpprepare_cpus: ncores 4
[
{
"deprecated": false,
"target": {
"file": "arch/arm/mach-rockchip/platsmp.c",
"function": "rockchip_smp_prepare_cpus"
},
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@d7d6d076ee9532c4668f14696a35688d35dd16f4",
"signature_version": "v1",
"id": "CVE-2025-39752-122b623c",
"digest": {
"function_hash": "293507569713364282377988029934719763242",
"length": 1235.0
}
},
{
"deprecated": false,
"target": {
"file": "arch/arm/mach-rockchip/platsmp.c",
"function": "rockchip_smp_prepare_cpus"
},
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@888a453c2a239765a7ab4de8a3cedae2e3802528",
"signature_version": "v1",
"id": "CVE-2025-39752-35756dd8",
"digest": {
"function_hash": "293507569713364282377988029934719763242",
"length": 1235.0
}
},
{
"deprecated": false,
"target": {
"file": "arch/arm/mach-rockchip/platsmp.c",
"function": "rockchip_smp_prepare_cpus"
},
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@265583266d93db4ff83d088819b1f63fdf0131db",
"signature_version": "v1",
"id": "CVE-2025-39752-45c89ea6",
"digest": {
"function_hash": "293507569713364282377988029934719763242",
"length": 1235.0
}
},
{
"deprecated": false,
"target": {
"file": "arch/arm/mach-rockchip/platsmp.c",
"function": "rockchip_smp_prepare_cpus"
},
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@3c6bf7a324b8995b9c7d790c8d2abf0668f51551",
"signature_version": "v1",
"id": "CVE-2025-39752-4c0e3901",
"digest": {
"function_hash": "293507569713364282377988029934719763242",
"length": 1235.0
}
},
{
"deprecated": false,
"target": {
"file": "arch/arm/mach-rockchip/platsmp.c"
},
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@3c6bf7a324b8995b9c7d790c8d2abf0668f51551",
"signature_version": "v1",
"id": "CVE-2025-39752-50cf83a6",
"digest": {
"threshold": 0.9,
"line_hashes": [
"213942859335307322799991357870215106540",
"56145375518655040853389918488517245279",
"298046778879692802846133000691577698578",
"136874317143069712505078501451937321763",
"96255881604788465039149088524597292905",
"50438297023249400178911390671248200178",
"176171975990349304121158142680330660527",
"178443475190318357284698958439848393889",
"135073593281528182027019897900332753219",
"68311379736450481669807398670305055841",
"311470369147494369747222322066389521195",
"87889660228428943074365784503570063528",
"148819324733830153757297973726170781498"
]
}
},
{
"deprecated": false,
"target": {
"file": "arch/arm/mach-rockchip/platsmp.c"
},
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@d7d6d076ee9532c4668f14696a35688d35dd16f4",
"signature_version": "v1",
"id": "CVE-2025-39752-54c20792",
"digest": {
"threshold": 0.9,
"line_hashes": [
"213942859335307322799991357870215106540",
"56145375518655040853389918488517245279",
"298046778879692802846133000691577698578",
"136874317143069712505078501451937321763",
"96255881604788465039149088524597292905",
"50438297023249400178911390671248200178",
"176171975990349304121158142680330660527",
"178443475190318357284698958439848393889",
"135073593281528182027019897900332753219",
"68311379736450481669807398670305055841",
"311470369147494369747222322066389521195",
"87889660228428943074365784503570063528",
"148819324733830153757297973726170781498"
]
}
},
{
"deprecated": false,
"target": {
"file": "arch/arm/mach-rockchip/platsmp.c",
"function": "rockchip_smp_prepare_cpus"
},
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@47769dab9073a73e127aa0bfd0ba4c51eaccdc33",
"signature_version": "v1",
"id": "CVE-2025-39752-5cacc861",
"digest": {
"function_hash": "293507569713364282377988029934719763242",
"length": 1235.0
}
},
{
"deprecated": false,
"target": {
"file": "arch/arm/mach-rockchip/platsmp.c"
},
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@265583266d93db4ff83d088819b1f63fdf0131db",
"signature_version": "v1",
"id": "CVE-2025-39752-78b3abdb",
"digest": {
"threshold": 0.9,
"line_hashes": [
"213942859335307322799991357870215106540",
"56145375518655040853389918488517245279",
"298046778879692802846133000691577698578",
"136874317143069712505078501451937321763",
"96255881604788465039149088524597292905",
"50438297023249400178911390671248200178",
"176171975990349304121158142680330660527",
"178443475190318357284698958439848393889",
"135073593281528182027019897900332753219",
"68311379736450481669807398670305055841",
"311470369147494369747222322066389521195",
"87889660228428943074365784503570063528",
"148819324733830153757297973726170781498"
]
}
},
{
"deprecated": false,
"target": {
"file": "arch/arm/mach-rockchip/platsmp.c"
},
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@0223a3683d502b7e5eb2eb4ad7e97363fa88d531",
"signature_version": "v1",
"id": "CVE-2025-39752-bf93f4e5",
"digest": {
"threshold": 0.9,
"line_hashes": [
"213942859335307322799991357870215106540",
"56145375518655040853389918488517245279",
"298046778879692802846133000691577698578",
"136874317143069712505078501451937321763",
"96255881604788465039149088524597292905",
"50438297023249400178911390671248200178",
"176171975990349304121158142680330660527",
"178443475190318357284698958439848393889",
"135073593281528182027019897900332753219",
"68311379736450481669807398670305055841",
"311470369147494369747222322066389521195",
"87889660228428943074365784503570063528",
"148819324733830153757297973726170781498"
]
}
},
{
"deprecated": false,
"target": {
"file": "arch/arm/mach-rockchip/platsmp.c"
},
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@1eb67589a7e091b1e5108aab72fddbf4dc69af2c",
"signature_version": "v1",
"id": "CVE-2025-39752-c77d2c9b",
"digest": {
"threshold": 0.9,
"line_hashes": [
"213942859335307322799991357870215106540",
"56145375518655040853389918488517245279",
"298046778879692802846133000691577698578",
"136874317143069712505078501451937321763",
"96255881604788465039149088524597292905",
"50438297023249400178911390671248200178",
"176171975990349304121158142680330660527",
"178443475190318357284698958439848393889",
"135073593281528182027019897900332753219",
"68311379736450481669807398670305055841",
"311470369147494369747222322066389521195",
"87889660228428943074365784503570063528",
"148819324733830153757297973726170781498"
]
}
},
{
"deprecated": false,
"target": {
"file": "arch/arm/mach-rockchip/platsmp.c"
},
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@47769dab9073a73e127aa0bfd0ba4c51eaccdc33",
"signature_version": "v1",
"id": "CVE-2025-39752-cd65dbd1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"213942859335307322799991357870215106540",
"56145375518655040853389918488517245279",
"298046778879692802846133000691577698578",
"136874317143069712505078501451937321763",
"96255881604788465039149088524597292905",
"50438297023249400178911390671248200178",
"176171975990349304121158142680330660527",
"178443475190318357284698958439848393889",
"135073593281528182027019897900332753219",
"68311379736450481669807398670305055841",
"311470369147494369747222322066389521195",
"87889660228428943074365784503570063528",
"148819324733830153757297973726170781498"
]
}
},
{
"deprecated": false,
"target": {
"file": "arch/arm/mach-rockchip/platsmp.c"
},
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@888a453c2a239765a7ab4de8a3cedae2e3802528",
"signature_version": "v1",
"id": "CVE-2025-39752-de7d8a0a",
"digest": {
"threshold": 0.9,
"line_hashes": [
"213942859335307322799991357870215106540",
"56145375518655040853389918488517245279",
"298046778879692802846133000691577698578",
"136874317143069712505078501451937321763",
"96255881604788465039149088524597292905",
"50438297023249400178911390671248200178",
"176171975990349304121158142680330660527",
"178443475190318357284698958439848393889",
"135073593281528182027019897900332753219",
"68311379736450481669807398670305055841",
"311470369147494369747222322066389521195",
"87889660228428943074365784503570063528",
"148819324733830153757297973726170781498"
]
}
},
{
"deprecated": false,
"target": {
"file": "arch/arm/mach-rockchip/platsmp.c",
"function": "rockchip_smp_prepare_cpus"
},
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@1eb67589a7e091b1e5108aab72fddbf4dc69af2c",
"signature_version": "v1",
"id": "CVE-2025-39752-ef946014",
"digest": {
"function_hash": "293507569713364282377988029934719763242",
"length": 1235.0
}
},
{
"deprecated": false,
"target": {
"file": "arch/arm/mach-rockchip/platsmp.c",
"function": "rockchip_smp_prepare_cpus"
},
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@0223a3683d502b7e5eb2eb4ad7e97363fa88d531",
"signature_version": "v1",
"id": "CVE-2025-39752-fb011774",
"digest": {
"function_hash": "293507569713364282377988029934719763242",
"length": 1235.0
}
}
]