Messages in this thread | | | From | (Eric W. Biederman) | Date | Mon, 30 Dec 2019 21:49:03 -0600 | Subject | Re: [PATCH] move_pages.2: not return ENOENT if the page are already on the target nodes |
| |
Yang Shi <yang.shi@linux.alibaba.com> writes:
> On 12/18/19 2:17 AM, Michal Hocko wrote: >> On Tue 17-12-19 23:36:09, John Hubbard wrote: >> [...] >>> diff --git a/man2/move_pages.2 b/man2/move_pages.2 >>> index 2d96468fa..1bf1053f2 100644 >>> --- a/man2/move_pages.2 >>> +++ b/man2/move_pages.2 >>> @@ -191,12 +191,6 @@ was specified or an attempt was made to migrate pages of a kernel thread. >>> .B ENODEV >>> One of the target nodes is not online. >>> .TP >>> -.B 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. >>> -.TP >>> .B EPERM >>> The caller specified >>> .B MPOL_MF_MOVE_ALL >>> >>> ...But I'm not sure if we should change the implementation, instead, so >>> that it *can* return ENOENT. That's the main question to resolve before >>> creating any more patches, I think. >> I would start by dropping any note about ENOENT first. I am not really >> sure there is a reasonable usecase for it but maybe somebody comes up >> with something and only then we should consider it. >> >> Feel free to add >> Acked-by: Michal Hocko <mhocko@suse.com> >> >> ideally with a kernel commit which removed the ENOENT. > > A quick audit doesn't show kernel code or comment notes about ENOENT > wrongly. The status could be set as ENOENT if the page is not present > (follow_page() returns NULL), and man page does match what kernel > does.
Doesn't the function one layer up then consume the ENOENT?
Eric
| |