sata: dwc_ahsata: Fix memory issue in reset_sata
authorYe Li <ye.li@nxp.com>
Sun, 3 May 2020 14:27:03 +0000 (22:27 +0800)
committerTom Rini <trini@konsulko.com>
Fri, 8 May 2020 22:29:10 +0000 (18:29 -0400)
The reset_sata should reset the sata device info and free the
probe_ent memory. Otherwise, it will cause memory leak if we
init the sata again.

Signed-off-by: Ye Li <ye.li@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
drivers/ata/dwc_ahsata.c

index 82fbb50da62cd3ab4f1bc5536b44c0a8401ff4c9..2bc1de8b98a7a7f14564623ad6e1094cd806fbcc 100644 (file)
@@ -918,6 +918,9 @@ int reset_sata(int dev)
        while (readl(&host_mmio->ghc) & SATA_HOST_GHC_HR)
                udelay(100);
 
+       free(uc_priv);
+       memset(&sata_dev_desc[dev], 0, sizeof(struct blk_desc));
+
        return 0;
 }