Merge branch 'akpm' (patches from Andrew)
Merge first patchbomb from Andrew Morton: - arch/sh updates - ocfs2 updates - kernel/watchdog feature - about half of mm/ * emailed patches from Andrew Morton <akpm@linux-foundation.org>: (122 commits) Documentation: update arch list in the 'memtest' entry Kconfig: memtest: update number of test patterns up to 17 arm: add support for memtest arm64: add support for memtest memtest: use phys_addr_t for physical addresses mm: move memtest under mm mm, hugetlb: abort __get_user_pages if current has been oom killed mm, mempool: do not allow atomic resizing memcg: print cgroup information when system panics due to panic_on_oom mm: numa: remove migrate_ratelimited mm: fold arch_randomize_brk into ARCH_HAS_ELF_RANDOMIZE mm: split ET_DYN ASLR from mmap ASLR s390: redefine randomize_et_dyn for ELF_ET_DYN_BASE mm: expose arch_mmap_rnd when available s390: standardize mmap_rnd() usage powerpc: standardize mmap_rnd() usage mips: extract logic for mmap_rnd() arm64: standardize mmap_rnd() usage x86: standardize mmap_rnd() usage arm: factor out mmap ASLR into mmap_rnd ...
This commit is contained in:
@@ -993,7 +993,7 @@ static struct unwinder dwarf_unwinder = {
|
||||
.rating = 150,
|
||||
};
|
||||
|
||||
static void dwarf_unwinder_cleanup(void)
|
||||
static void __init dwarf_unwinder_cleanup(void)
|
||||
{
|
||||
struct dwarf_fde *fde, *next_fde;
|
||||
struct dwarf_cie *cie, *next_cie;
|
||||
@@ -1009,6 +1009,10 @@ static void dwarf_unwinder_cleanup(void)
|
||||
rbtree_postorder_for_each_entry_safe(cie, next_cie, &cie_root, node)
|
||||
kfree(cie);
|
||||
|
||||
if (dwarf_reg_pool)
|
||||
mempool_destroy(dwarf_reg_pool);
|
||||
if (dwarf_frame_pool)
|
||||
mempool_destroy(dwarf_frame_pool);
|
||||
kmem_cache_destroy(dwarf_reg_cachep);
|
||||
kmem_cache_destroy(dwarf_frame_cachep);
|
||||
}
|
||||
@@ -1176,17 +1180,13 @@ static int __init dwarf_unwinder_init(void)
|
||||
sizeof(struct dwarf_reg), 0,
|
||||
SLAB_PANIC | SLAB_HWCACHE_ALIGN | SLAB_NOTRACK, NULL);
|
||||
|
||||
dwarf_frame_pool = mempool_create(DWARF_FRAME_MIN_REQ,
|
||||
mempool_alloc_slab,
|
||||
mempool_free_slab,
|
||||
dwarf_frame_cachep);
|
||||
dwarf_frame_pool = mempool_create_slab_pool(DWARF_FRAME_MIN_REQ,
|
||||
dwarf_frame_cachep);
|
||||
if (!dwarf_frame_pool)
|
||||
goto out;
|
||||
|
||||
dwarf_reg_pool = mempool_create(DWARF_REG_MIN_REQ,
|
||||
mempool_alloc_slab,
|
||||
mempool_free_slab,
|
||||
dwarf_reg_cachep);
|
||||
dwarf_reg_pool = mempool_create_slab_pool(DWARF_REG_MIN_REQ,
|
||||
dwarf_reg_cachep);
|
||||
if (!dwarf_reg_pool)
|
||||
goto out;
|
||||
|
||||
|
Reference in New Issue
Block a user