On Fri 04-05-18 09:18:11, Prakash Sangappa wrote: > > > On 5/4/18 4:12 AM, Michal Hocko wrote: > > On Thu 03-05-18 15:39:49, prakash.sangappa wrote: > > > > > > On 05/03/2018 11:03 AM, Christopher Lameter wrote: > > > > On Tue, 1 May 2018, Prakash Sangappa wrote: > > > > > > > > > For analysis purpose it is useful to have numa node information > > > > > corresponding mapped address ranges of the process. Currently > > > > > /proc/<pid>/numa_maps provides list of numa nodes from where pages are > > > > > allocated per VMA of the process. This is not useful if an user needs to > > > > > determine which numa node the mapped pages are allocated from for a > > > > > particular address range. It would have helped if the numa node information > > > > > presented in /proc/<pid>/numa_maps was broken down by VA ranges showing the > > > > > exact numa node from where the pages have been allocated. > > > > Cant you write a small script that scans the information in numa_maps and > > > > then displays the total pages per NUMA node and then a list of which > > > > ranges have how many pages on a particular node? > > > Don't think we can determine which numa node a given user process > > > address range has pages from, based on the existing 'numa_maps' file. > > yes we have. See move_pages... > > Sure using move_pages, not based on just 'numa_maps'. > > > > > > reading this file will not be restricted(i.e requiring CAP_SYS_ADMIN). > > > > So a prime motivator here is security restricted access to numa_maps? > > > No it is the opposite. A regular user should be able to determine > > > numa node information. > > Well, that breaks the layout randomization, doesn't it? > > Exposing numa node information itself should not break randomization right? I thought you planned to expose address ranges for each numa node as well. /me confused. > It would be upto the application. In case of randomization, the application > could generate address range traces of interest for debugging and then > using numa node information one could determine where the memory is laid > out for analysis. ... even more confused -- Michal Hocko SUSE Labs