All of lore.kernel.org
 help / color / mirror / Atom feed
From: Catalin Marinas <catalin.marinas@arm.com>
To: Peter Xu <peterx@redhat.com>
Cc: Mark Brown <broonie@kernel.org>,
	John Hubbard <jhubbard@nvidia.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	linux-arm-kernel@lists.infradead.org, linux-next@vger.kernel.org,
	Will Deacon <will@kernel.org>,
	Steven Price <steven.price@arm.com>
Subject: Re: Build failure in -next with get_user_pages_remote() API change
Date: Fri, 10 Jul 2020 16:23:58 +0100	[thread overview]
Message-ID: <20200710152357.GC11839@gaia> (raw)
In-Reply-To: <20200710122457.GK199122@xz-x1>

On Fri, Jul 10, 2020 at 08:24:57AM -0400, Peter Xu wrote:
> On Fri, Jul 10, 2020 at 12:32:01PM +0100, Mark Brown wrote:
> > Today's -next fails to build in various arm64 configs with:
> > 
> > arch/arm64/kernel/mte.c:225:23: error: too many arguments to function call, expected 7, have 8
> >                                             &page, &vma, NULL);
> >                                                          ^~~~
> > ./include/linux/stddef.h:8:14: note: expanded from macro 'NULL'
> > #define NULL ((void *)0)
> >              ^~~~~~~~~~~
> > ./include/linux/mm.h:1705:6: note: 'get_user_pages_remote' declared here
> > long get_user_pages_remote(struct mm_struct *mm,
> >      ^
> > 1 error generated.
> > 
> > caused by b7363b0ab88d66d3c (mm/gup: remove task_struct pointer for all
> > gup code) which updated the signature of get_user_pages_remote() without
> > updating the caller in mte.c.
> 
> We should need to squash into "mm/gup: remove task_struct pointer for all gup
> code" with:
> 
> diff --git a/arch/arm64/kernel/mte.c b/arch/arm64/kernel/mte.c
> index 934639ab225d..11e558b02a05 100644
> --- a/arch/arm64/kernel/mte.c
> +++ b/arch/arm64/kernel/mte.c
> @@ -221,7 +221,7 @@ static int __access_remote_tags(struct task_struct *tsk, struct mm_struct *mm,
>                 void *maddr;
>                 struct page *page = NULL;
>  
> -               ret = get_user_pages_remote(tsk, mm, addr, 1, gup_flags,
> +               ret = get_user_pages_remote(mm, addr, 1, gup_flags,
>                                             &page, &vma, NULL);
>                 if (ret <= 0)
>                         break;
> 
> Seems to be a new caller merged recently, so it got left behind during the
> rebases...  Sorry for not noticing that.

The mte code is only in -next but since it's based on 5.8-rc3, we can't
change it without breaking it.

Is there a stable branch somewhere with the gup patches? If not, I can
provisionally drop the affected MTE patches from -next and push them
upstream closer to the -rc1 (it's the ptrace support from MTE).

-- 
Catalin

WARNING: multiple messages have this Message-ID (diff)
From: Catalin Marinas <catalin.marinas@arm.com>
To: Peter Xu <peterx@redhat.com>
Cc: John Hubbard <jhubbard@nvidia.com>,
	Steven Price <steven.price@arm.com>,
	Mark Brown <broonie@kernel.org>,
	linux-next@vger.kernel.org,
	Andrew Morton <akpm@linux-foundation.org>,
	Will Deacon <will@kernel.org>,
	linux-arm-kernel@lists.infradead.org
Subject: Re: Build failure in -next with get_user_pages_remote() API change
Date: Fri, 10 Jul 2020 16:23:58 +0100	[thread overview]
Message-ID: <20200710152357.GC11839@gaia> (raw)
In-Reply-To: <20200710122457.GK199122@xz-x1>

On Fri, Jul 10, 2020 at 08:24:57AM -0400, Peter Xu wrote:
> On Fri, Jul 10, 2020 at 12:32:01PM +0100, Mark Brown wrote:
> > Today's -next fails to build in various arm64 configs with:
> > 
> > arch/arm64/kernel/mte.c:225:23: error: too many arguments to function call, expected 7, have 8
> >                                             &page, &vma, NULL);
> >                                                          ^~~~
> > ./include/linux/stddef.h:8:14: note: expanded from macro 'NULL'
> > #define NULL ((void *)0)
> >              ^~~~~~~~~~~
> > ./include/linux/mm.h:1705:6: note: 'get_user_pages_remote' declared here
> > long get_user_pages_remote(struct mm_struct *mm,
> >      ^
> > 1 error generated.
> > 
> > caused by b7363b0ab88d66d3c (mm/gup: remove task_struct pointer for all
> > gup code) which updated the signature of get_user_pages_remote() without
> > updating the caller in mte.c.
> 
> We should need to squash into "mm/gup: remove task_struct pointer for all gup
> code" with:
> 
> diff --git a/arch/arm64/kernel/mte.c b/arch/arm64/kernel/mte.c
> index 934639ab225d..11e558b02a05 100644
> --- a/arch/arm64/kernel/mte.c
> +++ b/arch/arm64/kernel/mte.c
> @@ -221,7 +221,7 @@ static int __access_remote_tags(struct task_struct *tsk, struct mm_struct *mm,
>                 void *maddr;
>                 struct page *page = NULL;
>  
> -               ret = get_user_pages_remote(tsk, mm, addr, 1, gup_flags,
> +               ret = get_user_pages_remote(mm, addr, 1, gup_flags,
>                                             &page, &vma, NULL);
>                 if (ret <= 0)
>                         break;
> 
> Seems to be a new caller merged recently, so it got left behind during the
> rebases...  Sorry for not noticing that.

The mte code is only in -next but since it's based on 5.8-rc3, we can't
change it without breaking it.

Is there a stable branch somewhere with the gup patches? If not, I can
provisionally drop the affected MTE patches from -next and push them
upstream closer to the -rc1 (it's the ptrace support from MTE).

-- 
Catalin

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  parent reply	other threads:[~2020-07-10 15:24 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-07-10 11:32 Build failure in -next with get_user_pages_remote() API change Mark Brown
2020-07-10 11:32 ` Mark Brown
2020-07-10 12:24 ` Peter Xu
2020-07-10 12:24   ` Peter Xu
2020-07-10 13:38   ` Peter Xu
2020-07-10 13:38     ` Peter Xu
2020-07-10 15:23   ` Catalin Marinas [this message]
2020-07-10 15:23     ` Catalin Marinas
2020-07-10 22:28     ` Andrew Morton
2020-07-10 22:28       ` Andrew Morton
2020-07-23 18:10       ` Catalin Marinas
2020-07-23 18:10         ` Catalin Marinas

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200710152357.GC11839@gaia \
    --to=catalin.marinas@arm.com \
    --cc=akpm@linux-foundation.org \
    --cc=broonie@kernel.org \
    --cc=jhubbard@nvidia.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-next@vger.kernel.org \
    --cc=peterx@redhat.com \
    --cc=steven.price@arm.com \
    --cc=will@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.