ping: re: [PATCH 1/1] kernel code that do not handle NULL return ofkmem_cache_zalloc

From: Zhouyi Zhou
Date: Sun Dec 01 2013 - 22:15:47 EST


ping
>ÂIÂdoÂaÂgrepÂforÂkmem_cache_zallocÂandÂkmem_cache_alloc
>ÂinÂkernelÂtree,ÂandÂfindÂsomeÂcodeÂdoÂnotÂhandleÂNULL
>ÂreturnÂofÂkmem_cache_zallocÂcorrectly
>Â
>Â
>ÂSigned-off-by:ÂZhouyiÂZhouÂ<yizhouzhou@xxxxxxxxx>
>Â---
>ÂÂarch/powerpc/kvm/book3s_32_mmu_host.cÂ|ÂÂÂÂ5Â+++++
>ÂÂdrivers/iommu/omap-iommu.cÂÂÂÂÂÂÂÂÂÂÂÂ|ÂÂÂÂ3Â++-
>ÂÂfs/jffs2/malloc.cÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ|ÂÂÂÂ4Â++++
>ÂÂ3ÂfilesÂchanged,Â11Âinsertions(+),Â1Âdeletion(-)
>Â
>ÂdiffÂ--gitÂa/arch/powerpc/kvm/book3s_32_mmu_host.cÂb/arch/powerpc/kvm/book3s_32_mmu_host.c
>ÂindexÂ3a0abd2..5fac89dÂ100644
>Â---Âa/arch/powerpc/kvm/book3s_32_mmu_host.c
>Â+++Âb/arch/powerpc/kvm/book3s_32_mmu_host.c
>Â@@Â-243,6Â+243,11Â@@Ânext_pteg:
>ÂÂ /*ÂNowÂtellÂourÂShadowÂPTEÂcodeÂaboutÂtheÂnewÂpageÂ*/
>ÂÂ
>ÂÂ pteÂ=Âkvmppc_mmu_hpte_cache_next(vcpu);
>Â+ ifÂ(!pte)Â{
>Â+ kvm_release_pfn_clean(hpaddrÂ>>ÂPAGE_SHIFT);
>Â+ rÂ=Â-EAGAIN;
>Â+ gotoÂout;
>Â+ }
>ÂÂ
>ÂÂ dprintk_mmu("KVM:Â%c%cÂMapÂ0x%llx:Â[%lx]Â0x%llxÂ(0x%llx)Â->Â%lx\n",
>ÂÂ ÂÂÂÂorig_pte->may_writeÂ?Â'w'Â:Â'-',
>ÂdiffÂ--gitÂa/drivers/iommu/omap-iommu.cÂb/drivers/iommu/omap-iommu.c
>ÂindexÂbcd78a7..5155714Â100644
>Â---Âa/drivers/iommu/omap-iommu.c
>Â+++Âb/drivers/iommu/omap-iommu.c
>Â@@Â-551,7Â+551,8Â@@ÂstaticÂu32Â*iopte_alloc(structÂomap_iommuÂ*obj,Âu32Â*iopgd,Âu32Âda)
>ÂÂ dev_vdbg(obj->dev,Â"%s:ÂaÂnewÂpte:%p\n",Â__func__,Âiopte);
>ÂÂ }ÂelseÂ{
>ÂÂ /*ÂWeÂraced,ÂfreeÂtheÂreduniovantÂtableÂ*/
>Â- iopte_free(iopte);
>Â+ ifÂ(iopte)
>Â+ iopte_free(iopte);
>ÂÂ }
>ÂÂ
>ÂÂpte_ready:
>ÂdiffÂ--gitÂa/fs/jffs2/malloc.cÂb/fs/jffs2/malloc.c
>ÂindexÂ4f47aa2..58e2336Â100644
>Â---Âa/fs/jffs2/malloc.c
>Â+++Âb/fs/jffs2/malloc.c
>Â@@Â-287,6Â+287,8Â@@ÂstructÂjffs2_xattr_datumÂ*jffs2_alloc_xattr_datum(void)
>ÂÂ{
>ÂÂ structÂjffs2_xattr_datumÂ*xd;
>ÂÂ xdÂ=Âkmem_cache_zalloc(xattr_datum_cache,ÂGFP_KERNEL);
>Â+ ifÂ(!xd)
>Â+ returnÂNULL;
>ÂÂ dbg_memalloc("%p\n",Âxd);
>ÂÂ
>ÂÂ xd->classÂ=ÂRAWNODE_CLASS_XATTR_DATUM;
>Â@@Â-305,6Â+307,8Â@@ÂstructÂjffs2_xattr_refÂ*jffs2_alloc_xattr_ref(void)
>ÂÂ{
>ÂÂ structÂjffs2_xattr_refÂ*ref;
>ÂÂ refÂ=Âkmem_cache_zalloc(xattr_ref_cache,ÂGFP_KERNEL);
>Â+ ifÂ(!ref)
>Â+ returnÂNULL;
>ÂÂ dbg_memalloc("%p\n",Âref);
>ÂÂ
>ÂÂ ref->classÂ=ÂRAWNODE_CLASS_XATTR_REF;
>Â--Â
>Â1.7.10.4
>Â




--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/