The patch titled From: Shakeel Butt <shakeelb@xxxxxxxxxx> has been removed from the -mm tree. Its filename was percpu-plumb-gfp-flag-to-pcpu_get_pages.patch This patch was dropped because it was withdrawn ------------------------------------------------------ Subject: percpu: plumb gfp flag to pcpu_get_pages From: Shakeel Butt <shakeelb@xxxxxxxxxx> __alloc_percpu_gfp() can be called from atomic context, so, make pcpu_get_pages use the gfp provided to the higher layer. Link: http://lkml.kernel.org/r/20181229013147.211079-1-shakeelb@xxxxxxxxxx Signed-off-by: Shakeel Butt <shakeelb@xxxxxxxxxx> Reviewed-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> Cc: Tejun Heo <tj@xxxxxxxxxx> Cc: Dennis Zhou <dennis@xxxxxxxxxx> Cc: Christoph Lameter <cl@xxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- --- a/mm/percpu-vm.c~percpu-plumb-gfp-flag-to-pcpu_get_pages +++ a/mm/percpu-vm.c @@ -21,6 +21,7 @@ static struct page *pcpu_chunk_page(stru /** * pcpu_get_pages - get temp pages array + * @gfp: allocation flags passed to the underlying allocator * * Returns pointer to array of pointers to struct page which can be indexed * with pcpu_page_idx(). Note that there is only one array and accesses @@ -29,7 +30,7 @@ static struct page *pcpu_chunk_page(stru * RETURNS: * Pointer to temp pages array on success. */ -static struct page **pcpu_get_pages(void) +static struct page **pcpu_get_pages(gfp_t gfp) { static struct page **pages; size_t pages_size = pcpu_nr_units * pcpu_unit_pages * sizeof(pages[0]); @@ -37,7 +38,7 @@ static struct page **pcpu_get_pages(void lockdep_assert_held(&pcpu_alloc_mutex); if (!pages) - pages = pcpu_mem_zalloc(pages_size, GFP_KERNEL); + pages = pcpu_mem_zalloc(pages_size, gfp); return pages; } @@ -278,7 +279,7 @@ static int pcpu_populate_chunk(struct pc { struct page **pages; - pages = pcpu_get_pages(); + pages = pcpu_get_pages(gfp); if (!pages) return -ENOMEM; @@ -316,7 +317,7 @@ static void pcpu_depopulate_chunk(struct * successful population attempt so the temp pages array must * be available now. */ - pages = pcpu_get_pages(); + pages = pcpu_get_pages(GFP_KERNEL); BUG_ON(!pages); /* unmap and free */ _ Patches currently in -mm which might be from shakeelb@xxxxxxxxxx are