mirror of
https://github.com/followmsi/android_kernel_google_msm.git
synced 2024-11-06 23:17:41 +00:00
e3854b6e25
At this point, ehv_pic has been allocated but not stored anywhere, so it should be freed before leaving the function. A simplified version of the semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // <smpl> @exists@ local idexpression x; statement S,S1; expression E; identifier fl; expression *ptr != NULL; @@ x = \(kmalloc\|kzalloc\|kcalloc\)(...); ... if (x == NULL) S <... when != x when != if (...) { <+...kfree(x)...+> } when any when != true x == NULL x->fl ...> ( if (x == NULL) S1 | if (...) { ... when != x when forall ( return \(0\|<+...x...+>\|ptr\); | * return ...; ) } ) // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk> Acked-by: Timur Tabi <timur@freescale.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org> |
||
---|---|---|
.. | ||
bestcomm | ||
qe_lib | ||
xics | ||
6xx-suspend.S | ||
axonram.c | ||
cpm1.c | ||
cpm2.c | ||
cpm2_pic.c | ||
cpm2_pic.h | ||
cpm_common.c | ||
dart.h | ||
dart_iommu.c | ||
dcr-low.S | ||
dcr.c | ||
ehv_pic.c | ||
fsl_85xx_cache_ctlr.h | ||
fsl_85xx_cache_sram.c | ||
fsl_85xx_l2ctlr.c | ||
fsl_gtm.c | ||
fsl_lbc.c | ||
fsl_msi.c | ||
fsl_msi.h | ||
fsl_pci.c | ||
fsl_pci.h | ||
fsl_pmc.c | ||
fsl_rio.c | ||
fsl_soc.c | ||
fsl_soc.h | ||
grackle.c | ||
i8259.c | ||
indirect_pci.c | ||
ipic.c | ||
ipic.h | ||
Kconfig | ||
Makefile | ||
micropatch.c | ||
mmio_nvram.c | ||
mpc5xxx_clocks.c | ||
mpc8xx_pic.c | ||
mpc8xx_pic.h | ||
mpic.c | ||
mpic.h | ||
mpic_msi.c | ||
mpic_pasemi_msi.c | ||
mpic_u3msi.c | ||
msi_bitmap.c | ||
mv64x60.h | ||
mv64x60_dev.c | ||
mv64x60_pci.c | ||
mv64x60_pic.c | ||
mv64x60_udbg.c | ||
of_rtc.c | ||
pmi.c | ||
ppc4xx_cpm.c | ||
ppc4xx_gpio.c | ||
ppc4xx_msi.c | ||
ppc4xx_pci.c | ||
ppc4xx_pci.h | ||
ppc4xx_soc.c | ||
rtc_cmos_setup.c | ||
scom.c | ||
simple_gpio.c | ||
simple_gpio.h | ||
tsi108_dev.c | ||
tsi108_pci.c | ||
uic.c | ||
xilinx_intc.c | ||
xilinx_pci.c |