lkml.org 
[lkml]   [2020]   [Jul]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Date
SubjectRe: linux-next: Tree for Jul 9
On Thu, 9 Jul 2020 at 11:18, Stephen Rothwell <sfr@canb.auug.org.au> wrote:
>
> Hi all,
>
> Changes since 20200708:
>
> My fixes tree contains:
>
> dbf24e30ce2e ("device_cgroup: Fix RCU list debugging warning")
> b236d81d9e4f ("powerpc/boot/dts: Fix dtc "pciex" warnings")
>
> The kbuild tree still had its build failure for which I reverted a commit.
>
> The scmi tree gained a build failure so I used the version from
> next-20200708;
>
> The net-next tree gained a conflict against the pci tree.
>
> The block tree gained conflicts against the btrfs and fscrypt trees.
>
> The device-mapper tree gained a conflict against the block tree.
>
> The security tree still had its build failure for which I applied a patch.
>
> The tip tree still had one build failure for which I reverted a commit.
>
> The akpm-current tree gained a conflict against the userns tree and a
> build failure for which I reverted 2 commits.
>
> The akpm tree lost a patch that turned up elsewhere.
>
> Non-merge commits (relative to Linus' tree): 5915
> 6780 files changed, 362395 insertions(+), 141614 deletions(-)
>

Today's tag doesn't build on arm64.
I think this patch e76b573f11d1 ("arm64: mte: Add
PTRACE_{PEEK,POKE}MTETAGS support")
broke the build due to this patch was included also
dc766e66c2b3 ("mm/gup: remove task_struct pointer for all gup code")...

/srv/src/kernel/next/arch/arm64/kernel/mte.c: In function
‘__access_remote_tags’:
/srv/src/kernel/next/arch/arm64/kernel/mte.c:224:31: error: passing
argument 1 of ‘get_user_pages_remote’ from incompatible pointer type
[-Werror=incompatible-pointer-types]
224 | ret = get_user_pages_remote(tsk, mm, addr, 1, gup_flags,
| ^~~
| |
| struct task_struct *
In file included from /srv/src/kernel/next/arch/arm64/kernel/mte.c:8:
/srv/src/kernel/next/include/linux/mm.h:1707:46: note: expected
‘struct mm_struct *’ but argument is of type ‘struct task_struct *’
1707 | long get_user_pages_remote(struct mm_struct *mm,
| ~~~~~~~~~~~~~~~~~~^~
/srv/src/kernel/next/arch/arm64/kernel/mte.c:224:36: warning: passing
argument 2 of ‘get_user_pages_remote’ makes integer from pointer
without a cast [-Wint-conversion]
224 | ret = get_user_pages_remote(tsk, mm, addr, 1, gup_flags,
| ^~
| |
| struct mm_struct *
In file included from /srv/src/kernel/next/arch/arm64/kernel/mte.c:8:
/srv/src/kernel/next/include/linux/mm.h:1708:22: note: expected ‘long
unsigned int’ but argument is of type ‘struct mm_struct *’
1708 | unsigned long start, unsigned long nr_pages,
| ~~~~~~~~~~~~~~^~~~~
/srv/src/kernel/next/arch/arm64/kernel/mte.c:224:49: warning: passing
argument 5 of ‘get_user_pages_remote’ makes pointer from integer
without a cast [-Wint-conversion]
224 | ret = get_user_pages_remote(tsk, mm, addr, 1, gup_flags,
| ^~~~~~~~~
| |
| unsigned int
In file included from /srv/src/kernel/next/arch/arm64/kernel/mte.c:8:
/srv/src/kernel/next/include/linux/mm.h:1709:46: note: expected
‘struct page **’ but argument is of type ‘unsigned int’
1709 | unsigned int gup_flags, struct page **pages,
| ~~~~~~~~~~~~~~^~~~~
/srv/src/kernel/next/arch/arm64/kernel/mte.c:225:10: error: passing
argument 6 of ‘get_user_pages_remote’ from incompatible pointer type
[-Werror=incompatible-pointer-types]
225 | &page, &vma, NULL);
| ^~~~~
| |
| struct page **
In file included from /srv/src/kernel/next/arch/arm64/kernel/mte.c:8:
/srv/src/kernel/next/include/linux/mm.h:1710:32: note: expected
‘struct vm_area_struct **’ but argument is of type ‘struct page **’
1710 | struct vm_area_struct **vmas, int *locked);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~
/srv/src/kernel/next/arch/arm64/kernel/mte.c:225:17: error: passing
argument 7 of ‘get_user_pages_remote’ from incompatible pointer type
[-Werror=incompatible-pointer-types]
225 | &page, &vma, NULL);
| ^~~~
| |
| struct vm_area_struct **
In file included from /srv/src/kernel/next/arch/arm64/kernel/mte.c:8:
/srv/src/kernel/next/include/linux/mm.h:1710:43: note: expected ‘int
*’ but argument is of type ‘struct vm_area_struct **’
1710 | struct vm_area_struct **vmas, int *locked);
| ~~~~~^~~~~~
/srv/src/kernel/next/arch/arm64/kernel/mte.c:224:9: error: too many
arguments to function ‘get_user_pages_remote’
224 | ret = get_user_pages_remote(tsk, mm, addr, 1, gup_flags,
| ^~~~~~~~~~~~~~~~~~~~~
In file included from /srv/src/kernel/next/arch/arm64/kernel/mte.c:8:
/srv/src/kernel/next/include/linux/mm.h:1707:6: note: declared here
1707 | long get_user_pages_remote(struct mm_struct *mm,
| ^~~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
make[3]: *** [/srv/src/kernel/next/scripts/Makefile.build:280:
arch/arm64/kernel/mte.o] Error 1
make[3]: Target '__build' not remade because of errors.
make[2]: *** [/srv/src/kernel/next/scripts/Makefile.build:497:
arch/arm64/kernel] Error 2
make[2]: Target '__build' not remade because of errors.
make[1]: *** [/srv/src/kernel/next/Makefile:1764: arch/arm64] Error 2

This change made it build again:

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;
Cheers,
Anders

\
 
 \ /
  Last update: 2020-07-09 12:12    [W:0.034 / U:0.632 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site