[PATCH RESEND v2 5/6] mm/page_alloc: forward the gfp flags from alloc_contig_range() to post_alloc_hook()
Oscar Salvador
osalvador at suse.de
Wed Dec 4 20:03:25 AEDT 2024
On Tue, Dec 03, 2024 at 10:47:31AM +0100, David Hildenbrand wrote:
> In the __GFP_COMP case, we already pass the gfp_flags to
> prep_new_page()->post_alloc_hook(). However, in the !__GFP_COMP case, we
> essentially pass only hardcoded __GFP_MOVABLE to post_alloc_hook(),
> preventing some action modifiers from being effective..
>
> Let's pass our now properly adjusted gfp flags there as well.
>
> This way, we can now support __GFP_ZERO for alloc_contig_*().
>
> As a side effect, we now also support __GFP_SKIP_ZERO and__GFP_ZEROTAGS;
> but we'll keep the more special stuff (KASAN, NOLOCKDEP) disabled for
> now.
>
> It's worth noting that with __GFP_ZERO, we might unnecessarily zero pages
> when we have to release part of our range using free_contig_range() again.
> This can be optimized in the future, if ever required; the caller we'll
> be converting (powernv/memtrace) next won't trigger this.
>
> Signed-off-by: David Hildenbrand <david at redhat.com>
Reviewed-by: Oscar Salvador <osalvador at suse.de>
--
Oscar Salvador
SUSE Labs
More information about the Linuxppc-dev
mailing list