]> www.infradead.org Git - users/willy/pagecache.git/commit
proc: nommu: fix empty /proc/<pid>/maps
authorBen Wolsieffer <ben.wolsieffer@hefring.com>
Fri, 15 Sep 2023 16:00:56 +0000 (12:00 -0400)
committerAndrew Morton <akpm@linux-foundation.org>
Tue, 19 Sep 2023 20:21:34 +0000 (13:21 -0700)
commitfe4419801617514765974f3e796269bc512ad146
tree1f66cae783c06498ef7ff72c8b9fb3a143b604cb
parentc8be03806738c86521dbf1e0503bc90855fb99a3
proc: nommu: fix empty /proc/<pid>/maps

On no-MMU, /proc/<pid>/maps reads as an empty file.  This happens because
find_vma(mm, 0) always returns NULL (assuming no vma actually contains the
zero address, which is normally the case).

To fix this bug and improve the maintainability in the future, this patch
makes the no-MMU implementation as similar as possible to the MMU
implementation.

The only remaining differences are the lack of hold/release_task_mempolicy
and the extra code to shoehorn the gate vma into the iterator.

This has been tested on top of 6.5.3 on an STM32F746.

Link: https://lkml.kernel.org/r/20230915160055.971059-2-ben.wolsieffer@hefring.com
Fixes: 0c563f148043 ("proc: remove VMA rbtree use from nommu")
Signed-off-by: Ben Wolsieffer <ben.wolsieffer@hefring.com>
Cc: Davidlohr Bueso <dave@stgolabs.net>
Cc: Giulio Benetti <giulio.benetti@benettiengineering.com>
Cc: Liam R. Howlett <Liam.Howlett@oracle.com>
Cc: Matthew Wilcox (Oracle) <willy@infradead.org>
Cc: Oleg Nesterov <oleg@redhat.com>
Cc: Vlastimil Babka <vbabka@suse.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
fs/proc/internal.h
fs/proc/task_nommu.c