lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Wed, 26 Oct 2016 11:07:46 +0200
From:   Michal Hocko <mhocko@...nel.org>
To:     Lorenzo Stoakes <lstoakes@...il.com>
Cc:     linux-mm@...ck.org, Linus Torvalds <torvalds@...ux-foundation.org>,
        Jan Kara <jack@...e.cz>,
        Andrew Morton <akpm@...ux-foundation.org>,
        linux-kernel@...r.kernel.org
Subject: Re: [PATCH] mm: fixup get_user_pages* comments

On Wed 26-10-16 00:34:35, Lorenzo Stoakes wrote:
> In the previous round of get_user_pages* changes comments attached to
> __get_user_pages_unlocked() and get_user_pages_unlocked() were rendered
> incorrect, this patch corrects them.
> 
> In addition the get_user_pages_unlocked() comment seems to have already been
> outdated as it referred to tsk, mm parameters which were removed in c12d2da5
> ("mm/gup: Remove the macro overload API migration helpers from the get_user*()
> APIs"), this patch fixes this also.
> 
> Signed-off-by: Lorenzo Stoakes <lstoakes@...il.com>

Acked-by: Michal Hocko <mhocko@...e.com>

> ---
>  mm/gup.c | 16 ++++++----------
>  1 file changed, 6 insertions(+), 10 deletions(-)
> 
> diff --git a/mm/gup.c b/mm/gup.c
> index ec4f827..e6147f1 100644
> --- a/mm/gup.c
> +++ b/mm/gup.c
> @@ -857,14 +857,12 @@ long get_user_pages_locked(unsigned long start, unsigned long nr_pages,
>  EXPORT_SYMBOL(get_user_pages_locked);
>  
>  /*
> - * Same as get_user_pages_unlocked(...., FOLL_TOUCH) but it allows to
> - * pass additional gup_flags as last parameter (like FOLL_HWPOISON).
> + * Same as get_user_pages_unlocked(...., FOLL_TOUCH) but it allows for
> + * tsk, mm to be specified.
>   *
>   * NOTE: here FOLL_TOUCH is not set implicitly and must be set by the
> - * caller if required (just like with __get_user_pages). "FOLL_GET",
> - * "FOLL_WRITE" and "FOLL_FORCE" are set implicitly as needed
> - * according to the parameters "pages", "write", "force"
> - * respectively.
> + * caller if required (just like with __get_user_pages). "FOLL_GET"
> + * is set implicitly if "pages" is non-NULL.
>   */
>  __always_inline long __get_user_pages_unlocked(struct task_struct *tsk, struct mm_struct *mm,
>  					       unsigned long start, unsigned long nr_pages,
> @@ -894,10 +892,8 @@ EXPORT_SYMBOL(__get_user_pages_unlocked);
>   *      get_user_pages_unlocked(tsk, mm, ..., pages);
>   *
>   * It is functionally equivalent to get_user_pages_fast so
> - * get_user_pages_fast should be used instead, if the two parameters
> - * "tsk" and "mm" are respectively equal to current and current->mm,
> - * or if "force" shall be set to 1 (get_user_pages_fast misses the
> - * "force" parameter).
> + * get_user_pages_fast should be used instead if specific gup_flags
> + * (e.g. FOLL_FORCE) are not required.
>   */
>  long get_user_pages_unlocked(unsigned long start, unsigned long nr_pages,
>  			     struct page **pages, unsigned int gup_flags)
> -- 
> 2.10.1

-- 
Michal Hocko
SUSE Labs

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ