Lines Matching refs:memmap
621 static void __kfree_section_memmap(struct page *memmap, unsigned long nr_pages) in __kfree_section_memmap() argument
625 static void free_map_bootmem(struct page *memmap, unsigned long nr_pages) in free_map_bootmem() argument
657 static void __kfree_section_memmap(struct page *memmap, unsigned long nr_pages) in __kfree_section_memmap() argument
659 if (is_vmalloc_addr(memmap)) in __kfree_section_memmap()
660 vfree(memmap); in __kfree_section_memmap()
662 free_pages((unsigned long)memmap, in __kfree_section_memmap()
666 static void free_map_bootmem(struct page *memmap, unsigned long nr_pages) in free_map_bootmem() argument
670 struct page *page = virt_to_page(memmap); in free_map_bootmem()
694 static void free_section_usemap(struct page *memmap, unsigned long *usemap) in free_section_usemap() argument
708 if (memmap) in free_section_usemap()
709 __kfree_section_memmap(memmap, PAGES_PER_SECTION); in free_section_usemap()
718 if (memmap) { in free_section_usemap()
722 free_map_bootmem(memmap, nr_pages); in free_section_usemap()
737 struct page *memmap; in sparse_add_one_section() local
749 memmap = kmalloc_section_memmap(section_nr, pgdat->node_id, nr_pages); in sparse_add_one_section()
750 if (!memmap) in sparse_add_one_section()
754 __kfree_section_memmap(memmap, nr_pages); in sparse_add_one_section()
768 ret = sparse_init_one_section(ms, section_nr, memmap, usemap); in sparse_add_one_section()
774 __kfree_section_memmap(memmap, nr_pages); in sparse_add_one_section()
781 struct page *memmap = NULL; in sparse_remove_one_section() local
786 memmap = sparse_decode_mem_map(ms->section_mem_map, in sparse_remove_one_section()
792 free_section_usemap(memmap, usemap); in sparse_remove_one_section()