On 1/14/2026 10:15 AM, [email protected] wrote:
> From: Michael Kelley <[email protected]>
> 
> access_ok() expects its first argument to have the __user attribute
> since it is checking access to user space. Current code passes an
> argument that lacks that attribute, resulting in 'sparse' flagging
> the incorrect usage. However, the compiler doesn't generate code
> based on the attribute, so there's no actual bug.
> 
> In the interest of general correctness and to avoid noise from sparse,
> add the __user attribute. No functional change.
> 
> Reported-by: kernel test robot <[email protected]>
> Closes: 
> https://lore.kernel.org/oe-kbuild-all/[email protected]/
> Signed-off-by: Michael Kelley <[email protected]>
> ---
>  drivers/hv/mshv_root_main.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/hv/mshv_root_main.c b/drivers/hv/mshv_root_main.c
> index eff1b21461dc..5673af9fe101 100644
> --- a/drivers/hv/mshv_root_main.c
> +++ b/drivers/hv/mshv_root_main.c
> @@ -1280,7 +1280,7 @@ mshv_map_user_memory(struct mshv_partition *partition,
>       long ret;
>  
>       if (mem.flags & BIT(MSHV_SET_MEM_BIT_UNMAP) ||
> -         !access_ok((const void *)mem.userspace_addr, mem.size))
> +         !access_ok((const void __user *)mem.userspace_addr, mem.size))
>               return -EINVAL;
>  
>       mmap_read_lock(current->mm);

Reviewed-by: Nuno Das Neves <[email protected]>

Reply via email to