summary refs log tree commit diff stats
path: root/hw/sd/sdhci-pci.c
diff options
context:
space:
mode:
authorZheng Huang <hz1624917200@gmail.com>2025-03-28 17:49:35 +0800
committerPhilippe Mathieu-Daudé <philmd@linaro.org>2025-03-31 21:32:43 +0200
commit1c2d03bb0889b7a9a677d53126fb035190683af4 (patch)
tree3bbd422b978b112827ff6eb68e477aa4786a15d4 /hw/sd/sdhci-pci.c
parent48ca224250444150f21cbded5745a0e36703b5e7 (diff)
downloadfocaccia-qemu-1c2d03bb0889b7a9a677d53126fb035190683af4.tar.gz
focaccia-qemu-1c2d03bb0889b7a9a677d53126fb035190683af4.zip
hw/sd/sdhci: free irq on exit
Fix a memory leak bug in sdhci_pci_realize() due to s->irq
not being freed in sdhci_pci_exit().

Signed-off-by: Zheng Huang <hz1624917200@gmail.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-ID: <09ddf42b-a6db-42d5-954b-148d09d8d6cc@gmail.com>
[PMD: Moved qemu_free_irq() call before sdhci_common_unrealize()]
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Diffstat (limited to 'hw/sd/sdhci-pci.c')
-rw-r--r--hw/sd/sdhci-pci.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/hw/sd/sdhci-pci.c b/hw/sd/sdhci-pci.c
index 5268c0dee5..bca149e811 100644
--- a/hw/sd/sdhci-pci.c
+++ b/hw/sd/sdhci-pci.c
@@ -18,6 +18,7 @@
 #include "qemu/osdep.h"
 #include "qapi/error.h"
 #include "qemu/module.h"
+#include "hw/irq.h"
 #include "hw/qdev-properties.h"
 #include "hw/sd/sdhci.h"
 #include "sdhci-internal.h"
@@ -48,6 +49,7 @@ static void sdhci_pci_exit(PCIDevice *dev)
 {
     SDHCIState *s = PCI_SDHCI(dev);
 
+    qemu_free_irq(s->irq);
     sdhci_common_unrealize(s);
     sdhci_uninitfn(s);
 }