On Dec 5, 2019, at 1:54 PM, Yang Shi yang.shi@linux.alibaba.com wrote:
This is because the status is not set if the page is already on the target node, but move_pages() should return valid status as long as it succeeds. The valid status may be errno or node id.
We can't simply initialize status array to zero since the pages may be not on node 0. Fix it by updating status with node id which the page is already on.
This does not look correct either.
“ENOENT No pages were found that require moving. All pages are either already on the target node, not present, had an invalid address or could not be moved because they were mapped by multiple processes.”
move_pages() should return -ENOENT instead.