Messages in this thread | | | Date | Tue, 26 Sep 2017 09:47:10 -0500 | From | Reza Arbab <> | Subject | Re: [PATCH] mm/device-public-memory: Enable move_pages() to stat device memory |
| |
On Tue, Sep 26, 2017 at 01:37:07PM +0000, Michal Hocko wrote: >On Fri 22-09-17 15:13:56, Reza Arbab wrote: >> The move_pages() syscall can be used to find the numa node where a page >> currently resides. This is not working for device public memory pages, >> which erroneously report -EFAULT (unmapped or zero page). >> >> Enable by adding a FOLL_DEVICE flag for follow_page(), which >> move_pages() will use. This could be done unconditionally, but adding a >> flag seems like a safer change. > >I do not understand purpose of this patch. What is the numa node of a >device memory?
Well, using hmm_devmem_pages_create() it is added to this node:
nid = dev_to_node(device); if (nid < 0) nid = numa_mem_id();
I understand it's minimally useful information to userspace, but the memory does have a nid and move_pages() is supposed to be able to return what that is. I ran into this using a testcase which tries to verify that user addresses were correctly migrated to coherent device memory.
That said, I'm okay with dropping this if you don't think it's worthwhile.
-- Reza Arbab
| |