[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20230102160856.500584-1-david@redhat.com>
Date: Mon, 2 Jan 2023 17:08:53 +0100
From: David Hildenbrand <david@...hat.com>
To: linux-kernel@...r.kernel.org
Cc: linux-mm@...ck.org, linux-fsdevel@...r.kernel.org,
io-uring@...r.kernel.org, David Hildenbrand <david@...hat.com>,
Andrew Morton <akpm@...ux-foundation.org>,
Arnd Bergmann <arnd@...db.de>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Nicolas Pitre <nico@...xnic.net>, Jens Axboe <axboe@...nel.dk>,
Pavel Begunkov <asml.silence@...il.com>
Subject: [PATCH mm-unstable v1 0/3] mm/nommu: don't use VM_MAYSHARE for MAP_PRIVATE mappings
Trying to reduce the confusion around VM_SHARED and VM_MAYSHARE first
requires !CONFIG_MMU to stop using VM_MAYSHARE for MAP_PRIVATE mappings.
CONFIG_MMU only sets VM_MAYSHARE for MAP_SHARED mappings.
This paves the way for further VM_MAYSHARE and VM_SHARED cleanups: for
example, renaming VM_MAYSHARED to VM_MAP_SHARED to make it cleaner what
is actually means.
Let's first get the weird case out of the way and not use VM_MAYSHARE in
MAP_PRIVATE mappings, using a new VM_MAYOVERLAY flag instead.
I am not a NOMMU expert, but my basic testing with risc64-nommu with
buildroot under QEMU revealed no surprises.
Cc: Andrew Morton <akpm@...ux-foundation.org>
Cc: Arnd Bergmann <arnd@...db.de>
Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
Cc: Nicolas Pitre <nico@...xnic.net>
Cc: Jens Axboe <axboe@...nel.dk>
Cc: Pavel Begunkov <asml.silence@...il.com>
RFC -> v1:
* Rebased, retested
* "drivers/misc/open-dice: don't touch VM_MAYSHARE"
-> Added; as VM_MAYSHARE semantics are now clearer, it makes sense to
include this change in this series.
David Hildenbrand (3):
mm/nommu: factor out check for NOMMU shared mappings into
is_nommu_shared_mapping()
mm/nommu: don't use VM_MAYSHARE for MAP_PRIVATE mappings
drivers/misc/open-dice: don't touch VM_MAYSHARE
drivers/char/mem.c | 2 +-
drivers/misc/open-dice.c | 14 ++++-----
fs/cramfs/inode.c | 2 +-
fs/proc/task_nommu.c | 2 +-
fs/ramfs/file-nommu.c | 2 +-
fs/romfs/mmap-nommu.c | 2 +-
include/linux/mm.h | 20 +++++++++++++
io_uring/io_uring.c | 2 +-
mm/nommu.c | 62 +++++++++++++++++++++++-----------------
9 files changed, 68 insertions(+), 40 deletions(-)
--
2.39.0
Powered by blists - more mailing lists