Possible memory leaks in 'starfive_pcie_probe'

From: Miquel Sabaté Solà

Date: Sun Feb 15 2026 - 18:17:34 EST


Hello,

I was testing the latest Linus' tree on my Starfive VisionFive2 board
when I realized that kmemleak was reporting on four suspected memory
leaks (see attachment).

I am not sure what to tell about what I was doing, since I wasn't doing
anything fancy, and my setup is quite minimal. But if you need any more
details I'm more than happy to provide them.

Cheers,
Miquel

unreferenced object 0xffffffd6e3942680 (size 128):
comm "(udev-worker)", pid 372, jiffies 4294905702
hex dump (first 32 bytes):
70 ef 15 b9 ff ff ff ff 40 ee 51 c1 d6 ff ff ff p.......@.Q.....
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
backtrace (crc 9489c4a7):
__create_object+0x2a/0xd8
kmemleak_alloc+0xb6/0xc8
__kmalloc_cache_noprof+0x3c6/0x510
request_threaded_irq+0x114/0x2e8
devm_request_threaded_irq+0x6e/0x188
plda_init_interrupts+0x2a6/0x5f0
plda_pcie_host_init+0x202/0x420
starfive_pcie_probe+0x2a8/0x490 [pcie_starfive]
platform_probe+0xb6/0x158
really_probe+0x180/0x8a8
__driver_probe_device+0x154/0x368
driver_probe_device+0x62/0x160
__driver_attach+0x192/0x510
bus_for_each_dev+0xe8/0x170
driver_attach+0x3c/0x60
bus_add_driver+0x2ac/0x570
unreferenced object 0xffffffd6e3942c80 (size 128):
comm "(udev-worker)", pid 372, jiffies 4294905703
hex dump (first 32 bytes):
70 ef 15 b9 ff ff ff ff 40 ee 51 c1 d6 ff ff ff p.......@.Q.....
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
backtrace (crc 836d6db5):
__create_object+0x2a/0xd8
kmemleak_alloc+0xb6/0xc8
__kmalloc_cache_noprof+0x3c6/0x510
request_threaded_irq+0x114/0x2e8
devm_request_threaded_irq+0x6e/0x188
plda_init_interrupts+0x2a6/0x5f0
plda_pcie_host_init+0x202/0x420
starfive_pcie_probe+0x2a8/0x490 [pcie_starfive]
platform_probe+0xb6/0x158
really_probe+0x180/0x8a8
__driver_probe_device+0x154/0x368
driver_probe_device+0x62/0x160
__driver_attach+0x192/0x510
bus_for_each_dev+0xe8/0x170
driver_attach+0x3c/0x60
bus_add_driver+0x2ac/0x570
unreferenced object 0xffffffd6e3943680 (size 128):
comm "(udev-worker)", pid 372, jiffies 4294905785
hex dump (first 32 bytes):
70 ef 15 b9 ff ff ff ff 40 be 51 c1 d6 ff ff ff p.......@.Q.....
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
backtrace (crc 414126a):
__create_object+0x2a/0xd8
kmemleak_alloc+0xb6/0xc8
__kmalloc_cache_noprof+0x3c6/0x510
request_threaded_irq+0x114/0x2e8
devm_request_threaded_irq+0x6e/0x188
plda_init_interrupts+0x2a6/0x5f0
plda_pcie_host_init+0x202/0x420
starfive_pcie_probe+0x2a8/0x490 [pcie_starfive]
platform_probe+0xb6/0x158
really_probe+0x180/0x8a8
__driver_probe_device+0x154/0x368
driver_probe_device+0x62/0x160
__driver_attach+0x192/0x510
bus_for_each_dev+0xe8/0x170
driver_attach+0x3c/0x60
bus_add_driver+0x2ac/0x570
unreferenced object 0xffffffd6e3943c80 (size 128):
comm "(udev-worker)", pid 372, jiffies 4294905785
hex dump (first 32 bytes):
70 ef 15 b9 ff ff ff ff 40 be 51 c1 d6 ff ff ff p.......@.Q.....
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
backtrace (crc c42897b8):
__create_object+0x2a/0xd8
kmemleak_alloc+0xb6/0xc8
__kmalloc_cache_noprof+0x3c6/0x510
request_threaded_irq+0x114/0x2e8
devm_request_threaded_irq+0x6e/0x188
plda_init_interrupts+0x2a6/0x5f0
plda_pcie_host_init+0x202/0x420
starfive_pcie_probe+0x2a8/0x490 [pcie_starfive]
platform_probe+0xb6/0x158
really_probe+0x180/0x8a8
__driver_probe_device+0x154/0x368
driver_probe_device+0x62/0x160
__driver_attach+0x192/0x510
bus_for_each_dev+0xe8/0x170
driver_attach+0x3c/0x60
bus_add_driver+0x2ac/0x570

Attachment: signature.asc
Description: PGP signature