id = 2272 title = "Memory leak in the virtual device applesmc" state = "closed" created_at = "2024-04-07T18:51:24.569Z" closed_at = "2024-04-10T15:08:31.741Z" labels = ["workflow::Patch available"] url = "https://gitlab.com/qemu-project/qemu/-/issues/2272" host-os = "Ubuntu 22.04.4 LTS" host-arch = "x86_64" qemu-version = "commit ce64e6224a" guest-os = "Debian GNU/Linux 10 (buster)" guest-arch = "x86_64" description = """In the function _qdev_applesmc_isa_reset_, the device mallocs the _AppleSMCData_ but does not free them, causing a memory leak. The following log reveals it: ``` ==1029295==ERROR: LeakSanitizer: detected memory leaksDirect leak of 80 byte(s) in 2 object(s) allocated from: #0 0x5574dc600a82 in __interceptor_calloc compiler-rt/lib/asan/asan_malloc_linux.cpp:138:3 #1 0x7f4919b22c50 in g_malloc0 (/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x5ec50) #2 0x5574dcdb0dfe in qdev_applesmc_isa_reset qemu/hw/misc/applesmc.c:285:5 #3 0x5574de30e099 in resettable_phase_hold qemu/hw/core/resettable.c #4 0x5574de2ef753 in bus_reset_child_foreach qemu/hw/core/bus.c:97:13 #5 0x5574de30dcfe in resettable_child_foreach qemu/hw/core/resettable.c:96:9 #6 0x5574de30dcfe in resettable_phase_hold qemu/hw/core/resettable.c:173:5 #7 0x5574de3059b3 in device_reset_child_foreach qemu/hw/core/qdev.c:276:9 ```""" reproduce = """1. Build qemu with the sanitizer 2. Boot the Linux kernel with the above command line. 3. Stop the qemu process""" additional = "n/a"