It's been five years now that KM_* kmap flags have been removed and that we can call clear_highpage from any context. So we simplify prep_zero_pages accordingly and rename it in the process.
Signed-off-by: Anisse Astier <ani...@astier.eu> --- mm/page_alloc.c | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/mm/page_alloc.c b/mm/page_alloc.c index ebffa0e..05fcec9 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c @@ -380,16 +380,10 @@ void prep_compound_page(struct page *page, unsigned long order) } } -static inline void prep_zero_page(struct page *page, unsigned int order, - gfp_t gfp_flags) +static inline void zero_pages(struct page *page, unsigned int order) { int i; - /* - * clear_highpage() will use KM_USER0, so it's a bug to use __GFP_ZERO - * and __GFP_HIGHMEM from hard or soft interrupt context. - */ - VM_BUG_ON((gfp_flags & __GFP_HIGHMEM) && in_interrupt()); for (i = 0; i < (1 << order); i++) clear_highpage(page + i); } @@ -975,7 +969,7 @@ static int prep_new_page(struct page *page, unsigned int order, gfp_t gfp_flags, kasan_alloc_pages(page, order); if (gfp_flags & __GFP_ZERO) - prep_zero_page(page, order, gfp_flags); + zero_pages(page, order); if (order && (gfp_flags & __GFP_COMP)) prep_compound_page(page, order); -- 1.9.3 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/