Re: [PATCH v26 2/5] fs/proc/task_mmu: Implement IOCTL to get and optionally clear info about PTEs

From: Muhammad Usama Anjum
Date: Thu Jul 27 2023 - 07:49:53 EST


On 7/27/23 4:46 PM, Michał Mirosław wrote:
> On Thu, 27 Jul 2023 at 11:37, Muhammad Usama Anjum
> <usama.anjum@xxxxxxxxxxxxx> wrote:
> [...]
>> --- a/include/uapi/linux/fs.h
>> +++ b/include/uapi/linux/fs.h
> [...]
>> +/*
>> + * struct pm_scan_arg - Pagemap ioctl argument
>> + * @size: Size of the structure
>> + * @flags: Flags for the IOCTL
>> + * @start: Starting address of the region
>> + * @end: Ending address of the region
>> + * @walk_end: Ending address of the visited memory is returned
>> + * (This helps if entire range hasn't been visited)
>
> "Address where the scan stopped (written by kernel). walk_end == end
> informs that the scan completed."
I'll update comment.

>
> (To make the userspace life easier, we can copy `end` (only) in case
> of full scan completion, so that the tag is retained.)
Lets be consist and not copy tag from end to walk_end as we'll now know
about tag every time. It should be the responsibility of the user to deal
with it.

>
>> + * @vec: Address of page_region struct array for output
>> + * @vec_len: Length of the page_region struct array
>> + * @max_pages: Optional limit for number of returned pages (0 = disabled)
>> + * @category_inverted: PAGE_IS_* categories which values match if 0 instead of 1
>> + * @category_mask: Skip pages for which any category doesn't match
>> + * @category_anyof_mask: Skip pages for which no category matches
>> + * @return_mask: PAGE_IS_* categories that are to be reported in `page_region`s returned
>> + */

--
BR,
Muhammad Usama Anjum