[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <732359e4-8b8b-4925-8d66-2531e7a22b73@gmail.com>
Date: Fri, 5 Sep 2025 16:25:14 +0200
From: Andrey Ryabinin <ryabinin.a.a@...il.com>
To: Uladzislau Rezki <urezki@...il.com>,
Andrew Morton <akpm@...ux-foundation.org>
Cc: linux-mm@...ck.org, Michal Hocko <mhocko@...nel.org>,
Baoquan He <bhe@...hat.com>, LKML <linux-kernel@...r.kernel.org>,
stable@...r.kernel.org
Subject: Re: [PATCH] mm/vmalloc, mm/kasan: respect gfp mask in
kasan_populate_vmalloc()
On 9/1/25 12:00 PM, Uladzislau Rezki wrote:
> On Sun, Aug 31, 2025 at 12:24:10PM -0700, Andrew Morton wrote:
>> On Sun, 31 Aug 2025 14:10:58 +0200 "Uladzislau Rezki (Sony)" <urezki@...il.com> wrote:
>>
>>> kasan_populate_vmalloc() and its helpers ignore the caller's gfp_mask
>>> and always allocate memory using the hardcoded GFP_KERNEL flag. This
>>> makes them inconsistent with vmalloc(), which was recently extended to
>>> support GFP_NOFS and GFP_NOIO allocations.
>>>
>>> Page table allocations performed during shadow population also ignore
>>> the external gfp_mask. To preserve the intended semantics of GFP_NOFS
>>> and GFP_NOIO, wrap the apply_to_page_range() calls into the appropriate
>>> memalloc scope.
>>>
>>> This patch:
>>> - Extends kasan_populate_vmalloc() and helpers to take gfp_mask;
>>> - Passes gfp_mask down to alloc_pages_bulk() and __get_free_page();
>>> - Enforces GFP_NOFS/NOIO semantics with memalloc_*_save()/restore()
>>> around apply_to_page_range();
>>> - Updates vmalloc.c and percpu allocator call sites accordingly.
>>>
>>> To: Andrey Ryabinin <ryabinin.a.a@...il.com>
>>> Cc: <stable@...r.kernel.org>
>>> Fixes: 451769ebb7e7 ("mm/vmalloc: alloc GFP_NO{FS,IO} for vmalloc")
>>> Signed-off-by: Uladzislau Rezki (Sony) <urezki@...il.com>
>>
>> Why cc:stable?
>>
>> To justify this we'll need a description of the userspace visible
>> effects of the bug please. We should always provide this information
>> when fixing something. Or when adding something. Basically, all the
>> time ;)
>>
> Yes, i am not aware about any report. I was thinking more about that
> "mm/vmalloc: alloc GFP_NO{FS,IO} for vmalloc" was incomplete and thus
> is a good candidate for stable.
>
> We can drop it for the stable until there are some reports from people.
> If there are :)
>
xfs calls vmalloc with GFP_NOFS, so this bug could lead to deadlock and worth
the stable tag.
There was a report here https://lkml.kernel.org/r/686ea951.050a0220.385921.0016.GAE@google.com
> Thanks!
>
> --
> Uladzislau Rezki
>
Powered by blists - more mailing lists