lkml.org 
[lkml]   [2022]   [Oct]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH v3 0/4] Implement IOCTL to get and clear soft dirty PTE
From
On 10/18/22 3:48 PM, Greg KH wrote:
> On Tue, Oct 18, 2022 at 03:36:24PM +0500, Muhammad Usama Anjum wrote:
>> /**
>> * struct pagemap_sd_args - Soft-dirty IOCTL argument
>> * @start: Starting address
>> * @len: Length of the region
>> * @vec: Output page_region struct array
>> * @vec_len: Length of the page_region struct array
>> * @max_out_page: Optional max output pages (It must be less than vec_len if
>> specified)
>> * @flags: Special flags for the IOCTL
>> * @rmask: Special flags for the IOCTL
>> * @amask: Special flags for the IOCTL
>> * @emask: Special flags for the IOCTL
>
> What do you mean exactly by "special flags"?
Sorry typo in the comments above. Optional flag can be specified in the
flag. At the moment, there is only one flag(PAGEMAP_NO_REUSED_REGIONS).

/**
* struct pagemap_sd_args - Soft-dirty IOCTL argument
* @start: Starting address
* @len: Length of the region
* @vec: Output page_region struct array
* @vec_len: Length of the page_region struct array
* @max_out_page: Optional max output pages (It must be less than
vec_len if specified)
* @flags: Special flags for the IOCTL
* @rmask: Required mask - All of these bits have to be set
* @amask: Any mask - Any of these bits are set
* @emask: Exclude mask - None of these bits are set
* @rmask: Bits that have to be reported to the user in page_region
*/
struct pagemap_scan_args {
__u64 __user start;
__u64 len;
__u64 __user vec;
__u64 vec_len;
__u32 max_out_page;
__u32 flags;
__u32 rmask;
__u32 amask;
__u32 emask;
__u32 rmask;
};

>
>> * @__reserved: Reserved member to preserve data alignment. Must be 0.
>> */
>> struct pagemap_sd_args {
>> __u64 __user start;
>> __u64 len;
>> __u64 __user vec; // page_region
>
> __user is a marking for a pointer, not a u64, right? Now the fact that
> you treat it like a pointer later in the kernel is different, but that
> shouldn't be on the uapi header file. You can put it in the kerneldoc,
> which you did not do.
I'll update.

>
> thanks,
>
> greg k-h

\
 
 \ /
  Last update: 2022-10-18 14:31    [W:0.090 / U:0.924 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site