linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [RFC PATCH v2 0/4] mm/madvise: remove redundant mmap_lock operations from process_madvise()
@ 2025-01-17  1:30 SeongJae Park
  2025-01-17  1:30 ` [RFC PATCH v2 1/4] mm/madvise: split out mmap locking operations for madvise() SeongJae Park
                   ` (5 more replies)
  0 siblings, 6 replies; 31+ messages in thread
From: SeongJae Park @ 2025-01-17  1:30 UTC (permalink / raw)
  Cc: SeongJae Park, Liam R. Howlett, Andrew Morton, David Hildenbrand,
	Lorenzo Stoakes, Shakeel Butt, Vlastimil Babka, linux-kernel,
	linux-mm

process_madvise() calls do_madvise() for each address range.  Then, each
do_madvise() invocation holds and releases same mmap_lock.  Optimize the
redundant lock operations by splitting do_madvise() internal logics
including the mmap_lock operations, and calling the small logics
directly from process_madvise() in a sequence that removes the redundant
locking.

Changes from RFC v1 (20250111004618.1566-1-sj@kernel.org)
- Split out do_madvise() and use those from vector_madvise(), instead of
  adding a flag to do_madvise() (Liam R. Howlett)

SeongJae Park (4):
  mm/madvise: split out mmap locking operations for madvise()
  mm/madvise: split out madvise input validity check
  mm/madvise: split out madvise() behavior execution
  mm/madvise: remove redundant mmap_lock operations from
    process_madvise()

 mm/madvise.c | 150 +++++++++++++++++++++++++++++++++++----------------
 1 file changed, 103 insertions(+), 47 deletions(-)


base-commit: b43ba6938d01ad4487028592109d4116a28b7afa
-- 
2.39.5


^ permalink raw reply	[flat|nested] 31+ messages in thread

end of thread, other threads:[~2025-05-19 18:25 UTC | newest]

Thread overview: 31+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-01-17  1:30 [RFC PATCH v2 0/4] mm/madvise: remove redundant mmap_lock operations from process_madvise() SeongJae Park
2025-01-17  1:30 ` [RFC PATCH v2 1/4] mm/madvise: split out mmap locking operations for madvise() SeongJae Park
2025-01-29 19:18   ` Shakeel Butt
2025-01-31 15:58   ` Lorenzo Stoakes
2025-01-31 17:33   ` Davidlohr Bueso
2025-01-17  1:30 ` [RFC PATCH v2 2/4] mm/madvise: split out madvise input validity check SeongJae Park
2025-01-29 19:18   ` Shakeel Butt
2025-01-31 16:01   ` Lorenzo Stoakes
2025-01-31 19:19   ` Davidlohr Bueso
2025-01-17  1:30 ` [RFC PATCH v2 3/4] mm/madvise: split out madvise() behavior execution SeongJae Park
2025-01-29 19:19   ` Shakeel Butt
2025-01-31 16:10   ` Lorenzo Stoakes
2025-01-17  1:30 ` [RFC PATCH v2 4/4] mm/madvise: remove redundant mmap_lock operations from process_madvise() SeongJae Park
2025-01-29 19:20   ` Shakeel Butt
2025-01-31 16:53   ` Lorenzo Stoakes
2025-01-31 17:31     ` Davidlohr Bueso
2025-01-31 17:47       ` Liam R. Howlett
2025-01-31 17:51         ` Lorenzo Stoakes
2025-01-31 17:58           ` Davidlohr Bueso
2025-02-04 19:53           ` SeongJae Park
2025-02-06  6:28             ` SeongJae Park
2025-05-17 19:28           ` Lorenzo Stoakes
2025-05-19 18:25             ` SeongJae Park
2025-01-31 19:17         ` Shakeel Butt
2025-02-04 18:56     ` SeongJae Park
2025-01-29 19:22 ` [RFC PATCH v2 0/4] " Shakeel Butt
2025-01-29 21:09   ` SeongJae Park
2025-01-31 16:04 ` Liam R. Howlett
2025-01-31 16:30   ` SeongJae Park
2025-01-31 16:55   ` Lorenzo Stoakes
2025-01-31 17:53     ` Lorenzo Stoakes

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox