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." (To make the userspace life easier, we can copy `end` (only) in case of full scan completion, so that the tag is retained.) > + * @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 > + */