Tiberiu A Georgescu <tiberiu.georgescu@xxxxxxxxxxx> writes: > This patch follows the discussions on previous documentation patch threads > [1][2]. It presents the exception case of shared memory management from the > pagemap's point of view. It briefly describes what is missing, why it is > missing and alternatives to the pagemap for page info retrieval in user > space. > > In short, the kernel does not keep track of PTEs for swapped out shared > pages within the processes that references them. Thus, the proc/pid/pagemap > tool cannot print the swap destination of the shared memory pages, instead > setting the pagemap entry to zero for both non-allocated and swapped out > pages. This can create confusion for users who need information on swapped > out pages. > > The reasons why maintaining the PTEs of all swapped out shared pages among > all processes while maintaining similar performance is not a trivial task, > or a desirable change, have been discussed extensively [1][3][4][5]. There > are also arguments for why this arguably missing information should > eventually be exposed to the user in either a future pagemap patch, or by > an alternative tool. > > [1]: https://marc.info/?m=162878395426774 > [2]: https://lore.kernel.org/lkml/20210920164931.175411-1-tiberiu.georgescu@xxxxxxxxxxx/ > [3]: https://lore.kernel.org/lkml/20210730160826.63785-1-tiberiu.georgescu@xxxxxxxxxxx/ > [4]: https://lore.kernel.org/lkml/20210807032521.7591-1-peterx@xxxxxxxxxx/ > [5]: https://lore.kernel.org/lkml/20210715201651.212134-1-peterx@xxxxxxxxxx/ > > Tiberiu A Georgescu (1): > Documentation: update pagemap with shmem exceptions > > Documentation/admin-guide/mm/pagemap.rst | 22 ++++++++++++++++++++++ > 1 file changed, 22 insertions(+) Applied, thanks. jon