On Tue, May 26, 2020 at 1:49 PM John Hubbard <[email protected]> wrote:
>
> On 2020-05-26 01:13, Vitaly Kuznetsov wrote:
> > pin_user_pages.rst lives in Documentation/core-api/, not Documentation/vm/,
> > adjust all links accordingly.
> >
> > Fixes: 3faa52c03f44 ("mm/gup: track FOLL_PIN pages")
> > Fixes: eddb1c228f79 ("mm/gup: introduce pin_user_pages*() and FOLL_PIN")
> > Signed-off-by: Vitaly Kuznetsov <[email protected]>
> > ---
> > include/linux/mm.h | 4 ++--
> > mm/gup.c | 18 +++++++++---------
> > 2 files changed, 11 insertions(+), 11 deletions(-)
>
> Hi Vitaly,
>
> Thanks for the fix,
>
> Reviewed-by: John Hubbard <[email protected]>
>
> (+CC Souptick, who fixed a similar set of links, maybe in a different
> file, as I recall.)
Changes related to mm/gup.c are merged in linux-next which means we
need to take care
of only *mm.h* part. rebase on top of linux-next should work fine. With that,
Acked-by: Souptick Joarder <[email protected]>
> NVIDIA
>
> >
> > diff --git a/include/linux/mm.h b/include/linux/mm.h
> > index 5a323422d783..1f2850465f59 100644
> > --- a/include/linux/mm.h
> > +++ b/include/linux/mm.h
> > @@ -1219,7 +1219,7 @@ void unpin_user_pages(struct page **pages, unsigned long npages);
> > * used to track the pincount (instead using of the GUP_PIN_COUNTING_BIAS
> > * scheme).
> > *
> > - * For more information, please see Documentation/vm/pin_user_pages.rst.
> > + * For more information, please see Documentation/core-api/pin_user_pages.rst.
> > *
> > * @page: pointer to page to be queried.
> > * @Return: True, if it is likely that the page has been "dma-pinned".
> > @@ -2834,7 +2834,7 @@ struct page *follow_page(struct vm_area_struct *vma, unsigned long address,
> > * releasing pages: get_user_pages*() pages must be released via put_page(),
> > * while pin_user_pages*() pages must be released via unpin_user_page().
> > *
> > - * Please see Documentation/vm/pin_user_pages.rst for more information.
> > + * Please see Documentation/core-api/pin_user_pages.rst for more information.
> > */
> >
> > static inline int vm_fault_to_errno(vm_fault_t vm_fault, int foll_flags)
> > diff --git a/mm/gup.c b/mm/gup.c
> > index 87a6a59fe667..87a3a4b400f9 100644
> > --- a/mm/gup.c
> > +++ b/mm/gup.c
> > @@ -2845,10 +2845,10 @@ EXPORT_SYMBOL_GPL(get_user_pages_fast);
> > * the arguments here are identical.
> > *
> > * FOLL_PIN means that the pages must be released via unpin_user_page(). Please
> > - * see Documentation/vm/pin_user_pages.rst for further details.
> > + * see Documentation/core-api/pin_user_pages.rst for further details.
> > *
> > - * This is intended for Case 1 (DIO) in Documentation/vm/pin_user_pages.rst. It
> > - * is NOT intended for Case 2 (RDMA: long-term pins).
> > + * This is intended for Case 1 in Documentation/core-api/pin_user_pages.rst
> > + * (DIO). It is NOT intended for Case 2 (RDMA: long-term pins).
> > */
> > int pin_user_pages_fast(unsigned long start, int nr_pages,
> > unsigned int gup_flags, struct page **pages)
> > @@ -2885,10 +2885,10 @@ EXPORT_SYMBOL_GPL(pin_user_pages_fast);
> > * the arguments here are identical.
> > *
> > * FOLL_PIN means that the pages must be released via unpin_user_page(). Please
> > - * see Documentation/vm/pin_user_pages.rst for details.
> > + * see Documentation/core-api/pin_user_pages.rst for details.
> > *
> > - * This is intended for Case 1 (DIO) in Documentation/vm/pin_user_pages.rst. It
> > - * is NOT intended for Case 2 (RDMA: long-term pins).
> > + * This is intended for Case 1 in Documentation/core-api/pin_user_pages.rst
> > + * (DIO). It is NOT intended for Case 2 (RDMA: long-term pins).
> > */
> > long pin_user_pages_remote(struct task_struct *tsk, struct mm_struct *mm,
> > unsigned long start, unsigned long nr_pages,
> > @@ -2921,10 +2921,10 @@ EXPORT_SYMBOL(pin_user_pages_remote);
> > * FOLL_PIN is set.
> > *
> > * FOLL_PIN means that the pages must be released via unpin_user_page(). Please
> > - * see Documentation/vm/pin_user_pages.rst for details.
> > + * see Documentation/core-api/pin_user_pages.rst for details.
> > *
> > - * This is intended for Case 1 (DIO) in Documentation/vm/pin_user_pages.rst. It
> > - * is NOT intended for Case 2 (RDMA: long-term pins).
> > + * This is intended for Case 1 in Documentation/core-api/pin_user_pages.rst
> > + * (DIO). It is NOT intended for Case 2 (RDMA: long-term pins).
> > */
> > long pin_user_pages(unsigned long start, unsigned long nr_pages,
> > unsigned int gup_flags, struct page **pages,
> >
>