page_alloc.c (b073d7f8aee4ebf05d10e3380df377b73120cf16) page_alloc.c (3c206509826094e85ead0b056f484db96829248d)
1// SPDX-License-Identifier: GPL-2.0-only
2/*
3 * linux/mm/page_alloc.c
4 *
5 * Manages the free list, the system allocates free pages here.
6 * Note that kmalloc() lives in slab.c
7 *
8 * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds

--- 1795 unchanged lines hidden (view full) ---

1804}
1805#endif /* CONFIG_NUMA */
1806
1807void __init memblock_free_pages(struct page *page, unsigned long pfn,
1808 unsigned int order)
1809{
1810 if (early_page_uninitialised(pfn))
1811 return;
1// SPDX-License-Identifier: GPL-2.0-only
2/*
3 * linux/mm/page_alloc.c
4 *
5 * Manages the free list, the system allocates free pages here.
6 * Note that kmalloc() lives in slab.c
7 *
8 * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds

--- 1795 unchanged lines hidden (view full) ---

1804}
1805#endif /* CONFIG_NUMA */
1806
1807void __init memblock_free_pages(struct page *page, unsigned long pfn,
1808 unsigned int order)
1809{
1810 if (early_page_uninitialised(pfn))
1811 return;
1812 if (!kmsan_memblock_free_pages(page, order)) {
1813 /* KMSAN will take care of these pages. */
1814 return;
1815 }
1812 __free_pages_core(page, order);
1813}
1814
1815/*
1816 * Check that the whole (or subset of) a pageblock given by the interval of
1817 * [start_pfn, end_pfn) is valid and within the same zone, before scanning it
1818 * with the migration of free compaction scanner.
1819 *

--- 7874 unchanged lines hidden ---
1816 __free_pages_core(page, order);
1817}
1818
1819/*
1820 * Check that the whole (or subset of) a pageblock given by the interval of
1821 * [start_pfn, end_pfn) is valid and within the same zone, before scanning it
1822 * with the migration of free compaction scanner.
1823 *

--- 7874 unchanged lines hidden ---