Re: [PATCH v2 1/4] mm/page_alloc: fix non cma alloc context

From: Andrew Morton
Date: Mon Jul 20 2020 - 19:23:16 EST


On Mon, 20 Jul 2020 13:56:15 +0900 js1304@xxxxxxxxx wrote:

> Currently, preventing cma area in page allocation is implemented by using
> current_gfp_context(). However, there are two problems of this
> implementation.
>
> First, this doesn't work for allocation fastpath. In the fastpath,
> original gfp_mask is used since current_gfp_context() is introduced in
> order to control reclaim and it is on slowpath.
> Second, clearing __GFP_MOVABLE has a side effect to exclude the memory
> on the ZONE_MOVABLE for allocation target.
>
> To fix these problems, this patch changes the implementation to exclude
> cma area in page allocation. Main point of this change is using the
> alloc_flags. alloc_flags is mainly used to control allocation so it fits
> for excluding cma area in allocation.
>
> Fixes: d7fefcc8de91 (mm/cma: add PF flag to force non cma alloc)
> Cc: <stable@xxxxxxxxxxxxxxx>

This patch is against linux-next (or -mm) and has a lot of issues
applying to mainline. If we indeed wish to backport it to -stable, it
should be against mainline, please.