[lkml]   [2020]   [Sep]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Subject[PATCH v5] mm: cma: indefinitely retry allocations in cma_alloc
V1: Introduces a retry loop that attempts a CMA allocation a finite
number of times before giving up:

V2: Introduces an indefinite retry for CMA allocations. David Hildenbrand
raised a page pinning example which precludes doing this infite-retrying
for all CMA users:

V3: Re-introduce a GFP mask argument for cma_alloc(), that can take in
__GFP_NOFAIL as an argument to indicate that a CMA allocation should be
retried indefinitely. This lets callers of cma_alloc() decide if they want
to perform indefinite retires. Also introduces a config option for
controlling the duration of the sleep between retries:

V4: In response to comments by Minchan Kim, we make the sleep interruptable
and remove a defconfig option controlling how long the sleep lasts for (it
is now a fixed 100 ms):

V5: Add missing fatal_signal_pending() check

Chris Goldsworthy (1):
mm: cma: indefinitely retry allocations in cma_alloc

arch/powerpc/kvm/book3s_hv_builtin.c | 2 +-
drivers/dma-buf/heaps/cma_heap.c | 2 +-
drivers/s390/char/vmcp.c | 2 +-
drivers/staging/android/ion/ion_cma_heap.c | 2 +-
include/linux/cma.h | 2 +-
kernel/dma/contiguous.c | 4 +--
mm/cma.c | 39 +++++++++++++++++++++++++-----
mm/cma_debug.c | 2 +-
mm/hugetlb.c | 4 +--
9 files changed, 43 insertions(+), 16 deletions(-)

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

 \ /
  Last update: 2020-09-29 01:36    [W:0.023 / U:0.272 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site