From: Chris Metcalf Date: Wed, 7 Aug 2013 19:42:34 +0000 (-0400) Subject: tile: avoid struct vm_struct leak X-Git-Tag: v3.12-rc1~120^2~42 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=fad052dc4be7b1d9e7ff40ccd8ba2b8216823b51;p=platform%2Fkernel%2Flinux-exynos.git tile: avoid struct vm_struct leak If ioreamp_prot() fails in ioremap_page_range() due to kernel memory exhaustion, we previously would leak a struct vm_struct. Signed-off-by: Chris Metcalf --- diff --git a/arch/tile/mm/pgtable.c b/arch/tile/mm/pgtable.c index dfd63ce..2bd572b 100644 --- a/arch/tile/mm/pgtable.c +++ b/arch/tile/mm/pgtable.c @@ -568,7 +568,7 @@ void __iomem *ioremap_prot(resource_size_t phys_addr, unsigned long size, addr = area->addr; if (ioremap_page_range((unsigned long)addr, (unsigned long)addr + size, phys_addr, pgprot)) { - remove_vm_area((void *)(PAGE_MASK & (unsigned long) addr)); + free_vm_area(area); return NULL; } return (__force void __iomem *) (offset + (char *)addr);