In the Linux kernel, the following vulnerability has been resolved:
remoteproc: core: Cleanup acquired resources when rprochandleresources() fails in rproc_attach()
When rproc->state = RPROCDETACHED and rprocattach() is used to attach to the remote processor, if rprochandleresources() returns a failure, the resources allocated by imxrprocprepare() should be released, otherwise the following memory leak will occur.
Since almost the same thing is done in imxrprocprepare() and rprocresourcecleanup(), Function rprocresourcecleanup() is able to deal with empty lists so it is better to fix the "goto" statements in rprocattach(). replace the "unpreparedevice" goto statement with "cleanupresources" and get rid of the "unprepare_device" label.
unreferenced object 0xffff0000861c5d00 (size 128): comm "kworker/u12:3", pid 59, jiffies 4294893509 (age 149.220s) hex dump (first 32 bytes): 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 02 88 00 00 00 00 00 00 10 00 00 00 00 00 ............ backtrace: [<00000000f949fe18>] slabpostallochook+0x98/0x37c [<00000000adbfb3e7>] _kmemcacheallocnode+0x138/0x2e0 [<00000000521c0345>] kmalloctrace+0x40/0x158 [<000000004e330a49>] rprocmementryinit+0x60/0xf8 [<000000002815755e>] imxrprocprepare+0xe0/0x180 [<0000000003f61b4e>] rprocboot+0x2ec/0x528 [<00000000e7e994ac>] rprocadd+0x124/0x17c [<0000000048594076>] imxrprocprobe+0x4ec/0x5d4 [<00000000efc298a1>] platformprobe+0x68/0xd8 [<00000000110be6fe>] reallyprobe+0x110/0x27c [<00000000e245c0ae>] _driverprobedevice+0x78/0x12c [<00000000f61f6f5e>] driverprobedevice+0x3c/0x118 [<00000000a7874938>] _deviceattachdriver+0xb8/0xf8 [<0000000065319e69>] busforeachdrv+0x84/0xe4 [<00000000db3eb243>] _deviceattach+0xfc/0x18c [<0000000072e4e1a4>] deviceinitialprobe+0x14/0x20
[
{
"id": "CVE-2025-38419-33c094b1",
"signature_version": "v1",
"signature_type": "Line",
"target": {
"file": "drivers/remoteproc/remoteproc_core.c"
},
"deprecated": false,
"digest": {
"line_hashes": [
"290114108785801853409287158710302824862",
"204883446805987968231691252043401969795",
"126663983972717270505778954365742711293",
"224629355117817711684766941923941754519",
"274316180852424417220176480274186355044",
"54378906705932752422828666723851652294",
"34195082069424412465040889407959791579",
"191073996120398927086981303027525815923",
"171335939471655471123351263096867631054",
"89061432824127473709398500440227621557",
"15909719934747139720897914967958276717",
"144703061510353366479179669496855042455"
],
"threshold": 0.9
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@92776ca0ccfe78b9bfe847af206bad641fb11121"
},
{
"id": "CVE-2025-38419-3b683e99",
"signature_version": "v1",
"signature_type": "Function",
"target": {
"file": "drivers/remoteproc/remoteproc_core.c",
"function": "rproc_attach"
},
"deprecated": false,
"digest": {
"length": 1016.0,
"function_hash": "251819727430342970244366742694931405665"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@82208ce9505abb057afdece7c62a14687c52c9ca"
},
{
"id": "CVE-2025-38419-502475ee",
"signature_version": "v1",
"signature_type": "Function",
"target": {
"file": "drivers/remoteproc/remoteproc_core.c",
"function": "rproc_attach"
},
"deprecated": false,
"digest": {
"length": 1016.0,
"function_hash": "251819727430342970244366742694931405665"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@7692c9fbedd9087dc9050903f58095915458d9b1"
},
{
"id": "CVE-2025-38419-5c7e100c",
"signature_version": "v1",
"signature_type": "Function",
"target": {
"file": "drivers/remoteproc/remoteproc_core.c",
"function": "rproc_attach"
},
"deprecated": false,
"digest": {
"length": 1016.0,
"function_hash": "251819727430342970244366742694931405665"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@5434d9f2fd68722b514c14b417b53a8af02c4d24"
},
{
"id": "CVE-2025-38419-7f31aa50",
"signature_version": "v1",
"signature_type": "Function",
"target": {
"file": "drivers/remoteproc/remoteproc_core.c",
"function": "rproc_attach"
},
"deprecated": false,
"digest": {
"length": 1016.0,
"function_hash": "251819727430342970244366742694931405665"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@c56d6ef2711ee51b54f160ad0f25a381561f0287"
},
{
"id": "CVE-2025-38419-c2d92986",
"signature_version": "v1",
"signature_type": "Line",
"target": {
"file": "drivers/remoteproc/remoteproc_core.c"
},
"deprecated": false,
"digest": {
"line_hashes": [
"290114108785801853409287158710302824862",
"204883446805987968231691252043401969795",
"126663983972717270505778954365742711293",
"224629355117817711684766941923941754519",
"274316180852424417220176480274186355044",
"54378906705932752422828666723851652294",
"34195082069424412465040889407959791579",
"191073996120398927086981303027525815923",
"171335939471655471123351263096867631054",
"89061432824127473709398500440227621557",
"15909719934747139720897914967958276717",
"144703061510353366479179669496855042455"
],
"threshold": 0.9
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@5434d9f2fd68722b514c14b417b53a8af02c4d24"
},
{
"id": "CVE-2025-38419-dec18d24",
"signature_version": "v1",
"signature_type": "Line",
"target": {
"file": "drivers/remoteproc/remoteproc_core.c"
},
"deprecated": false,
"digest": {
"line_hashes": [
"290114108785801853409287158710302824862",
"204883446805987968231691252043401969795",
"126663983972717270505778954365742711293",
"224629355117817711684766941923941754519",
"274316180852424417220176480274186355044",
"54378906705932752422828666723851652294",
"34195082069424412465040889407959791579",
"191073996120398927086981303027525815923",
"171335939471655471123351263096867631054",
"89061432824127473709398500440227621557",
"15909719934747139720897914967958276717",
"144703061510353366479179669496855042455"
],
"threshold": 0.9
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@82208ce9505abb057afdece7c62a14687c52c9ca"
},
{
"id": "CVE-2025-38419-e2bf886e",
"signature_version": "v1",
"signature_type": "Line",
"target": {
"file": "drivers/remoteproc/remoteproc_core.c"
},
"deprecated": false,
"digest": {
"line_hashes": [
"290114108785801853409287158710302824862",
"204883446805987968231691252043401969795",
"126663983972717270505778954365742711293",
"224629355117817711684766941923941754519",
"274316180852424417220176480274186355044",
"54378906705932752422828666723851652294",
"34195082069424412465040889407959791579",
"191073996120398927086981303027525815923",
"171335939471655471123351263096867631054",
"89061432824127473709398500440227621557",
"15909719934747139720897914967958276717",
"144703061510353366479179669496855042455"
],
"threshold": 0.9
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@7692c9fbedd9087dc9050903f58095915458d9b1"
},
{
"id": "CVE-2025-38419-f05f8d65",
"signature_version": "v1",
"signature_type": "Function",
"target": {
"file": "drivers/remoteproc/remoteproc_core.c",
"function": "rproc_attach"
},
"deprecated": false,
"digest": {
"length": 1016.0,
"function_hash": "251819727430342970244366742694931405665"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@92776ca0ccfe78b9bfe847af206bad641fb11121"
},
{
"id": "CVE-2025-38419-f580fa40",
"signature_version": "v1",
"signature_type": "Line",
"target": {
"file": "drivers/remoteproc/remoteproc_core.c"
},
"deprecated": false,
"digest": {
"line_hashes": [
"290114108785801853409287158710302824862",
"204883446805987968231691252043401969795",
"126663983972717270505778954365742711293",
"224629355117817711684766941923941754519",
"274316180852424417220176480274186355044",
"54378906705932752422828666723851652294",
"34195082069424412465040889407959791579",
"191073996120398927086981303027525815923",
"171335939471655471123351263096867631054",
"89061432824127473709398500440227621557",
"15909719934747139720897914967958276717",
"144703061510353366479179669496855042455"
],
"threshold": 0.9
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@c56d6ef2711ee51b54f160ad0f25a381561f0287"
}
]