[RFC 0/7] vmallloc and non-blocking GFPs

Uladzislau Rezki (Sony) posted 7 patches 3 months ago
include/linux/kasan.h    |  6 +--
include/linux/sched/mm.h |  7 ++-
lib/test_vmalloc.c       | 27 ++++++++++++
mm/kasan/shadow.c        | 22 +++++++---
mm/vmalloc.c             | 93 +++++++++++++++++++++++++++++++++-------
5 files changed, 129 insertions(+), 26 deletions(-)
[RFC 0/7] vmallloc and non-blocking GFPs
Posted by Uladzislau Rezki (Sony) 3 months ago
This is a small series tends to support non-blocking GFP flags
such as GFP_ATOMIC or GFP_NOWAIT. This is a draft version and
it should be improved or changed.

For example there are still hard-coded GFP flags in the:
    kmsan_vmap_pages_range_noflush(addr, end, prot, pages, page_shift);

if the kernel is build with KMSAN support. There are other parts which
should be fixed. But i tested this series with a fresh non-block-alloc
test together with CONFIG_DEBUG_ATOMIC_SLEEP=y to track sleep in atomic
issues.

Based on:

VERSION = 6
PATCHLEVEL = 16
SUBLEVEL = 0
EXTRAVERSION = -rc1

Uladzislau Rezki (Sony) (7):
  lib/test_vmalloc: Add non-block-alloc-test case
  mm/vmalloc: Support non-blocking GFP flags in alloc_vmap_area()
  mm/vmalloc: Avoid cond_resched() when blocking is not permitted
  mm/kasan, mm/vmalloc: Respect GFP flags in kasan_populate_vmalloc()
  mm/vmalloc: Defer freeing partly initialized vm_struct
  mm/vmalloc: Support non-blocking GFP flags in __vmalloc_area_node()
  mm: Drop __GFP_DIRECT_RECLAIM flag if PF_MEMALLOC is set

 include/linux/kasan.h    |  6 +--
 include/linux/sched/mm.h |  7 ++-
 lib/test_vmalloc.c       | 27 ++++++++++++
 mm/kasan/shadow.c        | 22 +++++++---
 mm/vmalloc.c             | 93 +++++++++++++++++++++++++++++++++-------
 5 files changed, 129 insertions(+), 26 deletions(-)

-- 
2.39.5