|
|
Log in / Subscribe / Register

Increasing CMA Utilization with a GFP Flag

From:  Chris Goldsworthy <cgoldswo-AT-codeaurora.org>
To:  Andrew Morton <akpm-AT-linux-foundation.org>, Minchan Kim <minchan-AT-kernel.org>, Nitin Gupta <ngupta-AT-vflare.org>, Sergey Senozhatsky <sergey.senozhatsky.work-AT-gmail.com>
Subject:  [PATCH 0/2] Increasing CMA Utilization with a GFP Flag
Date:  Mon, 02 Nov 2020 06:39:20 -0800
Message-ID:  <cover.1604282969.git.cgoldswo@codeaurora.org>
Cc:  linux-mm-AT-kvack.org, linux-kernel-AT-vger.kernel.org, Chris Goldsworthy <cgoldswo-AT-codeaurora.org>
Archive-link:  Article

The current approach to increasing CMA utilization introduced in
commit 16867664936e ("mm,page_alloc,cma: conditionally prefer cma
pageblocks for movable allocations") increases CMA utilization by
redirecting MIGRATE_MOVABLE allocations to a CMA region, when
greater than half of the free pages in a given zone are CMA pages.
The issue in this approach is that allocations with type
MIGRATE_MOVABLE can still succumb to pinning. To get around
this, one approach is to re-direct allocations to the CMA areas, that
are known not to be victims of pinning.

To this end, this series brings in __GFP_CMA, which we mark with
allocations that we know are safe to be redirected to a CMA area.

Heesub Shin (1):
  cma: redirect page allocation to CMA

Vinayak Menon (1):
  zram: allow zram to allocate CMA pages

 drivers/block/zram/zram_drv.c |  5 +--
 include/linux/gfp.h           | 15 ++++++++
 include/linux/highmem.h       |  4 ++-
 include/linux/mmzone.h        |  4 +++
 mm/page_alloc.c               | 83 +++++++++++++++++++++++++++----------------
 mm/zsmalloc.c                 |  4 +--
 6 files changed, 79 insertions(+), 36 deletions(-)

-- 
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project



Copyright © 2020, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds