linux-next: build failure after merge of the akpm tree

2020-12-20 Thread Stephen Rothwell
Hi all,

After merging the akpm tree, today's linux-next build (arm64 allmodconfig)
failed like this:

./include/uapi/asm-generic/unistd.h:867:27: error: array index in initializer 
exceeds array bounds

Caused by commit

  390e5073c473 ("arch, mm: wire up memfd_secret system call where relevant")
  d098835811e0 ("arch-mm-wire-up-memfd_secret-system-call-were-relevant-fix")

Reported-by: kernelci.org bot 

I will apply the following patch tomorrow:

From: Stephen Rothwell 
Date: Mon, 21 Dec 2020 16:10:40 +1100
Subject: [PATCH]  arch-mm-wire-up-memfd_secret-system-call-were-relevant-fix-fix

Signed-off-by: Stephen Rothwell 
---
 include/uapi/asm-generic/unistd.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/uapi/asm-generic/unistd.h 
b/include/uapi/asm-generic/unistd.h
index 72b94deb8cf1..26125974a8a2 100644
--- a/include/uapi/asm-generic/unistd.h
+++ b/include/uapi/asm-generic/unistd.h
@@ -869,7 +869,7 @@ __SYSCALL(__NR_memfd_secret, sys_memfd_secret)
 #endif
 
 #undef __NR_syscalls
-#define __NR_syscalls 443
+#define __NR_syscalls 444
 
 /*
  * 32 bit systems traditionally used different
-- 
2.29.2

-- 
Cheers,
Stephen Rothwell


pgpbJ4IgUHZkq.pgp
Description: OpenPGP digital signature


linux-next: build failure after merge of the akpm tree

2020-12-10 Thread Stephen Rothwell
Hi all,

After merging the akpm tree, today's linux-next build (x86_64
allmodconfig) failed like this:

mm/kasan/quarantine.c: In function 'quarantine_put':
mm/kasan/quarantine.c:198:3: error: 'return' with no value, in function 
returning non-void [-Werror=return-type]
  198 |   return;
  |   ^~
mm/kasan/quarantine.c:171:6: note: declared here
  171 | bool quarantine_put(struct kmem_cache *cache, void *object)
  |  ^~
mm/kasan/quarantine.c:200:16: error: 'info' undeclared (first use in this 
function)
  200 |  qlist_put(q, >quarantine_link, cache->size);
  |^~~~
mm/kasan/quarantine.c:200:16: note: each undeclared identifier is reported only 
once for each function it appears in

Caused by commits

  d6e0eb793f88 ("kasan: rename get_alloc/free_info")
  453989cf05d6 ("kasan: sanitize objects when metadata doesn't fit")

interacting with commit

  2ac05f7fcf5b ("kasan: fix object remaining in offline per-cpu quarantine")

from the akmp-current tree.

This goes on and on :-(

I have applied the following patch:

From: Stephen Rothwell 
Date: Thu, 10 Dec 2020 20:24:01 +1100
Subject: [PATCH] fixup for "kasan: rename get_alloc/free_info"

and "kasan: sanitize objects when metadata doesn't fit"
and "kasan: fix object remaining in offline per-cpu quarantine"

Signed-off-by: Stephen Rothwell 
---
 mm/kasan/quarantine.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/mm/kasan/quarantine.c b/mm/kasan/quarantine.c
index c0331656f112..55783125a767 100644
--- a/mm/kasan/quarantine.c
+++ b/mm/kasan/quarantine.c
@@ -195,9 +195,9 @@ bool quarantine_put(struct kmem_cache *cache, void *object)
q = this_cpu_ptr(_quarantine);
if (q->offline) {
local_irq_restore(flags);
-   return;
+   return false;
}
-   qlist_put(q, >quarantine_link, cache->size);
+   qlist_put(q, >quarantine_link, cache->size);
if (unlikely(q->bytes > QUARANTINE_PERCPU_SIZE)) {
qlist_move_all(q, );
 
-- 
2.29.2

-- 
Cheers,
Stephen Rothwell


pgpnvblMPmIqY.pgp
Description: OpenPGP digital signature


Re: linux-next: build failure after merge of the akpm tree

2020-12-03 Thread Andrey Konovalov
On Thu, Dec 3, 2020 at 9:52 AM Stephen Rothwell  wrote:
>
> Hi all,
>
> After merging the akpm tree, today's linux-next build (x86_64
> allmodconfig) failed like this:
>
> mm/kasan/quarantine.c: In function 'quarantine_put':
> mm/kasan/quarantine.c:197:15: error: 'info' undeclared (first use in this 
> function)
>   197 |   qlink_free(>quarantine_link, cache);
>   |   ^~~~
> mm/kasan/quarantine.c:197:15: note: each undeclared identifier is reported 
> only once for each function it appears in
> mm/kasan/quarantine.c:199:3: error: 'return' with no value, in function 
> returning non-void [-Werror=return-type]
>   199 |   return;
>   |   ^~
> mm/kasan/quarantine.c:171:6: note: declared here
>   171 | bool quarantine_put(struct kmem_cache *cache, void *object)
>   |  ^~
>
> Caused by patches
>
>   "kasan: rename get_alloc/free_info"
>   "kasan: sanitize objects when metadata doesn't fit"

Yeah, this is conflict with the "kasan: fix object remain in offline
per-cpu quarantine" patch.

> I have applied the following fix patch:
>
> From: Stephen Rothwell 
> Date: Thu, 3 Dec 2020 19:41:49 +1100
> Subject: [PATCH] kasan-rename-get_alloc-free_info-fix
>
> Signed-off-by: Stephen Rothwell 
> ---
>  mm/kasan/quarantine.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/mm/kasan/quarantine.c b/mm/kasan/quarantine.c
> index feae26ea5cbb..d98b516f372f 100644
> --- a/mm/kasan/quarantine.c
> +++ b/mm/kasan/quarantine.c
> @@ -194,9 +194,9 @@ bool quarantine_put(struct kmem_cache *cache, void 
> *object)
>
> q = this_cpu_ptr(_quarantine);
> if (q->offline) {
> -   qlink_free(>quarantine_link, cache);
> +   qlink_free(>quarantine_link, cache);
> local_irq_restore(flags);
> -   return;
> +   return false;
> }
> qlist_put(q, >quarantine_link, cache->size);
> if (unlikely(q->bytes > QUARANTINE_PERCPU_SIZE)) {
> --
> 2.29.2
>
> --
> Cheers,
> Stephen Rothwell

This fixup looks good to me. Thanks!


linux-next: build failure after merge of the akpm tree

2020-12-03 Thread Stephen Rothwell
Hi all,

After merging the akpm tree, today's linux-next build (x86_64
allmodconfig) failed like this:

mm/kasan/quarantine.c: In function 'quarantine_put':
mm/kasan/quarantine.c:197:15: error: 'info' undeclared (first use in this 
function)
  197 |   qlink_free(>quarantine_link, cache);
  |   ^~~~
mm/kasan/quarantine.c:197:15: note: each undeclared identifier is reported only 
once for each function it appears in
mm/kasan/quarantine.c:199:3: error: 'return' with no value, in function 
returning non-void [-Werror=return-type]
  199 |   return;
  |   ^~
mm/kasan/quarantine.c:171:6: note: declared here
  171 | bool quarantine_put(struct kmem_cache *cache, void *object)
  |  ^~

Caused by patches

  "kasan: rename get_alloc/free_info"
  "kasan: sanitize objects when metadata doesn't fit"

I have applied the following fix patch:

From: Stephen Rothwell 
Date: Thu, 3 Dec 2020 19:41:49 +1100
Subject: [PATCH] kasan-rename-get_alloc-free_info-fix

Signed-off-by: Stephen Rothwell 
---
 mm/kasan/quarantine.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/mm/kasan/quarantine.c b/mm/kasan/quarantine.c
index feae26ea5cbb..d98b516f372f 100644
--- a/mm/kasan/quarantine.c
+++ b/mm/kasan/quarantine.c
@@ -194,9 +194,9 @@ bool quarantine_put(struct kmem_cache *cache, void *object)
 
q = this_cpu_ptr(_quarantine);
if (q->offline) {
-   qlink_free(>quarantine_link, cache);
+   qlink_free(>quarantine_link, cache);
local_irq_restore(flags);
-   return;
+   return false;
}
qlist_put(q, >quarantine_link, cache->size);
if (unlikely(q->bytes > QUARANTINE_PERCPU_SIZE)) {
-- 
2.29.2

-- 
Cheers,
Stephen Rothwell


pgpRPYp7WPO0l.pgp
Description: OpenPGP digital signature


Re: linux-next: build failure after merge of the akpm tree

2020-11-15 Thread Stephen Rothwell
Hi Mike,

On Sun, 15 Nov 2020 11:01:05 +0200 Mike Rapoport  wrote:
>
> My preference would be to put the entire function body in '#ifdef
> CONFIG_MEMCG' here.

OK, so today I used this:

From: Stephen Rothwell 
Date: Mon, 16 Nov 2020 16:55:10 +1100
Subject: [PATCH] secretmem-add-memcg-accounting-fix2

Signed-off-by: Stephen Rothwell 
---
 mm/secretmem.c | 4 
 1 file changed, 4 insertions(+)

diff --git a/mm/secretmem.c b/mm/secretmem.c
index 5ed6b2070136..c7a37b2d01ed 100644
--- a/mm/secretmem.c
+++ b/mm/secretmem.c
@@ -59,6 +59,7 @@ bool secretmem_active(void)
 
 static int secretmem_memcg_charge(struct page *page, gfp_t gfp, int order)
 {
+#ifdef CONFIG_MEMCG
unsigned long nr_pages = (1 << order);
int i, err;
 
@@ -72,11 +73,13 @@ static int secretmem_memcg_charge(struct page *page, gfp_t 
gfp, int order)
p->memcg_data = page->memcg_data;
}
 
+#endif
return 0;
 }
 
 static void secretmem_memcg_uncharge(struct page *page, int order)
 {
+#ifdef CONFIG_MEMCG
unsigned long nr_pages = (1 << order);
int i;
 
@@ -87,6 +90,7 @@ static void secretmem_memcg_uncharge(struct page *page, int 
order)
}
 
memcg_kmem_uncharge_page(page, PMD_PAGE_ORDER);
+#endif
 }
 
 static int secretmem_pool_increase(struct secretmem_ctx *ctx, gfp_t gfp)
-- 
2.29.2

-- 
Cheers,
Stephen Rothwell


pgpWly60721G2.pgp
Description: OpenPGP digital signature


Re: linux-next: build failure after merge of the akpm tree

2020-11-15 Thread Mike Rapoport
On Fri, Nov 13, 2020 at 05:14:52PM -0800, Andrew Morton wrote:
> On Fri, 13 Nov 2020 18:02:39 +1100 Stephen Rothwell  
> wrote:
> 
> > Hi all,
> > 
> > After merging the akpm tree, today's linux-next build (i386 defconfig)
> > failed like this:
> > 
> > mm/secretmem.c: In function 'secretmem_memcg_charge':
> > mm/secretmem.c:72:4: error: 'struct page' has no member named 'memcg_data'
> >72 |   p->memcg_data = page->memcg_data;
> >   |^~
> > mm/secretmem.c:72:23: error: 'struct page' has no member named 'memcg_data'
> >72 |   p->memcg_data = page->memcg_data;
> >   |   ^~
> > mm/secretmem.c: In function 'secretmem_memcg_uncharge':
> > mm/secretmem.c:86:4: error: 'struct page' has no member named 'memcg_data'
> >86 |   p->memcg_data = 0;
> >   |^~
> > 
> > ...
> >
> > --- a/mm/secretmem.c
> > +++ b/mm/secretmem.c
> > @@ -69,7 +69,9 @@ static int secretmem_memcg_charge(struct page *page, 
> > gfp_t gfp, int order)
> > for (i = 1; i < nr_pages; i++) {
> > struct page *p = page + i;
> >  
> > +#ifdef CONFIG_MEMCG
> > p->memcg_data = page->memcg_data;
> > +#endif
> > }
> >  
> > return 0;
> 
> Thanks, that'll work for now.
> 
> I guess we're looking at adding a set_page_memcg() (I'd prefer
> page_memcg_set()).
> 
> But probably these functions shouldn't be compiled at all if
> CONFIG_MEMCG=n.

My preference would be to put the entire function body in '#ifdef
CONFIG_MEMCG' here.

-- 
Sincerely yours,
Mike.


Re: linux-next: build failure after merge of the akpm tree

2020-11-13 Thread Andrew Morton
On Fri, 13 Nov 2020 18:02:39 +1100 Stephen Rothwell  
wrote:

> Hi all,
> 
> After merging the akpm tree, today's linux-next build (i386 defconfig)
> failed like this:
> 
> mm/secretmem.c: In function 'secretmem_memcg_charge':
> mm/secretmem.c:72:4: error: 'struct page' has no member named 'memcg_data'
>72 |   p->memcg_data = page->memcg_data;
>   |^~
> mm/secretmem.c:72:23: error: 'struct page' has no member named 'memcg_data'
>72 |   p->memcg_data = page->memcg_data;
>   |   ^~
> mm/secretmem.c: In function 'secretmem_memcg_uncharge':
> mm/secretmem.c:86:4: error: 'struct page' has no member named 'memcg_data'
>86 |   p->memcg_data = 0;
>   |^~
> 
> ...
>
> --- a/mm/secretmem.c
> +++ b/mm/secretmem.c
> @@ -69,7 +69,9 @@ static int secretmem_memcg_charge(struct page *page, gfp_t 
> gfp, int order)
>   for (i = 1; i < nr_pages; i++) {
>   struct page *p = page + i;
>  
> +#ifdef CONFIG_MEMCG
>   p->memcg_data = page->memcg_data;
> +#endif
>   }
>  
>   return 0;

Thanks, that'll work for now.

I guess we're looking at adding a set_page_memcg() (I'd prefer
page_memcg_set()).

But probably these functions shouldn't be compiled at all if
CONFIG_MEMCG=n.


linux-next: build failure after merge of the akpm tree

2020-11-12 Thread Stephen Rothwell
Hi all,

After merging the akpm tree, today's linux-next build (i386 defconfig)
failed like this:

mm/secretmem.c: In function 'secretmem_memcg_charge':
mm/secretmem.c:72:4: error: 'struct page' has no member named 'memcg_data'
   72 |   p->memcg_data = page->memcg_data;
  |^~
mm/secretmem.c:72:23: error: 'struct page' has no member named 'memcg_data'
   72 |   p->memcg_data = page->memcg_data;
  |   ^~
mm/secretmem.c: In function 'secretmem_memcg_uncharge':
mm/secretmem.c:86:4: error: 'struct page' has no member named 'memcg_data'
   86 |   p->memcg_data = 0;
  |^~

Caused by commit

  5f964602825e ("secretmem: add memcg accounting")

memcg_data only exists when CONFIG_MEMCG is set.

I have applied the following patch for today.

From: Stephen Rothwell 
Date: Fri, 13 Nov 2020 17:50:30 +1100
Subject: [PATCH] secretmem-add-memcg-accounting-fix2

Signed-off-by: Stephen Rothwell 
---
 mm/secretmem.c | 4 
 1 file changed, 4 insertions(+)

diff --git a/mm/secretmem.c b/mm/secretmem.c
index 5ed6b2070136..3dfdbd85ba00 100644
--- a/mm/secretmem.c
+++ b/mm/secretmem.c
@@ -69,7 +69,9 @@ static int secretmem_memcg_charge(struct page *page, gfp_t 
gfp, int order)
for (i = 1; i < nr_pages; i++) {
struct page *p = page + i;
 
+#ifdef CONFIG_MEMCG
p->memcg_data = page->memcg_data;
+#endif
}
 
return 0;
@@ -83,7 +85,9 @@ static void secretmem_memcg_uncharge(struct page *page, int 
order)
for (i = 1; i < nr_pages; i++) {
struct page *p = page + i;
 
+#ifdef CONFIG_MEMCG
p->memcg_data = 0;
+#endif
}
 
memcg_kmem_uncharge_page(page, PMD_PAGE_ORDER);
-- 
2.28.0

This unfortunately produced these warnings:

mm/secretmem.c: In function 'secretmem_memcg_charge':
mm/secretmem.c:70:16: warning: unused variable 'p' [-Wunused-variable]
   70 |   struct page *p = page + i;
  |^
mm/secretmem.c: In function 'secretmem_memcg_uncharge':
mm/secretmem.c:86:16: warning: unused variable 'p' [-Wunused-variable]
   86 |   struct page *p = page + i;
  |^

which I will fix up for the next linux-next release, if necessary.
-- 
Cheers,
Stephen Rothwell


pgpxetQDcc4Ky.pgp
Description: OpenPGP digital signature


linux-next: build failure after merge of the akpm tree

2020-11-10 Thread Stephen Rothwell
Hi all,

After merging the akpm tree, today's linux-next build (x86_64
allmodconfig) failed like this:

mm/kasan/shadow.c: In function 'kasan_poison_memory':
mm/kasan/shadow.c:88:6: error: implicit declaration of function 
'is_kfence_address' [-Werror=implicit-function-declaration]
   88 |  if (is_kfence_address(address))
  |  ^

Caused by commit

  97f3d663343a ("kasan-split-out-shadowc-from-commonc-fix")

I have applied this fix patch for today:

From e96c5bb419a2042483dcc914750e4e903d73e70e Mon Sep 17 00:00:00 2001
From: Stephen Rothwell 
Date: Wed, 11 Nov 2020 17:16:35 +1100
Subject: [PATCH] kasan-split-out-shadowc-from-commonc-fix2

Signed-off-by: Stephen Rothwell 
---
 mm/kasan/shadow.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/mm/kasan/shadow.c b/mm/kasan/shadow.c
index 1f8d713fa8a3..f45442ef42b1 100644
--- a/mm/kasan/shadow.c
+++ b/mm/kasan/shadow.c
@@ -14,6 +14,7 @@
 #include 
 #include 
 #include 
+#include 
 #include 
 #include 
 #include 
-- 
2.28.0

-- 
Cheers,
Stephen Rothwell


pgpjijL0LunJm.pgp
Description: OpenPGP digital signature


Re: linux-next: build failure after merge of the akpm tree

2020-09-28 Thread Christoph Hellwig
Thanks,

the fix looks correct.


linux-next: build failure after merge of the akpm tree

2020-09-28 Thread Stephen Rothwell
Hi all,

After merging the akpm tree, today's linux-next build (powerpc
ppc64_defconfig) failed like this:

mm/madvise.c: In function '__do_sys_process_madvise':
mm/madvise.c:1194:9: error: implicit declaration of function 
'compat_import_iovec'; did you mean 'import_iovec'? 
[-Werror=implicit-function-declaration]
 1194 |   ret = compat_import_iovec(READ,
  | ^~~
  | import_iovec

Caused by commits

  b50ef3fed31c ("mm/madvise: introduce process_madvise() syscall: an external 
memory hinting API")
  84b51d510a77 ("mm: do not use helper functions for process_madvise")

interacting with commit

  e42ff3fae0a2 ("iov_iter: transparently handle compat iovecs in import_iovec")

from the vfs tree.

I have applied the folloing patch for today:

From: Stephen Rothwell 
Date: Mon, 28 Sep 2020 21:14:11 +1000
Subject: [PATCH] fix up for "iov_iter: transparently handle compat iovecs in
 import_iovec"

Signed-off-by: Stephen Rothwell 
---
 mm/madvise.c | 11 +--
 1 file changed, 1 insertion(+), 10 deletions(-)

diff --git a/mm/madvise.c b/mm/madvise.c
index 935dbc92e626..416a56b8e757 100644
--- a/mm/madvise.c
+++ b/mm/madvise.c
@@ -7,7 +7,6 @@
  */
 
 #include 
-#include 
 #include 
 #include 
 #include 
@@ -1189,15 +1188,7 @@ SYSCALL_DEFINE5(process_madvise, int, pidfd, const 
struct iovec __user *, vec,
goto out;
}
 
-#ifdef CONFIG_COMPAT
-   if (in_compat_syscall())
-   ret = compat_import_iovec(READ,
-   (struct compat_iovec __user *)vec, vlen,
-   ARRAY_SIZE(iovstack), , );
-   else
-#endif
-   ret = import_iovec(READ, vec, vlen, ARRAY_SIZE(iovstack),
-   , );
+   ret = import_iovec(READ, vec, vlen, ARRAY_SIZE(iovstack), , );
if (ret < 0)
goto out;
 
-- 
2.28.0

-- 
Cheers,
Stephen Rothwell


pgpMixG4Tmm61.pgp
Description: OpenPGP digital signature


linux-next: build failure after merge of the akpm tree

2020-09-08 Thread Stephen Rothwell
Hi all,

After merging the akpm tree, today's linux-next build (powerpc
ppc64_defconfig) failed like this:

mm/madvise.c: In function 'madv_import_iovec':
mm/madvise.c:1233:6: error: implicit declaration of function 
'in_compat_syscall' [-Werror=implicit-function-declaration]
 1233 |  if (in_compat_syscall())
  |  ^

Caused by commit

  6d0ecd769ce2 ("mm/madvise: introduce process_madvise() syscall: an external 
memory hinting API")

I added the following fix up patch.

From: Stephen Rothwell 
Date: Tue, 8 Sep 2020 20:40:44 +1000
Subject: [PATCH] fix for "mm/madvise: introduce process_madvise() syscall: an
 external memory hinting API"

Signed-off-by: Stephen Rothwell 
---
 mm/madvise.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/mm/madvise.c b/mm/madvise.c
index 3c0d23872330..c5acc2b1b1d9 100644
--- a/mm/madvise.c
+++ b/mm/madvise.c
@@ -7,6 +7,7 @@
  */
 
 #include 
+#include 
 #include 
 #include 
 #include 
-- 
2.28.0

-- 
Cheers,
Stephen Rothwell


pgpe6UTbZUz3Y.pgp
Description: OpenPGP digital signature


Re: linux-next: build failure after merge of the akpm tree

2020-06-04 Thread Stephen Rothwell
Hi all,

On Thu, 4 Jun 2020 16:44:42 +1000 Stephen Rothwell  
wrote:
>
> Hi all,
> 
> After merging the akpm tree, today's linux-next build (powerpc
> allyesconfig) failed like this:
> 
> arch/powerpc/mm/ptdump/ptdump.c: In function 'walk_pagetables':
> arch/powerpc/mm/ptdump/ptdump.c:337:25: error: implicit declaration of 
> function 'pgd_is_leaf'; did you mean 'p4d_is_leaf'? 
> [-Werror=implicit-function-declaration]
>   337 |   if (pgd_none(*pgd) || pgd_is_leaf(*pgd))
>   | ^~~
>   | p4d_is_leaf
> 
> Caused by commit
> 
>"powerpc: add support for folded p4d page tables"
> 
> I applied the following fix up patch.
> 
> From: Stephen Rothwell 
> Date: Thu, 4 Jun 2020 16:33:01 +1000
> Subject: [PATCH] fixup for powerpc ptdump.c
> 
> Signed-off-by: Stephen Rothwell 
> ---
>  arch/powerpc/mm/ptdump/ptdump.c | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/arch/powerpc/mm/ptdump/ptdump.c b/arch/powerpc/mm/ptdump/ptdump.c
> index 9b1c89b05622..de6e05ef871c 100644
> --- a/arch/powerpc/mm/ptdump/ptdump.c
> +++ b/arch/powerpc/mm/ptdump/ptdump.c
> @@ -334,12 +334,12 @@ static void walk_pagetables(struct pg_state *st)
>   for (i = pgd_index(addr); i < PTRS_PER_PGD; i++, pgd++, addr += 
> PGDIR_SIZE) {
>   p4d_t *p4d = p4d_offset(pgd, 0);
>  
> - if (pgd_none(*pgd) || pgd_is_leaf(*pgd))
> + if (p4d_none(*p4d) || p4d_is_leaf(*p4d))
>   note_page(st, addr, 1, p4d_val(*p4d), PGDIR_SIZE);
>   else if (is_hugepd(__hugepd(p4d_val(*p4d
> - walk_hugepd(st, (hugepd_t *)pgd, addr, PGDIR_SHIFT, 1);
> + walk_hugepd(st, (hugepd_t *)p4d, addr, PGDIR_SHIFT, 1);
>   else
> - /* pgd exists */
> + /* p4d exists */
>   walk_pud(st, p4d, addr);
>   }
>  }
>

I have put that in linux-next (for tomorrow) as a fix up for
powerpc-add-support-for-folded-p4d-page-tables.

-- 
Cheers,
Stephen Rothwell


pgpad3T77XNxx.pgp
Description: OpenPGP digital signature


linux-next: build failure after merge of the akpm tree

2020-06-04 Thread Stephen Rothwell
Hi all,

After merging the akpm tree, today's linux-next build (powerpc
allyesconfig) failed like this:

arch/powerpc/mm/ptdump/ptdump.c: In function 'walk_pagetables':
arch/powerpc/mm/ptdump/ptdump.c:337:25: error: implicit declaration of function 
'pgd_is_leaf'; did you mean 'p4d_is_leaf'? 
[-Werror=implicit-function-declaration]
  337 |   if (pgd_none(*pgd) || pgd_is_leaf(*pgd))
  | ^~~
  | p4d_is_leaf

Caused by commit

   "powerpc: add support for folded p4d page tables"

I applied the following fix up patch.

From: Stephen Rothwell 
Date: Thu, 4 Jun 2020 16:33:01 +1000
Subject: [PATCH] fixup for powerpc ptdump.c

Signed-off-by: Stephen Rothwell 
---
 arch/powerpc/mm/ptdump/ptdump.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/arch/powerpc/mm/ptdump/ptdump.c b/arch/powerpc/mm/ptdump/ptdump.c
index 9b1c89b05622..de6e05ef871c 100644
--- a/arch/powerpc/mm/ptdump/ptdump.c
+++ b/arch/powerpc/mm/ptdump/ptdump.c
@@ -334,12 +334,12 @@ static void walk_pagetables(struct pg_state *st)
for (i = pgd_index(addr); i < PTRS_PER_PGD; i++, pgd++, addr += 
PGDIR_SIZE) {
p4d_t *p4d = p4d_offset(pgd, 0);
 
-   if (pgd_none(*pgd) || pgd_is_leaf(*pgd))
+   if (p4d_none(*p4d) || p4d_is_leaf(*p4d))
note_page(st, addr, 1, p4d_val(*p4d), PGDIR_SIZE);
else if (is_hugepd(__hugepd(p4d_val(*p4d
-   walk_hugepd(st, (hugepd_t *)pgd, addr, PGDIR_SHIFT, 1);
+   walk_hugepd(st, (hugepd_t *)p4d, addr, PGDIR_SHIFT, 1);
else
-   /* pgd exists */
+   /* p4d exists */
walk_pud(st, p4d, addr);
}
 }
-- 
2.26.2

-- 
Cheers,
Stephen Rothwell


pgpLybXAmd3i6.pgp
Description: OpenPGP digital signature


Re: linux-next: build failure after merge of the akpm tree

2020-06-02 Thread Andrew Morton
On Tue, 2 Jun 2020 19:57:41 +1000 Stephen Rothwell  
wrote:

> Subject: [PATCH] turns out that probe_user_write is used in modular code
> 
> Signed-off-by: Stephen Rothwell 
> ---
>  mm/maccess.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/mm/maccess.c b/mm/maccess.c
> index ddfda8e6f4a5..88845eda5047 100644
> --- a/mm/maccess.c
> +++ b/mm/maccess.c
> @@ -246,6 +246,7 @@ long probe_user_write(void __user *dst, const void *src, 
> size_t size)
>   return -EFAULT;
>   return 0;
>  }
> +EXPORT_SYMBOL_GPL(probe_user_write);

Thanks, I shall squish that in and make the appropriate changelog update.


linux-next: build failure after merge of the akpm tree

2020-06-02 Thread Stephen Rothwell
Hi all,

After merging the akpm tree, today's linux-next build (powerpc
ppc64_defconfig) failed like this:

ERROR: modpost: ".probe_user_write" [arch/powerpc/kvm/kvm-hv.ko] undefined!

Caused by patch

  "maccess: unexport probe_kernel_write and probe_user_write"

"These two functions are not used by any modular code." turns out to
not be true :-(

I have added this patch:

From: Stephen Rothwell 
Date: Tue, 2 Jun 2020 19:54:05 +1000
Subject: [PATCH] turns out that probe_user_write is used in modular code

Signed-off-by: Stephen Rothwell 
---
 mm/maccess.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/mm/maccess.c b/mm/maccess.c
index ddfda8e6f4a5..88845eda5047 100644
--- a/mm/maccess.c
+++ b/mm/maccess.c
@@ -246,6 +246,7 @@ long probe_user_write(void __user *dst, const void *src, 
size_t size)
return -EFAULT;
return 0;
 }
+EXPORT_SYMBOL_GPL(probe_user_write);
 
 /**
  * strncpy_from_user_nofault: - Copy a NUL terminated string from unsafe user
-- 
2.26.2

-- 
Cheers,
Stephen Rothwell


pgpi1wBOzDscK.pgp
Description: OpenPGP digital signature


Re: linux-next: build failure after merge of the akpm tree

2020-05-28 Thread Christoph Hellwig
This looks correct, thanks.


linux-next: build failure after merge of the akpm tree

2020-05-28 Thread Stephen Rothwell
Hi all,

After merging the akpm tree, today's linux-next build (x86_64
allmodconfig) failed like this:

drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_process.c: In function 
'kfd_sdma_activity_worker':
drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_process.c:117:2: error: implicit 
declaration of function 'use_mm' [-Werror=implicit-function-declaration]
  117 |  use_mm(mm);
  |  ^~
drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_process.c:144:2: error: implicit 
declaration of function 'unuse_mm' [-Werror=implicit-function-declaration]
  144 |  unuse_mm(mm);
  |  ^~~~

Caused by commit

  d21760f76006 ("kernel: better document the use_mm/unuse_mm API contract")

interacting with commit

  522b89c63370 ("drm/amdkfd: Track SDMA utilization per process")

from the amdgpu tree.

I have added the following patch for today:

rom: Stephen Rothwell 
Date: Thu, 28 May 2020 20:15:34 +1000
Subject: [PATCH] drm/amdkfd: fix up for {un}use_mm() rename

Signed-off-by: Stephen Rothwell 
---
 drivers/gpu/drm/amd/amdkfd/kfd_process.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_process.c 
b/drivers/gpu/drm/amd/amdkfd/kfd_process.c
index db010c5da144..25636789f3d3 100644
--- a/drivers/gpu/drm/amd/amdkfd/kfd_process.c
+++ b/drivers/gpu/drm/amd/amdkfd/kfd_process.c
@@ -114,7 +114,7 @@ static void kfd_sdma_activity_worker(struct work_struct 
*work)
return;
}
 
-   use_mm(mm);
+   kthread_use_mm(mm);
 
dqm_lock(dqm);
 
@@ -141,7 +141,7 @@ static void kfd_sdma_activity_worker(struct work_struct 
*work)
}
 
dqm_unlock(dqm);
-   unuse_mm(mm);
+   kthread_unuse_mm(mm);
mmput(mm);
 }
 
-- 
2.26.2

-- 
Cheers,
Stephen Rothwell


pgp5IQvYXB2VF.pgp
Description: OpenPGP digital signature


Re: linux-next: build failure after merge of the akpm tree

2020-05-25 Thread Stephen Rothwell
Hi John,

On Mon, 25 May 2020 11:18:46 -0700 John Hubbard  wrote:
>
> Yes, looks good. And in fact, Andrew has the same fix-up in the mmotm branch 
> of
> linux-next.git, as
> 
>  commit a76c281a8ddd 
> ("mmap-locking-api-rename-mmap_sem-to-mmap_lock-fix").

For some reason that was not included in the section that gets applied
to linux-next :-(

I have added it to the akpm tree today.
-- 
Cheers,
Stephen Rothwell


pgp7Z4lJLgwRm.pgp
Description: OpenPGP digital signature


Re: linux-next: build failure after merge of the akpm tree

2020-05-25 Thread John Hubbard

On 2020-05-25 05:17, Stephen Rothwell wrote:

Hi all,

After merging the akpm tree, today's linux-next build (x86_64
allmodconfig) failed like this:

In file included from include/linux/kernel.h:14,
  from mm/gup.c:2:
mm/gup.c: In function 'internal_get_user_pages_fast':
mm/gup.c:2732:33: error: 'struct mm_struct' has no member named 'mmap_sem'; did 
you mean 'mmap_base'?
  2732 |   might_lock_read(>mm->mmap_sem);
   | ^~~~

Caused by commit

   64fe66e8a95e ("mmap locking API: rename mmap_sem to mmap_lock")

fron the akpm tree interacting with commit

   b1fc8b5ddb4e ("mm/gup: might_lock_read(mmap_sem) in get_user_pages_fast()")

from the akpm-current tree.

I added the following patch for today.

From: Stephen Rothwell 
Date: Mon, 25 May 2020 22:11:51 +1000
Subject: [PATCH] mm/gup: update for mmap_sem rename

Signed-off-by: Stephen Rothwell 
---
  mm/gup.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/mm/gup.c b/mm/gup.c
index 8977e5fe9843..f4bca3de0b4b 100644
--- a/mm/gup.c
+++ b/mm/gup.c
@@ -2729,7 +2729,7 @@ static int internal_get_user_pages_fast(unsigned long 
start, int nr_pages,
return -EINVAL;
  
  	if (!(gup_flags & FOLL_FAST_ONLY))

-   might_lock_read(>mm->mmap_sem);
+   might_lock_read(>mm->mmap_lock);
  
  	start = untagged_addr(start) & PAGE_MASK;

addr = start;



Yes, looks good. And in fact, Andrew has the same fix-up in the mmotm branch of
linux-next.git, as

commit a76c281a8ddd ("mmap-locking-api-rename-mmap_sem-to-mmap_lock-fix").


thanks,
--
John Hubbard
NVIDIA


linux-next: build failure after merge of the akpm tree

2020-05-25 Thread Stephen Rothwell
Hi all,

After merging the akpm tree, today's linux-next build (x86_64
allmodconfig) failed like this:

In file included from include/linux/kernel.h:14,
 from mm/gup.c:2:
mm/gup.c: In function 'internal_get_user_pages_fast':
mm/gup.c:2732:33: error: 'struct mm_struct' has no member named 'mmap_sem'; did 
you mean 'mmap_base'?
 2732 |   might_lock_read(>mm->mmap_sem);
  | ^~~~

Caused by commit

  64fe66e8a95e ("mmap locking API: rename mmap_sem to mmap_lock")

fron the akpm tree interacting with commit

  b1fc8b5ddb4e ("mm/gup: might_lock_read(mmap_sem) in get_user_pages_fast()")

from the akpm-current tree.

I added the following patch for today.

From: Stephen Rothwell 
Date: Mon, 25 May 2020 22:11:51 +1000
Subject: [PATCH] mm/gup: update for mmap_sem rename

Signed-off-by: Stephen Rothwell 
---
 mm/gup.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/mm/gup.c b/mm/gup.c
index 8977e5fe9843..f4bca3de0b4b 100644
--- a/mm/gup.c
+++ b/mm/gup.c
@@ -2729,7 +2729,7 @@ static int internal_get_user_pages_fast(unsigned long 
start, int nr_pages,
return -EINVAL;
 
if (!(gup_flags & FOLL_FAST_ONLY))
-   might_lock_read(>mm->mmap_sem);
+   might_lock_read(>mm->mmap_lock);
 
start = untagged_addr(start) & PAGE_MASK;
addr = start;
-- 
2.26.2

-- 
Cheers,
Stephen Rothwell


pgp8IDlGwruSN.pgp
Description: OpenPGP digital signature


Re: linux-next: build failure after merge of the akpm tree

2019-02-26 Thread Mike Rapoport
On Tue, Feb 26, 2019 at 06:39:15PM +1100, Stephen Rothwell wrote:
> Hi Andrew,
> 
> After merging the akpm tree, today's linux-next build (powerpc
> allnoconfig) failed like this:
> 
> /home/sfr/next/next/arch/powerpc/kernel/setup_32.c:176:21: error: 
> redefinition of 'alloc_stack'
>  static void *__init alloc_stack(void)
>  ^~~
> /home/sfr/next/next/arch/powerpc/kernel/setup_32.c:165:21: note: previous 
> definition of 'alloc_stack' was here
>  static void *__init alloc_stack(void)
>  ^~~
> 
> Caused by patch
> 
>   "powerpc: use memblock functions returning virtual address"
> 
> from the akpm tree interacting with commit
> 
>   c8e409a33cf8 ("powerpc/irq: use memblock functions returning virtual 
> address")
> 
> from the powerpc tree.
> 
> Both patches added the alloc_stack() function and git resolved it by
> adding both. :-(  I have added a patch to remove one of them.

Yeah, me too :)

https://lore.kernel.org/linux-mm/20190226064032.GA5873@rapoport-lnx/
 
Stephen, sorry, should have cc'ed you

> -- 
> Cheers,
> Stephen Rothwell

-- 
Sincerely yours,
Mike.



linux-next: build failure after merge of the akpm tree

2019-02-25 Thread Stephen Rothwell
Hi Andrew,

After merging the akpm tree, today's linux-next build (powerpc
allnoconfig) failed like this:

/home/sfr/next/next/arch/powerpc/kernel/setup_32.c:176:21: error: redefinition 
of 'alloc_stack'
 static void *__init alloc_stack(void)
 ^~~
/home/sfr/next/next/arch/powerpc/kernel/setup_32.c:165:21: note: previous 
definition of 'alloc_stack' was here
 static void *__init alloc_stack(void)
 ^~~

Caused by patch

  "powerpc: use memblock functions returning virtual address"

from the akpm tree interacting with commit

  c8e409a33cf8 ("powerpc/irq: use memblock functions returning virtual address")

from the powerpc tree.

Both patches added the alloc_stack() function and git resolved it by
adding both. :-(  I have added a patch to remove one of them.



-- 
Cheers,
Stephen Rothwell


pgpyFNi5KgXaz.pgp
Description: OpenPGP digital signature


Re: linux-next: build failure after merge of the akpm tree

2018-12-12 Thread Stephen Rothwell
Hi Anshuman,

On Wed, 12 Dec 2018 22:35:38 +0530 Anshuman Khandual 
 wrote:
>
> On 12/03/2018 12:30 PM, Stephen Rothwell wrote:
> > Hi Andrew,
> > 
> > After merging the akpm tree, today's linux-next build (powerpc_le perf)
> > failed like this:
> > 
> > bench/numa.c:37:10: fatal error: linux/numa.h: No such file or directory
> >  #include 
> >   ^~
> > 
> > Caused by patches
> > 
> >   "mm: replace all open encodings for NUMA_NO_NODE"
> >   "mm-replace-all-open-encodings-for-numa_no_node-fix"
> > 
> > For linux/numa.h to be generally availble to the tools builds, it must
> > be copied into tools/include/linux ...
> > 
> > I have done that copy for today:
> > 
> > From 6dabc11d5513510d0ec0a6b0a4aa8b9051b71516 Mon Sep 17 00:00:00 2001
> > From: Stephen Rothwell 
> > Date: Mon, 3 Dec 2018 17:57:27 +1100
> > Subject: [PATCH] linux/numa.h is now needed for the perf build
> > 
> > Signed-off-by: Stephen Rothwell   
> 
> Hello Stephen,
> 
> I will respin the original patch 
> (https://patchwork.kernel.org/patch/10698089/)
> once more to accommodate new feedbacks from Lubomir Rintel. This patch fixes 
> the
> build problem related to tools/perf. As Lubomir suggested, it might be better 
> to
> split the tools/perf changes ("tools: Replace open encodings for 
> NUMA_NO_NODE")
> from the original patch and then fold this fix onto it with both 
> signed-off-by.
> Does it sound good. Are you okay with it ?

Sounds fine to me.

-- 
Cheers,
Stephen Rothwell


pgpgBF03O_AOy.pgp
Description: OpenPGP digital signature


Re: linux-next: build failure after merge of the akpm tree

2018-12-12 Thread Anshuman Khandual



On 12/03/2018 12:30 PM, Stephen Rothwell wrote:
> Hi Andrew,
> 
> After merging the akpm tree, today's linux-next build (powerpc_le perf)
> failed like this:
> 
> bench/numa.c:37:10: fatal error: linux/numa.h: No such file or directory
>  #include 
>   ^~
> 
> Caused by patches
> 
>   "mm: replace all open encodings for NUMA_NO_NODE"
>   "mm-replace-all-open-encodings-for-numa_no_node-fix"
> 
> For linux/numa.h to be generally availble to the tools builds, it must
> be copied into tools/include/linux ...
> 
> I have done that copy for today:
> 
> From 6dabc11d5513510d0ec0a6b0a4aa8b9051b71516 Mon Sep 17 00:00:00 2001
> From: Stephen Rothwell 
> Date: Mon, 3 Dec 2018 17:57:27 +1100
> Subject: [PATCH] linux/numa.h is now needed for the perf build
> 
> Signed-off-by: Stephen Rothwell 

Hello Stephen,

I will respin the original patch (https://patchwork.kernel.org/patch/10698089/)
once more to accommodate new feedbacks from Lubomir Rintel. This patch fixes the
build problem related to tools/perf. As Lubomir suggested, it might be better to
split the tools/perf changes ("tools: Replace open encodings for NUMA_NO_NODE")
from the original patch and then fold this fix onto it with both signed-off-by.
Does it sound good. Are you okay with it ?

- Anshuman


Re: linux-next: build failure after merge of the akpm tree

2018-12-03 Thread Anshuman Khandual



On 12/03/2018 12:30 PM, Stephen Rothwell wrote:
> Hi Andrew,
> 
> After merging the akpm tree, today's linux-next build (powerpc_le perf)
> failed like this:
> 
> bench/numa.c:37:10: fatal error: linux/numa.h: No such file or directory
>  #include 
>   ^~
> 
> Caused by patches
> 
>   "mm: replace all open encodings for NUMA_NO_NODE"
>   "mm-replace-all-open-encodings-for-numa_no_node-fix"
> 
> For linux/numa.h to be generally availble to the tools builds, it must
> be copied into tools/include/linux ...
> 
> I have done that copy for today:
> 
> From 6dabc11d5513510d0ec0a6b0a4aa8b9051b71516 Mon Sep 17 00:00:00 2001
> From: Stephen Rothwell 
> Date: Mon, 3 Dec 2018 17:57:27 +1100
> Subject: [PATCH] linux/numa.h is now needed for the perf build
> 
> Signed-off-by: Stephen Rothwell 

Makes sense. Thanks Stephen for taking care of this build failure
more than once.

Reviewed-by: Anshuman Khandual 


Re: linux-next: build failure after merge of the akpm tree

2018-12-03 Thread Anshuman Khandual



On 12/03/2018 12:30 PM, Stephen Rothwell wrote:
> Hi Andrew,
> 
> After merging the akpm tree, today's linux-next build (powerpc_le perf)
> failed like this:
> 
> bench/numa.c:37:10: fatal error: linux/numa.h: No such file or directory
>  #include 
>   ^~
> 
> Caused by patches
> 
>   "mm: replace all open encodings for NUMA_NO_NODE"
>   "mm-replace-all-open-encodings-for-numa_no_node-fix"
> 
> For linux/numa.h to be generally availble to the tools builds, it must
> be copied into tools/include/linux ...
> 
> I have done that copy for today:
> 
> From 6dabc11d5513510d0ec0a6b0a4aa8b9051b71516 Mon Sep 17 00:00:00 2001
> From: Stephen Rothwell 
> Date: Mon, 3 Dec 2018 17:57:27 +1100
> Subject: [PATCH] linux/numa.h is now needed for the perf build
> 
> Signed-off-by: Stephen Rothwell 

Makes sense. Thanks Stephen for taking care of this build failure
more than once.

Reviewed-by: Anshuman Khandual 


linux-next: build failure after merge of the akpm tree

2018-12-02 Thread Stephen Rothwell
Hi Andrew,

After merging the akpm tree, today's linux-next build (powerpc_le perf)
failed like this:

bench/numa.c:37:10: fatal error: linux/numa.h: No such file or directory
 #include 
  ^~

Caused by patches

  "mm: replace all open encodings for NUMA_NO_NODE"
  "mm-replace-all-open-encodings-for-numa_no_node-fix"

For linux/numa.h to be generally availble to the tools builds, it must
be copied into tools/include/linux ...

I have done that copy for today:

From 6dabc11d5513510d0ec0a6b0a4aa8b9051b71516 Mon Sep 17 00:00:00 2001
From: Stephen Rothwell 
Date: Mon, 3 Dec 2018 17:57:27 +1100
Subject: [PATCH] linux/numa.h is now needed for the perf build

Signed-off-by: Stephen Rothwell 
---
 tools/include/linux/numa.h | 16 
 1 file changed, 16 insertions(+)
 create mode 100644 tools/include/linux/numa.h

diff --git a/tools/include/linux/numa.h b/tools/include/linux/numa.h
new file mode 100644
index ..110b0e5d0fb0
--- /dev/null
+++ b/tools/include/linux/numa.h
@@ -0,0 +1,16 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+#ifndef _LINUX_NUMA_H
+#define _LINUX_NUMA_H
+
+
+#ifdef CONFIG_NODES_SHIFT
+#define NODES_SHIFT CONFIG_NODES_SHIFT
+#else
+#define NODES_SHIFT 0
+#endif
+
+#define MAX_NUMNODES(1 << NODES_SHIFT)
+
+#defineNUMA_NO_NODE(-1)
+
+#endif /* _LINUX_NUMA_H */
-- 
2.19.1

-- 
Cheers,
Stephen Rothwell


pgp_cz06gl83p.pgp
Description: OpenPGP digital signature


linux-next: build failure after merge of the akpm tree

2018-12-02 Thread Stephen Rothwell
Hi Andrew,

After merging the akpm tree, today's linux-next build (powerpc_le perf)
failed like this:

bench/numa.c:37:10: fatal error: linux/numa.h: No such file or directory
 #include 
  ^~

Caused by patches

  "mm: replace all open encodings for NUMA_NO_NODE"
  "mm-replace-all-open-encodings-for-numa_no_node-fix"

For linux/numa.h to be generally availble to the tools builds, it must
be copied into tools/include/linux ...

I have done that copy for today:

From 6dabc11d5513510d0ec0a6b0a4aa8b9051b71516 Mon Sep 17 00:00:00 2001
From: Stephen Rothwell 
Date: Mon, 3 Dec 2018 17:57:27 +1100
Subject: [PATCH] linux/numa.h is now needed for the perf build

Signed-off-by: Stephen Rothwell 
---
 tools/include/linux/numa.h | 16 
 1 file changed, 16 insertions(+)
 create mode 100644 tools/include/linux/numa.h

diff --git a/tools/include/linux/numa.h b/tools/include/linux/numa.h
new file mode 100644
index ..110b0e5d0fb0
--- /dev/null
+++ b/tools/include/linux/numa.h
@@ -0,0 +1,16 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+#ifndef _LINUX_NUMA_H
+#define _LINUX_NUMA_H
+
+
+#ifdef CONFIG_NODES_SHIFT
+#define NODES_SHIFT CONFIG_NODES_SHIFT
+#else
+#define NODES_SHIFT 0
+#endif
+
+#define MAX_NUMNODES(1 << NODES_SHIFT)
+
+#defineNUMA_NO_NODE(-1)
+
+#endif /* _LINUX_NUMA_H */
-- 
2.19.1

-- 
Cheers,
Stephen Rothwell


pgp_cz06gl83p.pgp
Description: OpenPGP digital signature


Re: linux-next: build failure after merge of the akpm tree

2018-11-30 Thread Anshuman Khandual



On 11/30/2018 11:00 AM, Stephen Rothwell wrote:
> Hi Andrew,
> 
> After merging the akpm tree, today's linux-next build (powerpc_le perf)
> failed like this:
> 
> bench/numa.c: In function 'bind_to_node':
> bench/numa.c:301:21: error: 'NUMA_NO_NODE' undeclared (first use in this 
> function); did you mean 'NUMA_NUM_NODES'?
>   if (target_node == NUMA_NO_NODE) {
>  ^~~~
>  NUMA_NUM_NODES
> bench/numa.c:301:21: note: each undeclared identifier is reported only once 
> for each function it appears in
> bench/numa.c: In function 'bind_to_memnode':
> bench/numa.c:342:14: error: 'NUMA_NO_NODE' undeclared (first use in this 
> function); did you mean 'NUMA_NUM_NODES'?
>   if (node == NUMA_NO_NODE)
>   ^~~~
>   NUMA_NUM_NODES
> bench/numa.c: In function 'init_thread_data':
> bench/numa.c:1366:19: error: 'NUMA_NO_NODE' undeclared (first use in this 
> function); did you mean 'NUMA_NUM_NODES'?
>td->bind_node = NUMA_NO_NODE;
>^~~~
>NUMA_NUM_NODES
> 
> Caused by patch
> 
>   "mm: replace all open encodings for NUMA_NO_NODE"
> 
> I applied the following partial revert for today:

I had skipped this particular file because it includes 'numa.h'. But that does 
not
seem to pull in  though. Could we please add  
instead
of reverting the actual changes from the patch. I can send out another version 
of
the patch if required.

- Anshuman


Re: linux-next: build failure after merge of the akpm tree

2018-11-30 Thread Anshuman Khandual



On 11/30/2018 11:00 AM, Stephen Rothwell wrote:
> Hi Andrew,
> 
> After merging the akpm tree, today's linux-next build (powerpc_le perf)
> failed like this:
> 
> bench/numa.c: In function 'bind_to_node':
> bench/numa.c:301:21: error: 'NUMA_NO_NODE' undeclared (first use in this 
> function); did you mean 'NUMA_NUM_NODES'?
>   if (target_node == NUMA_NO_NODE) {
>  ^~~~
>  NUMA_NUM_NODES
> bench/numa.c:301:21: note: each undeclared identifier is reported only once 
> for each function it appears in
> bench/numa.c: In function 'bind_to_memnode':
> bench/numa.c:342:14: error: 'NUMA_NO_NODE' undeclared (first use in this 
> function); did you mean 'NUMA_NUM_NODES'?
>   if (node == NUMA_NO_NODE)
>   ^~~~
>   NUMA_NUM_NODES
> bench/numa.c: In function 'init_thread_data':
> bench/numa.c:1366:19: error: 'NUMA_NO_NODE' undeclared (first use in this 
> function); did you mean 'NUMA_NUM_NODES'?
>td->bind_node = NUMA_NO_NODE;
>^~~~
>NUMA_NUM_NODES
> 
> Caused by patch
> 
>   "mm: replace all open encodings for NUMA_NO_NODE"
> 
> I applied the following partial revert for today:

I had skipped this particular file because it includes 'numa.h'. But that does 
not
seem to pull in  though. Could we please add  
instead
of reverting the actual changes from the patch. I can send out another version 
of
the patch if required.

- Anshuman


linux-next: build failure after merge of the akpm tree

2018-11-29 Thread Stephen Rothwell
Hi Andrew,

After merging the akpm tree, today's linux-next build (powerpc_le perf)
failed like this:

bench/numa.c: In function 'bind_to_node':
bench/numa.c:301:21: error: 'NUMA_NO_NODE' undeclared (first use in this 
function); did you mean 'NUMA_NUM_NODES'?
  if (target_node == NUMA_NO_NODE) {
 ^~~~
 NUMA_NUM_NODES
bench/numa.c:301:21: note: each undeclared identifier is reported only once for 
each function it appears in
bench/numa.c: In function 'bind_to_memnode':
bench/numa.c:342:14: error: 'NUMA_NO_NODE' undeclared (first use in this 
function); did you mean 'NUMA_NUM_NODES'?
  if (node == NUMA_NO_NODE)
  ^~~~
  NUMA_NUM_NODES
bench/numa.c: In function 'init_thread_data':
bench/numa.c:1366:19: error: 'NUMA_NO_NODE' undeclared (first use in this 
function); did you mean 'NUMA_NUM_NODES'?
   td->bind_node = NUMA_NO_NODE;
   ^~~~
   NUMA_NUM_NODES

Caused by patch

  "mm: replace all open encodings for NUMA_NO_NODE"

I applied the following partial revert for today:

From 765f2fd3d18ca1d4d0783b888d127af784929e3e Mon Sep 17 00:00:00 2001
From: Stephen Rothwell 
Date: Fri, 30 Nov 2018 16:26:32 +1100
Subject: [PATCH] partial revert (perf) of "mm: replace all open encodings for 
NUMA_NO_NODE"

Signed-off-by: Stephen Rothwell 
---
 tools/perf/bench/numa.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/tools/perf/bench/numa.c b/tools/perf/bench/numa.c
index e0ad5f1de226..44195514b19e 100644
--- a/tools/perf/bench/numa.c
+++ b/tools/perf/bench/numa.c
@@ -298,7 +298,7 @@ static cpu_set_t bind_to_node(int target_node)
 
CPU_ZERO();
 
-   if (target_node == NUMA_NO_NODE) {
+   if (target_node == -1) {
for (cpu = 0; cpu < g->p.nr_cpus; cpu++)
CPU_SET(cpu, );
} else {
@@ -339,7 +339,7 @@ static void bind_to_memnode(int node)
unsigned long nodemask;
int ret;
 
-   if (node == NUMA_NO_NODE)
+   if (node == -1)
return;
 
BUG_ON(g->p.nr_nodes > (int)sizeof(nodemask)*8);
@@ -1363,7 +1363,7 @@ static void init_thread_data(void)
int cpu;
 
/* Allow all nodes by default: */
-   td->bind_node = NUMA_NO_NODE;
+   td->bind_node = -1;
 
/* Allow all CPUs by default: */
CPU_ZERO(>bind_cpumask);
-- 
2.19.1

-- 
Cheers,
Stephen Rothwell


pgpsjyYWnF5m0.pgp
Description: OpenPGP digital signature


linux-next: build failure after merge of the akpm tree

2018-11-29 Thread Stephen Rothwell
Hi Andrew,

After merging the akpm tree, today's linux-next build (powerpc_le perf)
failed like this:

bench/numa.c: In function 'bind_to_node':
bench/numa.c:301:21: error: 'NUMA_NO_NODE' undeclared (first use in this 
function); did you mean 'NUMA_NUM_NODES'?
  if (target_node == NUMA_NO_NODE) {
 ^~~~
 NUMA_NUM_NODES
bench/numa.c:301:21: note: each undeclared identifier is reported only once for 
each function it appears in
bench/numa.c: In function 'bind_to_memnode':
bench/numa.c:342:14: error: 'NUMA_NO_NODE' undeclared (first use in this 
function); did you mean 'NUMA_NUM_NODES'?
  if (node == NUMA_NO_NODE)
  ^~~~
  NUMA_NUM_NODES
bench/numa.c: In function 'init_thread_data':
bench/numa.c:1366:19: error: 'NUMA_NO_NODE' undeclared (first use in this 
function); did you mean 'NUMA_NUM_NODES'?
   td->bind_node = NUMA_NO_NODE;
   ^~~~
   NUMA_NUM_NODES

Caused by patch

  "mm: replace all open encodings for NUMA_NO_NODE"

I applied the following partial revert for today:

From 765f2fd3d18ca1d4d0783b888d127af784929e3e Mon Sep 17 00:00:00 2001
From: Stephen Rothwell 
Date: Fri, 30 Nov 2018 16:26:32 +1100
Subject: [PATCH] partial revert (perf) of "mm: replace all open encodings for 
NUMA_NO_NODE"

Signed-off-by: Stephen Rothwell 
---
 tools/perf/bench/numa.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/tools/perf/bench/numa.c b/tools/perf/bench/numa.c
index e0ad5f1de226..44195514b19e 100644
--- a/tools/perf/bench/numa.c
+++ b/tools/perf/bench/numa.c
@@ -298,7 +298,7 @@ static cpu_set_t bind_to_node(int target_node)
 
CPU_ZERO();
 
-   if (target_node == NUMA_NO_NODE) {
+   if (target_node == -1) {
for (cpu = 0; cpu < g->p.nr_cpus; cpu++)
CPU_SET(cpu, );
} else {
@@ -339,7 +339,7 @@ static void bind_to_memnode(int node)
unsigned long nodemask;
int ret;
 
-   if (node == NUMA_NO_NODE)
+   if (node == -1)
return;
 
BUG_ON(g->p.nr_nodes > (int)sizeof(nodemask)*8);
@@ -1363,7 +1363,7 @@ static void init_thread_data(void)
int cpu;
 
/* Allow all nodes by default: */
-   td->bind_node = NUMA_NO_NODE;
+   td->bind_node = -1;
 
/* Allow all CPUs by default: */
CPU_ZERO(>bind_cpumask);
-- 
2.19.1

-- 
Cheers,
Stephen Rothwell


pgpsjyYWnF5m0.pgp
Description: OpenPGP digital signature


Re: linux-next: build failure after merge of the akpm tree

2018-10-16 Thread Ingo Molnar


* Stephen Rothwell  wrote:

> Hi all,
> 
> On Mon, 8 Oct 2018 19:03:41 +1100 Stephen Rothwell  
> wrote:
> >
> > After merging the akpm tree, today's linux-next build (x86_64
> > allmodconfig) failed like this:
> > 
> > arch/x86/mm/kaslr.c:26:10: fatal error: linux/bootmem.h: No such file or 
> > directory
> >  #include 
> >   ^
> > 
> > Caused by patch
> > 
> >   "mm: remove include/linux/bootmem.h"
> > 
> > interacting with commit
> > 
> >   3a387c6d96e6 ("x86/kaslr, ACPI/NUMA: Fix KASLR build error")
> > 
> > from the tip tree.
> > 
> > I have added the following patch for today:
> > 
> > From: Stephen Rothwell 
> > Date: Mon, 8 Oct 2018 18:57:00 +1100
> > Subject: [PATCH] x86/kaslr, ACPI/NUMA: fix for linux/bootmem.h removal
> > 
> > Signed-off-by: Stephen Rothwell 
> > ---
> >  arch/x86/mm/kaslr.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/arch/x86/mm/kaslr.c b/arch/x86/mm/kaslr.c
> > index b3471388288d..ad80bdc690c1 100644
> > --- a/arch/x86/mm/kaslr.c
> > +++ b/arch/x86/mm/kaslr.c
> > @@ -23,7 +23,7 @@
> >  #include 
> >  #include 
> >  #include 
> > -#include 
> > +#include 
> >  
> >  #include 
> >  #include 
> > -- 
> 
> So the above tip tree patch no longer exists, so this one is also no
> longer needed and I have removed it from the akpm tree today.

Yeah, we are reworking this series in WIP.x86/boot, it probably won't 
make v4.20 so I removed it from -next.

Thanks,

Ingo


Re: linux-next: build failure after merge of the akpm tree

2018-10-16 Thread Ingo Molnar


* Stephen Rothwell  wrote:

> Hi all,
> 
> On Mon, 8 Oct 2018 19:03:41 +1100 Stephen Rothwell  
> wrote:
> >
> > After merging the akpm tree, today's linux-next build (x86_64
> > allmodconfig) failed like this:
> > 
> > arch/x86/mm/kaslr.c:26:10: fatal error: linux/bootmem.h: No such file or 
> > directory
> >  #include 
> >   ^
> > 
> > Caused by patch
> > 
> >   "mm: remove include/linux/bootmem.h"
> > 
> > interacting with commit
> > 
> >   3a387c6d96e6 ("x86/kaslr, ACPI/NUMA: Fix KASLR build error")
> > 
> > from the tip tree.
> > 
> > I have added the following patch for today:
> > 
> > From: Stephen Rothwell 
> > Date: Mon, 8 Oct 2018 18:57:00 +1100
> > Subject: [PATCH] x86/kaslr, ACPI/NUMA: fix for linux/bootmem.h removal
> > 
> > Signed-off-by: Stephen Rothwell 
> > ---
> >  arch/x86/mm/kaslr.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/arch/x86/mm/kaslr.c b/arch/x86/mm/kaslr.c
> > index b3471388288d..ad80bdc690c1 100644
> > --- a/arch/x86/mm/kaslr.c
> > +++ b/arch/x86/mm/kaslr.c
> > @@ -23,7 +23,7 @@
> >  #include 
> >  #include 
> >  #include 
> > -#include 
> > +#include 
> >  
> >  #include 
> >  #include 
> > -- 
> 
> So the above tip tree patch no longer exists, so this one is also no
> longer needed and I have removed it from the akpm tree today.

Yeah, we are reworking this series in WIP.x86/boot, it probably won't 
make v4.20 so I removed it from -next.

Thanks,

Ingo


Re: linux-next: build failure after merge of the akpm tree

2018-10-15 Thread Stephen Rothwell
Hi all,

On Mon, 8 Oct 2018 19:03:41 +1100 Stephen Rothwell  
wrote:
>
> After merging the akpm tree, today's linux-next build (x86_64
> allmodconfig) failed like this:
> 
> arch/x86/mm/kaslr.c:26:10: fatal error: linux/bootmem.h: No such file or 
> directory
>  #include 
>   ^
> 
> Caused by patch
> 
>   "mm: remove include/linux/bootmem.h"
> 
> interacting with commit
> 
>   3a387c6d96e6 ("x86/kaslr, ACPI/NUMA: Fix KASLR build error")
> 
> from the tip tree.
> 
> I have added the following patch for today:
> 
> From: Stephen Rothwell 
> Date: Mon, 8 Oct 2018 18:57:00 +1100
> Subject: [PATCH] x86/kaslr, ACPI/NUMA: fix for linux/bootmem.h removal
> 
> Signed-off-by: Stephen Rothwell 
> ---
>  arch/x86/mm/kaslr.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/arch/x86/mm/kaslr.c b/arch/x86/mm/kaslr.c
> index b3471388288d..ad80bdc690c1 100644
> --- a/arch/x86/mm/kaslr.c
> +++ b/arch/x86/mm/kaslr.c
> @@ -23,7 +23,7 @@
>  #include 
>  #include 
>  #include 
> -#include 
> +#include 
>  
>  #include 
>  #include 
> -- 

So the above tip tree patch no longer exists, so this one is also no
longer needed and I have removed it from the akpm tree today.

-- 
Cheers,
Stephen Rothwell


pgpIczDCutsbU.pgp
Description: OpenPGP digital signature


Re: linux-next: build failure after merge of the akpm tree

2018-10-15 Thread Stephen Rothwell
Hi all,

On Mon, 8 Oct 2018 19:03:41 +1100 Stephen Rothwell  
wrote:
>
> After merging the akpm tree, today's linux-next build (x86_64
> allmodconfig) failed like this:
> 
> arch/x86/mm/kaslr.c:26:10: fatal error: linux/bootmem.h: No such file or 
> directory
>  #include 
>   ^
> 
> Caused by patch
> 
>   "mm: remove include/linux/bootmem.h"
> 
> interacting with commit
> 
>   3a387c6d96e6 ("x86/kaslr, ACPI/NUMA: Fix KASLR build error")
> 
> from the tip tree.
> 
> I have added the following patch for today:
> 
> From: Stephen Rothwell 
> Date: Mon, 8 Oct 2018 18:57:00 +1100
> Subject: [PATCH] x86/kaslr, ACPI/NUMA: fix for linux/bootmem.h removal
> 
> Signed-off-by: Stephen Rothwell 
> ---
>  arch/x86/mm/kaslr.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/arch/x86/mm/kaslr.c b/arch/x86/mm/kaslr.c
> index b3471388288d..ad80bdc690c1 100644
> --- a/arch/x86/mm/kaslr.c
> +++ b/arch/x86/mm/kaslr.c
> @@ -23,7 +23,7 @@
>  #include 
>  #include 
>  #include 
> -#include 
> +#include 
>  
>  #include 
>  #include 
> -- 

So the above tip tree patch no longer exists, so this one is also no
longer needed and I have removed it from the akpm tree today.

-- 
Cheers,
Stephen Rothwell


pgpIczDCutsbU.pgp
Description: OpenPGP digital signature


linux-next: build failure after merge of the akpm tree

2018-10-08 Thread Stephen Rothwell
Hi all,

After merging the akpm tree, today's linux-next build (x86_64
allmodconfig) failed like this:

arch/x86/mm/kaslr.c:26:10: fatal error: linux/bootmem.h: No such file or 
directory
 #include 
  ^

Caused by patch

  "mm: remove include/linux/bootmem.h"

interacting with commit

  3a387c6d96e6 ("x86/kaslr, ACPI/NUMA: Fix KASLR build error")

from the tip tree.

I have added the following patch for today:

From: Stephen Rothwell 
Date: Mon, 8 Oct 2018 18:57:00 +1100
Subject: [PATCH] x86/kaslr, ACPI/NUMA: fix for linux/bootmem.h removal

Signed-off-by: Stephen Rothwell 
---
 arch/x86/mm/kaslr.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/x86/mm/kaslr.c b/arch/x86/mm/kaslr.c
index b3471388288d..ad80bdc690c1 100644
--- a/arch/x86/mm/kaslr.c
+++ b/arch/x86/mm/kaslr.c
@@ -23,7 +23,7 @@
 #include 
 #include 
 #include 
-#include 
+#include 
 
 #include 
 #include 
-- 
2.18.0

-- 
Cheers,
Stephen Rothwell


pgpBtZcPEWbkU.pgp
Description: OpenPGP digital signature


linux-next: build failure after merge of the akpm tree

2018-10-08 Thread Stephen Rothwell
Hi all,

After merging the akpm tree, today's linux-next build (x86_64
allmodconfig) failed like this:

arch/x86/mm/kaslr.c:26:10: fatal error: linux/bootmem.h: No such file or 
directory
 #include 
  ^

Caused by patch

  "mm: remove include/linux/bootmem.h"

interacting with commit

  3a387c6d96e6 ("x86/kaslr, ACPI/NUMA: Fix KASLR build error")

from the tip tree.

I have added the following patch for today:

From: Stephen Rothwell 
Date: Mon, 8 Oct 2018 18:57:00 +1100
Subject: [PATCH] x86/kaslr, ACPI/NUMA: fix for linux/bootmem.h removal

Signed-off-by: Stephen Rothwell 
---
 arch/x86/mm/kaslr.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/x86/mm/kaslr.c b/arch/x86/mm/kaslr.c
index b3471388288d..ad80bdc690c1 100644
--- a/arch/x86/mm/kaslr.c
+++ b/arch/x86/mm/kaslr.c
@@ -23,7 +23,7 @@
 #include 
 #include 
 #include 
-#include 
+#include 
 
 #include 
 #include 
-- 
2.18.0

-- 
Cheers,
Stephen Rothwell


pgpBtZcPEWbkU.pgp
Description: OpenPGP digital signature


linux-next: build failure after merge of the akpm tree

2018-10-02 Thread Stephen Rothwell
Hi all,

After merging the akpm tree, today's linux-next build (x86_64 allnoconfig)
failed like this:


Caused by commit

  a20bb0583751 ("dma-direct: add an explicit dma_direct_get_required_mask")

from the dma-mappgin tree conflicting with patch

  "mm: remove include/linux/bootmem.h"

I have applied the following merge fix patch for today.

From: Stephen Rothwell 
Date: Tue, 2 Oct 2018 18:49:02 +1000
Subject: [PATCH] dma-direct: fix up for the removal of linux/bootmem.h

Signed-off-by: Stephen Rothwell 
---
 kernel/dma/direct.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/kernel/dma/direct.c b/kernel/dma/direct.c
index 170bd322a94a..5a0806b5351b 100644
--- a/kernel/dma/direct.c
+++ b/kernel/dma/direct.c
@@ -4,7 +4,7 @@
  *
  * DMA operations that map physical memory directly without using an IOMMU.
  */
-#include  /* for max_pfn */
+#include  /* for max_pfn */
 #include 
 #include 
 #include 
-- 
2.18.0

-- 
Cheers,
Stephen Rothwell


pgpDjxi5jZJEQ.pgp
Description: OpenPGP digital signature


linux-next: build failure after merge of the akpm tree

2018-10-02 Thread Stephen Rothwell
Hi all,

After merging the akpm tree, today's linux-next build (x86_64 allnoconfig)
failed like this:


Caused by commit

  a20bb0583751 ("dma-direct: add an explicit dma_direct_get_required_mask")

from the dma-mappgin tree conflicting with patch

  "mm: remove include/linux/bootmem.h"

I have applied the following merge fix patch for today.

From: Stephen Rothwell 
Date: Tue, 2 Oct 2018 18:49:02 +1000
Subject: [PATCH] dma-direct: fix up for the removal of linux/bootmem.h

Signed-off-by: Stephen Rothwell 
---
 kernel/dma/direct.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/kernel/dma/direct.c b/kernel/dma/direct.c
index 170bd322a94a..5a0806b5351b 100644
--- a/kernel/dma/direct.c
+++ b/kernel/dma/direct.c
@@ -4,7 +4,7 @@
  *
  * DMA operations that map physical memory directly without using an IOMMU.
  */
-#include  /* for max_pfn */
+#include  /* for max_pfn */
 #include 
 #include 
 #include 
-- 
2.18.0

-- 
Cheers,
Stephen Rothwell


pgpDjxi5jZJEQ.pgp
Description: OpenPGP digital signature


Re: linux-next: build failure after merge of the akpm tree

2018-03-21 Thread Stephen Rothwell
Hi Greg,

On Wed, 21 Mar 2018 11:02:08 +0100 Greg Kroah-Hartman 
 wrote:
>
> Patch is now queued up, thanks.

Excellent.

-- 
Cheers,
Stephen Rothwell


pgpMuNJUwYuTO.pgp
Description: OpenPGP digital signature


Re: linux-next: build failure after merge of the akpm tree

2018-03-21 Thread Stephen Rothwell
Hi Greg,

On Wed, 21 Mar 2018 11:02:08 +0100 Greg Kroah-Hartman 
 wrote:
>
> Patch is now queued up, thanks.

Excellent.

-- 
Cheers,
Stephen Rothwell


pgpMuNJUwYuTO.pgp
Description: OpenPGP digital signature


Re: linux-next: build failure after merge of the akpm tree

2018-03-21 Thread Greg Kroah-Hartman
On Wed, Mar 21, 2018 at 07:17:27PM +1100, Stephen Rothwell wrote:
> Hi Andrew,
> 
> After merging the akpm tree, today's linux-next build (powerpc
> allyesconfig) failed like this:
> 
> drivers/base/firmware_loader/fallback.c: In function 'map_fw_priv_pages':
> drivers/base/firmware_loader/fallback.c:232:2: error: implicit declaration of 
> function 'vunmap'; did you mean 'kunmap'? 
> [-Werror=implicit-function-declaration]
>   vunmap(fw_priv->data);
>   ^~
>   kunmap
> drivers/base/firmware_loader/fallback.c:233:18: error: implicit declaration 
> of function 'vmap'; did you mean 'kmap'? 
> [-Werror=implicit-function-declaration]
>   fw_priv->data = vmap(fw_priv->pages, fw_priv->nr_pages, 0,
>   ^~~~
>   kmap
> drivers/base/firmware_loader/fallback.c:233:16: warning: assignment makes 
> pointer from integer without a cast [-Wint-conversion]
>   fw_priv->data = vmap(fw_priv->pages, fw_priv->nr_pages, 0,
> ^
> drivers/base/firmware_loader/fallback.c: In function 'firmware_loading_store':
> drivers/base/firmware_loader/fallback.c:274:4: error: implicit declaration of 
> function 'vfree'; did you mean 'kvfree'? 
> [-Werror=implicit-function-declaration]
> vfree(fw_priv->pages);
> ^
> kvfree
> drivers/base/firmware_loader/fallback.c: In function 'fw_realloc_pages':
> drivers/base/firmware_loader/fallback.c:405:15: error: implicit declaration 
> of function 'vmalloc'; did you mean 'kvmalloc'? 
> [-Werror=implicit-function-declaration]
>new_pages = vmalloc(new_array_size * sizeof(void *));
>^~~
>kvmalloc
> drivers/base/firmware_loader/fallback.c:405:13: warning: assignment makes 
> pointer from integer without a cast [-Wint-conversion]
>new_pages = vmalloc(new_array_size * sizeof(void *));
>  ^
> 
> Maybe caused by patch
> 
>   "headers: untangle kmemleak.h from mm.h"
> 
> Anyway this file should explicitly include linux/vmalloc.h since it uses
> stuff in there, so I have added the following patch for today (I think
> this could just be applied to the driver-core tree ...):

Patch is now queued up, thanks.

greg k-h


Re: linux-next: build failure after merge of the akpm tree

2018-03-21 Thread Greg Kroah-Hartman
On Wed, Mar 21, 2018 at 07:17:27PM +1100, Stephen Rothwell wrote:
> Hi Andrew,
> 
> After merging the akpm tree, today's linux-next build (powerpc
> allyesconfig) failed like this:
> 
> drivers/base/firmware_loader/fallback.c: In function 'map_fw_priv_pages':
> drivers/base/firmware_loader/fallback.c:232:2: error: implicit declaration of 
> function 'vunmap'; did you mean 'kunmap'? 
> [-Werror=implicit-function-declaration]
>   vunmap(fw_priv->data);
>   ^~
>   kunmap
> drivers/base/firmware_loader/fallback.c:233:18: error: implicit declaration 
> of function 'vmap'; did you mean 'kmap'? 
> [-Werror=implicit-function-declaration]
>   fw_priv->data = vmap(fw_priv->pages, fw_priv->nr_pages, 0,
>   ^~~~
>   kmap
> drivers/base/firmware_loader/fallback.c:233:16: warning: assignment makes 
> pointer from integer without a cast [-Wint-conversion]
>   fw_priv->data = vmap(fw_priv->pages, fw_priv->nr_pages, 0,
> ^
> drivers/base/firmware_loader/fallback.c: In function 'firmware_loading_store':
> drivers/base/firmware_loader/fallback.c:274:4: error: implicit declaration of 
> function 'vfree'; did you mean 'kvfree'? 
> [-Werror=implicit-function-declaration]
> vfree(fw_priv->pages);
> ^
> kvfree
> drivers/base/firmware_loader/fallback.c: In function 'fw_realloc_pages':
> drivers/base/firmware_loader/fallback.c:405:15: error: implicit declaration 
> of function 'vmalloc'; did you mean 'kvmalloc'? 
> [-Werror=implicit-function-declaration]
>new_pages = vmalloc(new_array_size * sizeof(void *));
>^~~
>kvmalloc
> drivers/base/firmware_loader/fallback.c:405:13: warning: assignment makes 
> pointer from integer without a cast [-Wint-conversion]
>new_pages = vmalloc(new_array_size * sizeof(void *));
>  ^
> 
> Maybe caused by patch
> 
>   "headers: untangle kmemleak.h from mm.h"
> 
> Anyway this file should explicitly include linux/vmalloc.h since it uses
> stuff in there, so I have added the following patch for today (I think
> this could just be applied to the driver-core tree ...):

Patch is now queued up, thanks.

greg k-h


linux-next: build failure after merge of the akpm tree

2018-03-21 Thread Stephen Rothwell
Hi Andrew,

After merging the akpm tree, today's linux-next build (powerpc
allyesconfig) failed like this:

drivers/base/firmware_loader/fallback.c: In function 'map_fw_priv_pages':
drivers/base/firmware_loader/fallback.c:232:2: error: implicit declaration of 
function 'vunmap'; did you mean 'kunmap'? 
[-Werror=implicit-function-declaration]
  vunmap(fw_priv->data);
  ^~
  kunmap
drivers/base/firmware_loader/fallback.c:233:18: error: implicit declaration of 
function 'vmap'; did you mean 'kmap'? [-Werror=implicit-function-declaration]
  fw_priv->data = vmap(fw_priv->pages, fw_priv->nr_pages, 0,
  ^~~~
  kmap
drivers/base/firmware_loader/fallback.c:233:16: warning: assignment makes 
pointer from integer without a cast [-Wint-conversion]
  fw_priv->data = vmap(fw_priv->pages, fw_priv->nr_pages, 0,
^
drivers/base/firmware_loader/fallback.c: In function 'firmware_loading_store':
drivers/base/firmware_loader/fallback.c:274:4: error: implicit declaration of 
function 'vfree'; did you mean 'kvfree'? [-Werror=implicit-function-declaration]
vfree(fw_priv->pages);
^
kvfree
drivers/base/firmware_loader/fallback.c: In function 'fw_realloc_pages':
drivers/base/firmware_loader/fallback.c:405:15: error: implicit declaration of 
function 'vmalloc'; did you mean 'kvmalloc'? 
[-Werror=implicit-function-declaration]
   new_pages = vmalloc(new_array_size * sizeof(void *));
   ^~~
   kvmalloc
drivers/base/firmware_loader/fallback.c:405:13: warning: assignment makes 
pointer from integer without a cast [-Wint-conversion]
   new_pages = vmalloc(new_array_size * sizeof(void *));
 ^

Maybe caused by patch

  "headers: untangle kmemleak.h from mm.h"

Anyway this file should explicitly include linux/vmalloc.h since it uses
stuff in there, so I have added the following patch for today (I think
this could just be applied to the driver-core tree ...):

From: Stephen Rothwell 
Date: Wed, 21 Mar 2018 19:06:35 +1100
Subject: [PATCH] firmware: explicitly include vmalloc.h

After some other include file changes, fixes:

drivers/base/firmware_loader/fallback.c: In function 'map_fw_priv_pages':
drivers/base/firmware_loader/fallback.c:232:2: error: implicit declaration of 
function 'vunmap'; did you mean 'kunmap'? 
[-Werror=implicit-function-declaration]
  vunmap(fw_priv->data);
  ^~
  kunmap
drivers/base/firmware_loader/fallback.c:233:18: error: implicit declaration of 
function 'vmap'; did you mean 'kmap'? [-Werror=implicit-function-declaration]
  fw_priv->data = vmap(fw_priv->pages, fw_priv->nr_pages, 0,
  ^~~~
  kmap
drivers/base/firmware_loader/fallback.c:233:16: warning: assignment makes 
pointer from integer without a cast [-Wint-conversion]
  fw_priv->data = vmap(fw_priv->pages, fw_priv->nr_pages, 0,
^
drivers/base/firmware_loader/fallback.c: In function 'firmware_loading_store':
drivers/base/firmware_loader/fallback.c:274:4: error: implicit declaration of 
function 'vfree'; did you mean 'kvfree'? [-Werror=implicit-function-declaration]
vfree(fw_priv->pages);
^
kvfree
drivers/base/firmware_loader/fallback.c: In function 'fw_realloc_pages':
drivers/base/firmware_loader/fallback.c:405:15: error: implicit declaration of 
function 'vmalloc'; did you mean 'kvmalloc'? 
[-Werror=implicit-function-declaration]
   new_pages = vmalloc(new_array_size * sizeof(void *));
   ^~~
   kvmalloc
drivers/base/firmware_loader/fallback.c:405:13: warning: assignment makes 
pointer from integer without a cast [-Wint-conversion]
   new_pages = vmalloc(new_array_size * sizeof(void *));
 ^

Signed-off-by: Stephen Rothwell 
---
 drivers/base/firmware_loader/fallback.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/base/firmware_loader/fallback.c 
b/drivers/base/firmware_loader/fallback.c
index 0a8ec7fec585..d231bbcb95d7 100644
--- a/drivers/base/firmware_loader/fallback.c
+++ b/drivers/base/firmware_loader/fallback.c
@@ -8,6 +8,7 @@
 #include 
 #include 
 #include 
+#include 
 
 #include "fallback.h"
 #include "firmware.h"
-- 
2.16.1

-- 
Cheers,
Stephen Rothwell


pgp12PyaCcEgf.pgp
Description: OpenPGP digital signature


linux-next: build failure after merge of the akpm tree

2018-03-21 Thread Stephen Rothwell
Hi Andrew,

After merging the akpm tree, today's linux-next build (powerpc
allyesconfig) failed like this:

drivers/base/firmware_loader/fallback.c: In function 'map_fw_priv_pages':
drivers/base/firmware_loader/fallback.c:232:2: error: implicit declaration of 
function 'vunmap'; did you mean 'kunmap'? 
[-Werror=implicit-function-declaration]
  vunmap(fw_priv->data);
  ^~
  kunmap
drivers/base/firmware_loader/fallback.c:233:18: error: implicit declaration of 
function 'vmap'; did you mean 'kmap'? [-Werror=implicit-function-declaration]
  fw_priv->data = vmap(fw_priv->pages, fw_priv->nr_pages, 0,
  ^~~~
  kmap
drivers/base/firmware_loader/fallback.c:233:16: warning: assignment makes 
pointer from integer without a cast [-Wint-conversion]
  fw_priv->data = vmap(fw_priv->pages, fw_priv->nr_pages, 0,
^
drivers/base/firmware_loader/fallback.c: In function 'firmware_loading_store':
drivers/base/firmware_loader/fallback.c:274:4: error: implicit declaration of 
function 'vfree'; did you mean 'kvfree'? [-Werror=implicit-function-declaration]
vfree(fw_priv->pages);
^
kvfree
drivers/base/firmware_loader/fallback.c: In function 'fw_realloc_pages':
drivers/base/firmware_loader/fallback.c:405:15: error: implicit declaration of 
function 'vmalloc'; did you mean 'kvmalloc'? 
[-Werror=implicit-function-declaration]
   new_pages = vmalloc(new_array_size * sizeof(void *));
   ^~~
   kvmalloc
drivers/base/firmware_loader/fallback.c:405:13: warning: assignment makes 
pointer from integer without a cast [-Wint-conversion]
   new_pages = vmalloc(new_array_size * sizeof(void *));
 ^

Maybe caused by patch

  "headers: untangle kmemleak.h from mm.h"

Anyway this file should explicitly include linux/vmalloc.h since it uses
stuff in there, so I have added the following patch for today (I think
this could just be applied to the driver-core tree ...):

From: Stephen Rothwell 
Date: Wed, 21 Mar 2018 19:06:35 +1100
Subject: [PATCH] firmware: explicitly include vmalloc.h

After some other include file changes, fixes:

drivers/base/firmware_loader/fallback.c: In function 'map_fw_priv_pages':
drivers/base/firmware_loader/fallback.c:232:2: error: implicit declaration of 
function 'vunmap'; did you mean 'kunmap'? 
[-Werror=implicit-function-declaration]
  vunmap(fw_priv->data);
  ^~
  kunmap
drivers/base/firmware_loader/fallback.c:233:18: error: implicit declaration of 
function 'vmap'; did you mean 'kmap'? [-Werror=implicit-function-declaration]
  fw_priv->data = vmap(fw_priv->pages, fw_priv->nr_pages, 0,
  ^~~~
  kmap
drivers/base/firmware_loader/fallback.c:233:16: warning: assignment makes 
pointer from integer without a cast [-Wint-conversion]
  fw_priv->data = vmap(fw_priv->pages, fw_priv->nr_pages, 0,
^
drivers/base/firmware_loader/fallback.c: In function 'firmware_loading_store':
drivers/base/firmware_loader/fallback.c:274:4: error: implicit declaration of 
function 'vfree'; did you mean 'kvfree'? [-Werror=implicit-function-declaration]
vfree(fw_priv->pages);
^
kvfree
drivers/base/firmware_loader/fallback.c: In function 'fw_realloc_pages':
drivers/base/firmware_loader/fallback.c:405:15: error: implicit declaration of 
function 'vmalloc'; did you mean 'kvmalloc'? 
[-Werror=implicit-function-declaration]
   new_pages = vmalloc(new_array_size * sizeof(void *));
   ^~~
   kvmalloc
drivers/base/firmware_loader/fallback.c:405:13: warning: assignment makes 
pointer from integer without a cast [-Wint-conversion]
   new_pages = vmalloc(new_array_size * sizeof(void *));
 ^

Signed-off-by: Stephen Rothwell 
---
 drivers/base/firmware_loader/fallback.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/base/firmware_loader/fallback.c 
b/drivers/base/firmware_loader/fallback.c
index 0a8ec7fec585..d231bbcb95d7 100644
--- a/drivers/base/firmware_loader/fallback.c
+++ b/drivers/base/firmware_loader/fallback.c
@@ -8,6 +8,7 @@
 #include 
 #include 
 #include 
+#include 
 
 #include "fallback.h"
 #include "firmware.h"
-- 
2.16.1

-- 
Cheers,
Stephen Rothwell


pgp12PyaCcEgf.pgp
Description: OpenPGP digital signature


linux-next: build failure after merge of the akpm tree

2017-11-05 Thread Stephen Rothwell
Hi Andrew,

After merging the akpm tree, today's linux-next build (arm
multi_v7_defconfig) produced this warning:

lib/cpumask.c: In function 'cpumask_next_and':
lib/cpumask.c:39:9: error: implicit declaration of function 'find_next_and_bit' 
[-Werror=implicit-function-declaration]
  return find_next_and_bit(cpumask_bits(src1p), cpumask_bits(src2p),
 ^
cc1: some warnings being treated as errors

Introduced by commit

  1eae9bb7e6f2 ("lib: optimize cpumask_next_and()")

I have reverted that commit for today.

-- 
Cheers,
Stephen Rothwell


linux-next: build failure after merge of the akpm tree

2017-11-05 Thread Stephen Rothwell
Hi Andrew,

After merging the akpm tree, today's linux-next build (arm
multi_v7_defconfig) produced this warning:

lib/cpumask.c: In function 'cpumask_next_and':
lib/cpumask.c:39:9: error: implicit declaration of function 'find_next_and_bit' 
[-Werror=implicit-function-declaration]
  return find_next_and_bit(cpumask_bits(src1p), cpumask_bits(src2p),
 ^
cc1: some warnings being treated as errors

Introduced by commit

  1eae9bb7e6f2 ("lib: optimize cpumask_next_and()")

I have reverted that commit for today.

-- 
Cheers,
Stephen Rothwell


Re: linux-next: build failure after merge of the akpm tree

2017-08-01 Thread Arnd Bergmann
On Tue, Aug 1, 2017 at 8:40 PM, Kees Cook  wrote:
>>
>> I don't know why this has turned up now.  I have just left it broken
>> for now and would appreciate any fix.
>
> Thanks for the heads-up! I'm not sure why this suddenly appeared
> either, but Arnd has sent a patch for this now.

The main difference I see that can impact gcc's optimization steps is the
unreachable() that was there in BUG() but is absent in WARN().

It's possible that the compiler decided that the entire code path leading
up to the unreachable() couldn't happen, so it dropped the
__read_overflow2() call as well.

  Arnd


Re: linux-next: build failure after merge of the akpm tree

2017-08-01 Thread Arnd Bergmann
On Tue, Aug 1, 2017 at 8:40 PM, Kees Cook  wrote:
>>
>> I don't know why this has turned up now.  I have just left it broken
>> for now and would appreciate any fix.
>
> Thanks for the heads-up! I'm not sure why this suddenly appeared
> either, but Arnd has sent a patch for this now.

The main difference I see that can impact gcc's optimization steps is the
unreachable() that was there in BUG() but is absent in WARN().

It's possible that the compiler decided that the entire code path leading
up to the unreachable() couldn't happen, so it dropped the
__read_overflow2() call as well.

  Arnd


Re: linux-next: build failure after merge of the akpm tree

2017-08-01 Thread Kees Cook
On Mon, Jul 31, 2017 at 11:25 PM, Stephen Rothwell  
wrote:
> Hi Andrew,
>
> After merging the akpm tree, today's linux-next build (powerpc
> allyesconfig) failed like this:
>
> In file included from arch/powerpc/include/asm/paca.h:19:0,
>  from arch/powerpc/include/asm/hw_irq.h:42,
>  from arch/powerpc/include/asm/irqflags.h:11,
>  from include/linux/irqflags.h:15,
>  from include/linux/spinlock.h:53,
>  from include/linux/wait.h:8,
>  from include/linux/wait_bit.h:7,
>  from include/linux/fs.h:5,
>  from include/linux/buffer_head.h:11,
>  from fs/adfs/dir_f.c:12:
> In function 'memcpy',
> inlined from '__adfs_dir_put' at fs/adfs/dir_f.c:318:2,
> inlined from 'adfs_f_update' at fs/adfs/dir_f.c:403:2:
> include/linux/string.h:305:4: error: call to '__read_overflow2' declared with 
> attribute error: detected read beyond size of object passed as 2nd parameter
> __read_overflow2();
> ^
>
> I don't know why this has turned up now.  I have just left it broken
> for now and would appreciate any fix.

Thanks for the heads-up! I'm not sure why this suddenly appeared
either, but Arnd has sent a patch for this now.

-Kees

-- 
Kees Cook
Pixel Security


Re: linux-next: build failure after merge of the akpm tree

2017-08-01 Thread Kees Cook
On Mon, Jul 31, 2017 at 11:25 PM, Stephen Rothwell  
wrote:
> Hi Andrew,
>
> After merging the akpm tree, today's linux-next build (powerpc
> allyesconfig) failed like this:
>
> In file included from arch/powerpc/include/asm/paca.h:19:0,
>  from arch/powerpc/include/asm/hw_irq.h:42,
>  from arch/powerpc/include/asm/irqflags.h:11,
>  from include/linux/irqflags.h:15,
>  from include/linux/spinlock.h:53,
>  from include/linux/wait.h:8,
>  from include/linux/wait_bit.h:7,
>  from include/linux/fs.h:5,
>  from include/linux/buffer_head.h:11,
>  from fs/adfs/dir_f.c:12:
> In function 'memcpy',
> inlined from '__adfs_dir_put' at fs/adfs/dir_f.c:318:2,
> inlined from 'adfs_f_update' at fs/adfs/dir_f.c:403:2:
> include/linux/string.h:305:4: error: call to '__read_overflow2' declared with 
> attribute error: detected read beyond size of object passed as 2nd parameter
> __read_overflow2();
> ^
>
> I don't know why this has turned up now.  I have just left it broken
> for now and would appreciate any fix.

Thanks for the heads-up! I'm not sure why this suddenly appeared
either, but Arnd has sent a patch for this now.

-Kees

-- 
Kees Cook
Pixel Security


linux-next: build failure after merge of the akpm tree

2017-08-01 Thread Stephen Rothwell
Hi Andrew,

After merging the akpm tree, today's linux-next build (powerpc
allyesconfig) failed like this:

In file included from arch/powerpc/include/asm/paca.h:19:0,
 from arch/powerpc/include/asm/hw_irq.h:42,
 from arch/powerpc/include/asm/irqflags.h:11,
 from include/linux/irqflags.h:15,
 from include/linux/spinlock.h:53,
 from include/linux/wait.h:8,
 from include/linux/wait_bit.h:7,
 from include/linux/fs.h:5,
 from include/linux/buffer_head.h:11,
 from fs/adfs/dir_f.c:12:
In function 'memcpy',
inlined from '__adfs_dir_put' at fs/adfs/dir_f.c:318:2,
inlined from 'adfs_f_update' at fs/adfs/dir_f.c:403:2:
include/linux/string.h:305:4: error: call to '__read_overflow2' declared with 
attribute error: detected read beyond size of object passed as 2nd parameter
__read_overflow2();
^

I don't know why this has turned up now.  I have just left it broken
for now and would appreciate any fix.

-- 
Cheers,
Stephen Rothwell


linux-next: build failure after merge of the akpm tree

2017-08-01 Thread Stephen Rothwell
Hi Andrew,

After merging the akpm tree, today's linux-next build (powerpc
allyesconfig) failed like this:

In file included from arch/powerpc/include/asm/paca.h:19:0,
 from arch/powerpc/include/asm/hw_irq.h:42,
 from arch/powerpc/include/asm/irqflags.h:11,
 from include/linux/irqflags.h:15,
 from include/linux/spinlock.h:53,
 from include/linux/wait.h:8,
 from include/linux/wait_bit.h:7,
 from include/linux/fs.h:5,
 from include/linux/buffer_head.h:11,
 from fs/adfs/dir_f.c:12:
In function 'memcpy',
inlined from '__adfs_dir_put' at fs/adfs/dir_f.c:318:2,
inlined from 'adfs_f_update' at fs/adfs/dir_f.c:403:2:
include/linux/string.h:305:4: error: call to '__read_overflow2' declared with 
attribute error: detected read beyond size of object passed as 2nd parameter
__read_overflow2();
^

I don't know why this has turned up now.  I have just left it broken
for now and would appreciate any fix.

-- 
Cheers,
Stephen Rothwell


Re: linux-next: build failure after merge of the akpm tree

2017-07-03 Thread David Miller
From: Stephen Rothwell 
Date: Fri, 30 Jun 2017 16:32:41 +1000

> From: Stephen Rothwell 
> Date: Fri, 30 Jun 2017 16:24:35 +1000
> Subject: [PATCH] net/mlx5: fix memcpy limit?
> 
> Signed-off-by: Stephen Rothwell 

Applied, thanks.


Re: linux-next: build failure after merge of the akpm tree

2017-07-03 Thread David Miller
From: Stephen Rothwell 
Date: Fri, 30 Jun 2017 16:32:41 +1000

> From: Stephen Rothwell 
> Date: Fri, 30 Jun 2017 16:24:35 +1000
> Subject: [PATCH] net/mlx5: fix memcpy limit?
> 
> Signed-off-by: Stephen Rothwell 

Applied, thanks.


Re: linux-next: build failure after merge of the akpm tree

2017-07-03 Thread Stephen Rothwell
Hi all,

On Fri, 30 Jun 2017 16:32:41 +1000 Stephen Rothwell  
wrote:
>
> After merging the akpm tree, today's linux-next build (x86_64
> allmodconfig) failed like this:
> 
> In file included from include/linux/bitmap.h:8:0,
>  from include/linux/cpumask.h:11,
>  from include/linux/mm_types_task.h:13,
>  from include/linux/mm_types.h:4,
>  from include/linux/kmemcheck.h:4,
>  from include/linux/skbuff.h:18,
>  from include/linux/if_ether.h:23,
>  from include/linux/etherdevice.h:25,
>  from drivers/net/ethernet/mellanox/mlx5/core/fpga/cmd.c:33:
> In function 'memcpy',
> inlined from 'mlx5_fpga_query_qp' at 
> drivers/net/ethernet/mellanox/mlx5/core/fpga/cmd.c:194:2:
> include/linux/string.h:315:4: error: call to '__read_overflow2' declared with 
> attribute error: detected read beyond size of object passed as 2nd parameter
> __read_overflow2();
> ^
> 
> Caused by commit
> 
>   c151149cc4db ("include/linux/string.h: add the option of fortified string.h 
> functions")
> 
> interacting with commit
> 
>   6062118d5cd2 ("net/mlx5: FPGA, Add FW commands for FPGA QPs")
> 
> from the net-next tree.
> 
> I took a guess and tried the following patch which seemed to work.
> 
> From: Stephen Rothwell 
> Date: Fri, 30 Jun 2017 16:24:35 +1000
> Subject: [PATCH] net/mlx5: fix memcpy limit?
> 
> Signed-off-by: Stephen Rothwell 
> ---
>  drivers/net/ethernet/mellanox/mlx5/core/fpga/cmd.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/net/ethernet/mellanox/mlx5/core/fpga/cmd.c 
> b/drivers/net/ethernet/mellanox/mlx5/core/fpga/cmd.c
> index 5cb855fd618f..e37453d838db 100644
> --- a/drivers/net/ethernet/mellanox/mlx5/core/fpga/cmd.c
> +++ b/drivers/net/ethernet/mellanox/mlx5/core/fpga/cmd.c
> @@ -191,7 +191,7 @@ int mlx5_fpga_query_qp(struct mlx5_core_dev *dev,
>   if (ret)
>   return ret;
>  
> - memcpy(fpga_qpc, MLX5_ADDR_OF(fpga_query_qp_out, in, fpga_qpc),
> + memcpy(fpga_qpc, MLX5_ADDR_OF(fpga_query_qp_out, out, fpga_qpc),
>  MLX5_FLD_SZ_BYTES(fpga_query_qp_out, fpga_qpc));
>   return ret;
>  }
> -- 
> 2.11.0

Again today ... so is the fix correct?  if so, Dave should apply it, if
not someone should supply a correct fix for Dave.

-- 
Cheers,
Stephen Rothwell


Re: linux-next: build failure after merge of the akpm tree

2017-07-03 Thread Stephen Rothwell
Hi all,

On Fri, 30 Jun 2017 16:32:41 +1000 Stephen Rothwell  
wrote:
>
> After merging the akpm tree, today's linux-next build (x86_64
> allmodconfig) failed like this:
> 
> In file included from include/linux/bitmap.h:8:0,
>  from include/linux/cpumask.h:11,
>  from include/linux/mm_types_task.h:13,
>  from include/linux/mm_types.h:4,
>  from include/linux/kmemcheck.h:4,
>  from include/linux/skbuff.h:18,
>  from include/linux/if_ether.h:23,
>  from include/linux/etherdevice.h:25,
>  from drivers/net/ethernet/mellanox/mlx5/core/fpga/cmd.c:33:
> In function 'memcpy',
> inlined from 'mlx5_fpga_query_qp' at 
> drivers/net/ethernet/mellanox/mlx5/core/fpga/cmd.c:194:2:
> include/linux/string.h:315:4: error: call to '__read_overflow2' declared with 
> attribute error: detected read beyond size of object passed as 2nd parameter
> __read_overflow2();
> ^
> 
> Caused by commit
> 
>   c151149cc4db ("include/linux/string.h: add the option of fortified string.h 
> functions")
> 
> interacting with commit
> 
>   6062118d5cd2 ("net/mlx5: FPGA, Add FW commands for FPGA QPs")
> 
> from the net-next tree.
> 
> I took a guess and tried the following patch which seemed to work.
> 
> From: Stephen Rothwell 
> Date: Fri, 30 Jun 2017 16:24:35 +1000
> Subject: [PATCH] net/mlx5: fix memcpy limit?
> 
> Signed-off-by: Stephen Rothwell 
> ---
>  drivers/net/ethernet/mellanox/mlx5/core/fpga/cmd.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/net/ethernet/mellanox/mlx5/core/fpga/cmd.c 
> b/drivers/net/ethernet/mellanox/mlx5/core/fpga/cmd.c
> index 5cb855fd618f..e37453d838db 100644
> --- a/drivers/net/ethernet/mellanox/mlx5/core/fpga/cmd.c
> +++ b/drivers/net/ethernet/mellanox/mlx5/core/fpga/cmd.c
> @@ -191,7 +191,7 @@ int mlx5_fpga_query_qp(struct mlx5_core_dev *dev,
>   if (ret)
>   return ret;
>  
> - memcpy(fpga_qpc, MLX5_ADDR_OF(fpga_query_qp_out, in, fpga_qpc),
> + memcpy(fpga_qpc, MLX5_ADDR_OF(fpga_query_qp_out, out, fpga_qpc),
>  MLX5_FLD_SZ_BYTES(fpga_query_qp_out, fpga_qpc));
>   return ret;
>  }
> -- 
> 2.11.0

Again today ... so is the fix correct?  if so, Dave should apply it, if
not someone should supply a correct fix for Dave.

-- 
Cheers,
Stephen Rothwell


linux-next: build failure after merge of the akpm tree

2017-06-30 Thread Stephen Rothwell
Hi all,

After merging the akpm tree, today's linux-next build (x86_64
allmodconfig) failed like this:

In file included from include/linux/bitmap.h:8:0,
 from include/linux/cpumask.h:11,
 from include/linux/mm_types_task.h:13,
 from include/linux/mm_types.h:4,
 from include/linux/kmemcheck.h:4,
 from include/linux/skbuff.h:18,
 from include/linux/if_ether.h:23,
 from include/linux/etherdevice.h:25,
 from drivers/net/ethernet/mellanox/mlx5/core/fpga/cmd.c:33:
In function 'memcpy',
inlined from 'mlx5_fpga_query_qp' at 
drivers/net/ethernet/mellanox/mlx5/core/fpga/cmd.c:194:2:
include/linux/string.h:315:4: error: call to '__read_overflow2' declared with 
attribute error: detected read beyond size of object passed as 2nd parameter
__read_overflow2();
^

Caused by commit

  c151149cc4db ("include/linux/string.h: add the option of fortified string.h 
functions")

interacting with commit

  6062118d5cd2 ("net/mlx5: FPGA, Add FW commands for FPGA QPs")

from the net-next tree.

I took a guess and tried the following patch which seemed to work.

From: Stephen Rothwell 
Date: Fri, 30 Jun 2017 16:24:35 +1000
Subject: [PATCH] net/mlx5: fix memcpy limit?

Signed-off-by: Stephen Rothwell 
---
 drivers/net/ethernet/mellanox/mlx5/core/fpga/cmd.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/mellanox/mlx5/core/fpga/cmd.c 
b/drivers/net/ethernet/mellanox/mlx5/core/fpga/cmd.c
index 5cb855fd618f..e37453d838db 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/fpga/cmd.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/fpga/cmd.c
@@ -191,7 +191,7 @@ int mlx5_fpga_query_qp(struct mlx5_core_dev *dev,
if (ret)
return ret;
 
-   memcpy(fpga_qpc, MLX5_ADDR_OF(fpga_query_qp_out, in, fpga_qpc),
+   memcpy(fpga_qpc, MLX5_ADDR_OF(fpga_query_qp_out, out, fpga_qpc),
   MLX5_FLD_SZ_BYTES(fpga_query_qp_out, fpga_qpc));
return ret;
 }
-- 
2.11.0

-- 
Cheers,
Stephen Rothwell


linux-next: build failure after merge of the akpm tree

2017-06-30 Thread Stephen Rothwell
Hi all,

After merging the akpm tree, today's linux-next build (x86_64
allmodconfig) failed like this:

In file included from include/linux/bitmap.h:8:0,
 from include/linux/cpumask.h:11,
 from include/linux/mm_types_task.h:13,
 from include/linux/mm_types.h:4,
 from include/linux/kmemcheck.h:4,
 from include/linux/skbuff.h:18,
 from include/linux/if_ether.h:23,
 from include/linux/etherdevice.h:25,
 from drivers/net/ethernet/mellanox/mlx5/core/fpga/cmd.c:33:
In function 'memcpy',
inlined from 'mlx5_fpga_query_qp' at 
drivers/net/ethernet/mellanox/mlx5/core/fpga/cmd.c:194:2:
include/linux/string.h:315:4: error: call to '__read_overflow2' declared with 
attribute error: detected read beyond size of object passed as 2nd parameter
__read_overflow2();
^

Caused by commit

  c151149cc4db ("include/linux/string.h: add the option of fortified string.h 
functions")

interacting with commit

  6062118d5cd2 ("net/mlx5: FPGA, Add FW commands for FPGA QPs")

from the net-next tree.

I took a guess and tried the following patch which seemed to work.

From: Stephen Rothwell 
Date: Fri, 30 Jun 2017 16:24:35 +1000
Subject: [PATCH] net/mlx5: fix memcpy limit?

Signed-off-by: Stephen Rothwell 
---
 drivers/net/ethernet/mellanox/mlx5/core/fpga/cmd.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/mellanox/mlx5/core/fpga/cmd.c 
b/drivers/net/ethernet/mellanox/mlx5/core/fpga/cmd.c
index 5cb855fd618f..e37453d838db 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/fpga/cmd.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/fpga/cmd.c
@@ -191,7 +191,7 @@ int mlx5_fpga_query_qp(struct mlx5_core_dev *dev,
if (ret)
return ret;
 
-   memcpy(fpga_qpc, MLX5_ADDR_OF(fpga_query_qp_out, in, fpga_qpc),
+   memcpy(fpga_qpc, MLX5_ADDR_OF(fpga_query_qp_out, out, fpga_qpc),
   MLX5_FLD_SZ_BYTES(fpga_query_qp_out, fpga_qpc));
return ret;
 }
-- 
2.11.0

-- 
Cheers,
Stephen Rothwell


Re: linux-next: build failure after merge of the akpm tree

2017-06-26 Thread Stephen Rothwell
Hi Michal,

On Mon, 26 Jun 2017 09:13:46 +0200 Michal Hocko  wrote:
>
> On Mon 26-06-17 16:53:43, Stephen Rothwell wrote:
> > 
> > After merging the akpm tree, today's linux-next build (sparc64 defconfig)
> > failed like this:
> > 
> > arch/sparc/kernel/mdesc.c: In function 'mdesc_kmalloc':
> > arch/sparc/kernel/mdesc.c:208:48: error: '__GFP_REPEAT' undeclared (first 
> > use in this function)
> >   base = kmalloc(handle_size + 15, GFP_KERNEL | __GFP_REPEAT);
> > ^
> > 
> > Caused by commit
> > 
> >   726ad49b664b ("mm, tree wide: replace __GFP_REPEAT by __GFP_RETRY_MAYFAIL 
> > with more useful semantic")
> > 
> > interacting with commit
> > 
> >   0ab2fcd69dbf ("sparc64: mdesc: use __GFP_REPEAT action modifier for VM 
> > allocation")
> > 
> > from the sparc-next tree.
> > 
> > For now I have applied the following (I expect it to be replaced with
> > something better):  
> 
> You simply want s@__GFP_REPEAT@__GFP_RETRY_MAYFAIL@

OK, I have replaced the patch with this:

From: Stephen Rothwell 
Date: Mon, 26 Jun 2017 16:47:46 +1000
Subject: [PATCH] paper over the removal of __GFP_REPEAT for now

Signed-off-by: Stephen Rothwell 
---
 arch/sparc/kernel/mdesc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/sparc/kernel/mdesc.c b/arch/sparc/kernel/mdesc.c
index e4b4e790bf89..c9ecd5abf5bf 100644
--- a/arch/sparc/kernel/mdesc.c
+++ b/arch/sparc/kernel/mdesc.c
@@ -205,7 +205,7 @@ static struct mdesc_handle *mdesc_kmalloc(unsigned int 
mdesc_size)
handle_size = (sizeof(struct mdesc_handle) -
   sizeof(struct mdesc_hdr) +
   mdesc_size);
-   base = kmalloc(handle_size + 15, GFP_KERNEL | __GFP_REPEAT);
+   base = kmalloc(handle_size + 15, GFP_KERNEL | __GFP_RETRY_MAYFAIL);
if (!base)
return NULL;
 
-- 
2.11.0

-- 
Cheers,
Stephen Rothwell


Re: linux-next: build failure after merge of the akpm tree

2017-06-26 Thread Stephen Rothwell
Hi Michal,

On Mon, 26 Jun 2017 09:13:46 +0200 Michal Hocko  wrote:
>
> On Mon 26-06-17 16:53:43, Stephen Rothwell wrote:
> > 
> > After merging the akpm tree, today's linux-next build (sparc64 defconfig)
> > failed like this:
> > 
> > arch/sparc/kernel/mdesc.c: In function 'mdesc_kmalloc':
> > arch/sparc/kernel/mdesc.c:208:48: error: '__GFP_REPEAT' undeclared (first 
> > use in this function)
> >   base = kmalloc(handle_size + 15, GFP_KERNEL | __GFP_REPEAT);
> > ^
> > 
> > Caused by commit
> > 
> >   726ad49b664b ("mm, tree wide: replace __GFP_REPEAT by __GFP_RETRY_MAYFAIL 
> > with more useful semantic")
> > 
> > interacting with commit
> > 
> >   0ab2fcd69dbf ("sparc64: mdesc: use __GFP_REPEAT action modifier for VM 
> > allocation")
> > 
> > from the sparc-next tree.
> > 
> > For now I have applied the following (I expect it to be replaced with
> > something better):  
> 
> You simply want s@__GFP_REPEAT@__GFP_RETRY_MAYFAIL@

OK, I have replaced the patch with this:

From: Stephen Rothwell 
Date: Mon, 26 Jun 2017 16:47:46 +1000
Subject: [PATCH] paper over the removal of __GFP_REPEAT for now

Signed-off-by: Stephen Rothwell 
---
 arch/sparc/kernel/mdesc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/sparc/kernel/mdesc.c b/arch/sparc/kernel/mdesc.c
index e4b4e790bf89..c9ecd5abf5bf 100644
--- a/arch/sparc/kernel/mdesc.c
+++ b/arch/sparc/kernel/mdesc.c
@@ -205,7 +205,7 @@ static struct mdesc_handle *mdesc_kmalloc(unsigned int 
mdesc_size)
handle_size = (sizeof(struct mdesc_handle) -
   sizeof(struct mdesc_hdr) +
   mdesc_size);
-   base = kmalloc(handle_size + 15, GFP_KERNEL | __GFP_REPEAT);
+   base = kmalloc(handle_size + 15, GFP_KERNEL | __GFP_RETRY_MAYFAIL);
if (!base)
return NULL;
 
-- 
2.11.0

-- 
Cheers,
Stephen Rothwell


Re: linux-next: build failure after merge of the akpm tree

2017-06-26 Thread Michal Hocko
On Mon 26-06-17 16:53:43, Stephen Rothwell wrote:
> Hi Andrew,
> 
> After merging the akpm tree, today's linux-next build (sparc64 defconfig)
> failed like this:
> 
> arch/sparc/kernel/mdesc.c: In function 'mdesc_kmalloc':
> arch/sparc/kernel/mdesc.c:208:48: error: '__GFP_REPEAT' undeclared (first use 
> in this function)
>   base = kmalloc(handle_size + 15, GFP_KERNEL | __GFP_REPEAT);
> ^
> 
> Caused by commit
> 
>   726ad49b664b ("mm, tree wide: replace __GFP_REPEAT by __GFP_RETRY_MAYFAIL 
> with more useful semantic")
> 
> interacting with commit
> 
>   0ab2fcd69dbf ("sparc64: mdesc: use __GFP_REPEAT action modifier for VM 
> allocation")
> 
> from the sparc-next tree.
> 
> For now I have applied the following (I expect it to be replaced with
> something better):

You simply want s@__GFP_REPEAT@__GFP_RETRY_MAYFAIL@

> 
> From: Stephen Rothwell 
> Date: Mon, 26 Jun 2017 16:47:46 +1000
> Subject: [PATCH] paper over the removal of __GFP_REPEAT for now
> 
> Signed-off-by: Stephen Rothwell 
> ---
>  arch/sparc/kernel/mdesc.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/arch/sparc/kernel/mdesc.c b/arch/sparc/kernel/mdesc.c
> index e4b4e790bf89..c9ecd5abf5bf 100644
> --- a/arch/sparc/kernel/mdesc.c
> +++ b/arch/sparc/kernel/mdesc.c
> @@ -205,7 +205,7 @@ static struct mdesc_handle *mdesc_kmalloc(unsigned int 
> mdesc_size)
>   handle_size = (sizeof(struct mdesc_handle) -
>  sizeof(struct mdesc_hdr) +
>  mdesc_size);
> - base = kmalloc(handle_size + 15, GFP_KERNEL | __GFP_REPEAT);
> + base = kmalloc(handle_size + 15, GFP_KERNEL /* | __GFP_REPEAT */);
>   if (!base)
>   return NULL;
>  
> -- 
> 2.11.0
> 
> -- 
> Cheers,
> Stephen Rothwell

-- 
Michal Hocko
SUSE Labs


Re: linux-next: build failure after merge of the akpm tree

2017-06-26 Thread Michal Hocko
On Mon 26-06-17 16:53:43, Stephen Rothwell wrote:
> Hi Andrew,
> 
> After merging the akpm tree, today's linux-next build (sparc64 defconfig)
> failed like this:
> 
> arch/sparc/kernel/mdesc.c: In function 'mdesc_kmalloc':
> arch/sparc/kernel/mdesc.c:208:48: error: '__GFP_REPEAT' undeclared (first use 
> in this function)
>   base = kmalloc(handle_size + 15, GFP_KERNEL | __GFP_REPEAT);
> ^
> 
> Caused by commit
> 
>   726ad49b664b ("mm, tree wide: replace __GFP_REPEAT by __GFP_RETRY_MAYFAIL 
> with more useful semantic")
> 
> interacting with commit
> 
>   0ab2fcd69dbf ("sparc64: mdesc: use __GFP_REPEAT action modifier for VM 
> allocation")
> 
> from the sparc-next tree.
> 
> For now I have applied the following (I expect it to be replaced with
> something better):

You simply want s@__GFP_REPEAT@__GFP_RETRY_MAYFAIL@

> 
> From: Stephen Rothwell 
> Date: Mon, 26 Jun 2017 16:47:46 +1000
> Subject: [PATCH] paper over the removal of __GFP_REPEAT for now
> 
> Signed-off-by: Stephen Rothwell 
> ---
>  arch/sparc/kernel/mdesc.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/arch/sparc/kernel/mdesc.c b/arch/sparc/kernel/mdesc.c
> index e4b4e790bf89..c9ecd5abf5bf 100644
> --- a/arch/sparc/kernel/mdesc.c
> +++ b/arch/sparc/kernel/mdesc.c
> @@ -205,7 +205,7 @@ static struct mdesc_handle *mdesc_kmalloc(unsigned int 
> mdesc_size)
>   handle_size = (sizeof(struct mdesc_handle) -
>  sizeof(struct mdesc_hdr) +
>  mdesc_size);
> - base = kmalloc(handle_size + 15, GFP_KERNEL | __GFP_REPEAT);
> + base = kmalloc(handle_size + 15, GFP_KERNEL /* | __GFP_REPEAT */);
>   if (!base)
>   return NULL;
>  
> -- 
> 2.11.0
> 
> -- 
> Cheers,
> Stephen Rothwell

-- 
Michal Hocko
SUSE Labs


linux-next: build failure after merge of the akpm tree

2017-06-26 Thread Stephen Rothwell
Hi Andrew,

After merging the akpm tree, today's linux-next build (sparc64 defconfig)
failed like this:

arch/sparc/kernel/mdesc.c: In function 'mdesc_kmalloc':
arch/sparc/kernel/mdesc.c:208:48: error: '__GFP_REPEAT' undeclared (first use 
in this function)
  base = kmalloc(handle_size + 15, GFP_KERNEL | __GFP_REPEAT);
^

Caused by commit

  726ad49b664b ("mm, tree wide: replace __GFP_REPEAT by __GFP_RETRY_MAYFAIL 
with more useful semantic")

interacting with commit

  0ab2fcd69dbf ("sparc64: mdesc: use __GFP_REPEAT action modifier for VM 
allocation")

from the sparc-next tree.

For now I have applied the following (I expect it to be replaced with
something better):

From: Stephen Rothwell 
Date: Mon, 26 Jun 2017 16:47:46 +1000
Subject: [PATCH] paper over the removal of __GFP_REPEAT for now

Signed-off-by: Stephen Rothwell 
---
 arch/sparc/kernel/mdesc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/sparc/kernel/mdesc.c b/arch/sparc/kernel/mdesc.c
index e4b4e790bf89..c9ecd5abf5bf 100644
--- a/arch/sparc/kernel/mdesc.c
+++ b/arch/sparc/kernel/mdesc.c
@@ -205,7 +205,7 @@ static struct mdesc_handle *mdesc_kmalloc(unsigned int 
mdesc_size)
handle_size = (sizeof(struct mdesc_handle) -
   sizeof(struct mdesc_hdr) +
   mdesc_size);
-   base = kmalloc(handle_size + 15, GFP_KERNEL | __GFP_REPEAT);
+   base = kmalloc(handle_size + 15, GFP_KERNEL /* | __GFP_REPEAT */);
if (!base)
return NULL;
 
-- 
2.11.0

-- 
Cheers,
Stephen Rothwell


linux-next: build failure after merge of the akpm tree

2017-06-26 Thread Stephen Rothwell
Hi Andrew,

After merging the akpm tree, today's linux-next build (sparc64 defconfig)
failed like this:

arch/sparc/kernel/mdesc.c: In function 'mdesc_kmalloc':
arch/sparc/kernel/mdesc.c:208:48: error: '__GFP_REPEAT' undeclared (first use 
in this function)
  base = kmalloc(handle_size + 15, GFP_KERNEL | __GFP_REPEAT);
^

Caused by commit

  726ad49b664b ("mm, tree wide: replace __GFP_REPEAT by __GFP_RETRY_MAYFAIL 
with more useful semantic")

interacting with commit

  0ab2fcd69dbf ("sparc64: mdesc: use __GFP_REPEAT action modifier for VM 
allocation")

from the sparc-next tree.

For now I have applied the following (I expect it to be replaced with
something better):

From: Stephen Rothwell 
Date: Mon, 26 Jun 2017 16:47:46 +1000
Subject: [PATCH] paper over the removal of __GFP_REPEAT for now

Signed-off-by: Stephen Rothwell 
---
 arch/sparc/kernel/mdesc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/sparc/kernel/mdesc.c b/arch/sparc/kernel/mdesc.c
index e4b4e790bf89..c9ecd5abf5bf 100644
--- a/arch/sparc/kernel/mdesc.c
+++ b/arch/sparc/kernel/mdesc.c
@@ -205,7 +205,7 @@ static struct mdesc_handle *mdesc_kmalloc(unsigned int 
mdesc_size)
handle_size = (sizeof(struct mdesc_handle) -
   sizeof(struct mdesc_hdr) +
   mdesc_size);
-   base = kmalloc(handle_size + 15, GFP_KERNEL | __GFP_REPEAT);
+   base = kmalloc(handle_size + 15, GFP_KERNEL /* | __GFP_REPEAT */);
if (!base)
return NULL;
 
-- 
2.11.0

-- 
Cheers,
Stephen Rothwell


linux-next: build failure after merge of the akpm tree

2017-04-20 Thread Stephen Rothwell
Hi all,

After merging the akpm tree, today's linux-next build (x86_64
allmodconfig) failed like this:

fs/gfs2/bmap.c: In function 'sweep_bh_for_rgrps':
fs/gfs2/bmap.c:1075:5: error: 'CURRENT_TIME' undeclared (first use in this 
function)
 CURRENT_TIME;
 ^
fs/gfs2/bmap.c:1075:5: note: each undeclared identifier is reported only once 
for each function it appears in
fs/gfs2/bmap.c: In function 'trunc_dealloc':
fs/gfs2/bmap.c:1296:47: error: 'CURRENT_TIME' undeclared (first use in this 
function)
   ip->i_inode.i_mtime = ip->i_inode.i_ctime = CURRENT_TIME;
   ^

Caused by patch

  "time: delete CURRENT_TIME_SEC and CURRENT_TIME"

interacting with commit

  d552a2b9b33e ("GFS2: Non-recursive delete")

from the gfs2 tree.

I have applied the following fix patch for today:

From: Stephen Rothwell 
Date: Thu, 20 Apr 2017 16:14:15 +1000
Subject: [PATCH] gfs2: replace CURRENT_TIME with current_time

Signed-off-by: Stephen Rothwell 
---
 fs/gfs2/bmap.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/fs/gfs2/bmap.c b/fs/gfs2/bmap.c
index 3814a60e0aea..4d810be532dd 100644
--- a/fs/gfs2/bmap.c
+++ b/fs/gfs2/bmap.c
@@ -1072,7 +1072,7 @@ static int sweep_bh_for_rgrps(struct gfs2_inode *ip, 
struct gfs2_holder *rd_gh,
/* Every transaction boundary, we rewrite the dinode
   to keep its di_blocks current in case of failure. */
ip->i_inode.i_mtime = ip->i_inode.i_ctime =
-   CURRENT_TIME;
+   current_time(>i_inode);
gfs2_trans_add_meta(ip->i_gl, dibh);
gfs2_dinode_out(ip, dibh->b_data);
up_write(>i_rw_mutex);
@@ -1293,7 +1293,7 @@ static int trunc_dealloc(struct gfs2_inode *ip, u64 
newsize)
gfs2_statfs_change(sdp, 0, +btotal, 0);
gfs2_quota_change(ip, -(s64)btotal, ip->i_inode.i_uid,
  ip->i_inode.i_gid);
-   ip->i_inode.i_mtime = ip->i_inode.i_ctime = CURRENT_TIME;
+   ip->i_inode.i_mtime = ip->i_inode.i_ctime = 
current_time(>i_inode);
gfs2_trans_add_meta(ip->i_gl, dibh);
gfs2_dinode_out(ip, dibh->b_data);
up_write(>i_rw_mutex);
-- 
2.11.0

-- 
Cheers,
Stephen Rothwell


linux-next: build failure after merge of the akpm tree

2017-04-20 Thread Stephen Rothwell
Hi all,

After merging the akpm tree, today's linux-next build (x86_64
allmodconfig) failed like this:

fs/gfs2/bmap.c: In function 'sweep_bh_for_rgrps':
fs/gfs2/bmap.c:1075:5: error: 'CURRENT_TIME' undeclared (first use in this 
function)
 CURRENT_TIME;
 ^
fs/gfs2/bmap.c:1075:5: note: each undeclared identifier is reported only once 
for each function it appears in
fs/gfs2/bmap.c: In function 'trunc_dealloc':
fs/gfs2/bmap.c:1296:47: error: 'CURRENT_TIME' undeclared (first use in this 
function)
   ip->i_inode.i_mtime = ip->i_inode.i_ctime = CURRENT_TIME;
   ^

Caused by patch

  "time: delete CURRENT_TIME_SEC and CURRENT_TIME"

interacting with commit

  d552a2b9b33e ("GFS2: Non-recursive delete")

from the gfs2 tree.

I have applied the following fix patch for today:

From: Stephen Rothwell 
Date: Thu, 20 Apr 2017 16:14:15 +1000
Subject: [PATCH] gfs2: replace CURRENT_TIME with current_time

Signed-off-by: Stephen Rothwell 
---
 fs/gfs2/bmap.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/fs/gfs2/bmap.c b/fs/gfs2/bmap.c
index 3814a60e0aea..4d810be532dd 100644
--- a/fs/gfs2/bmap.c
+++ b/fs/gfs2/bmap.c
@@ -1072,7 +1072,7 @@ static int sweep_bh_for_rgrps(struct gfs2_inode *ip, 
struct gfs2_holder *rd_gh,
/* Every transaction boundary, we rewrite the dinode
   to keep its di_blocks current in case of failure. */
ip->i_inode.i_mtime = ip->i_inode.i_ctime =
-   CURRENT_TIME;
+   current_time(>i_inode);
gfs2_trans_add_meta(ip->i_gl, dibh);
gfs2_dinode_out(ip, dibh->b_data);
up_write(>i_rw_mutex);
@@ -1293,7 +1293,7 @@ static int trunc_dealloc(struct gfs2_inode *ip, u64 
newsize)
gfs2_statfs_change(sdp, 0, +btotal, 0);
gfs2_quota_change(ip, -(s64)btotal, ip->i_inode.i_uid,
  ip->i_inode.i_gid);
-   ip->i_inode.i_mtime = ip->i_inode.i_ctime = CURRENT_TIME;
+   ip->i_inode.i_mtime = ip->i_inode.i_ctime = 
current_time(>i_inode);
gfs2_trans_add_meta(ip->i_gl, dibh);
gfs2_dinode_out(ip, dibh->b_data);
up_write(>i_rw_mutex);
-- 
2.11.0

-- 
Cheers,
Stephen Rothwell


linux-next: build failure after merge of the akpm tree

2017-04-18 Thread Stephen Rothwell
Hi all,

After merging the akpm tree, today's linux-next build (x86_64
allmodconfig) failed like this:

arch/x86/kernel/kprobes/opt.c: In function 'arch_prepare_optimized_kprobe':
arch/x86/kernel/kprobes/opt.c:357:2: error: implicit declaration of function 
'set_memory_rw' [-Werror=implicit-function-declaration]
  set_memory_rw((unsigned long)buf & PAGE_MASK, 1);
  ^
arch/x86/kernel/kprobes/opt.c:380:2: error: implicit declaration of function 
'set_memory_ro' [-Werror=implicit-function-declaration]
  set_memory_ro((unsigned long)buf & PAGE_MASK, 1);
  ^
arch/x86/kernel/kprobes/core.c: In function 'arch_copy_kprobe':
arch/x86/kernel/kprobes/core.c:424:2: error: implicit declaration of function 
'set_memory_rw' [-Werror=implicit-function-declaration]
  set_memory_rw((unsigned long)p->ainsn.insn & PAGE_MASK, 1);
  ^
arch/x86/kernel/kprobes/core.c:437:2: error: implicit declaration of function 
'set_memory_ro' [-Werror=implicit-function-declaration]
  set_memory_ro((unsigned long)p->ainsn.insn & PAGE_MASK, 1);
  ^

Probably caused by commit

  f276e80d1e7b ("treewide: decouple cacheflush.h and set_memory.h")

interacting with commit

  d0381c81c2f7 ("kprobes/x86: Set kprobes pages read-only")

from the tip tree.

I applied this merge fix patch:

From: Stephen Rothwell 
Date: Tue, 18 Apr 2017 17:59:09 +1000
Subject: [PATCH] kprobes/x86: merge fix for set_memory.h decoupling

Signed-off-by: Stephen Rothwell 
---
 arch/x86/kernel/kprobes/core.c | 1 +
 arch/x86/kernel/kprobes/opt.c  | 1 +
 2 files changed, 2 insertions(+)

diff --git a/arch/x86/kernel/kprobes/core.c b/arch/x86/kernel/kprobes/core.c
index 19e1f2a6d7b0..5b2bbfbb3712 100644
--- a/arch/x86/kernel/kprobes/core.c
+++ b/arch/x86/kernel/kprobes/core.c
@@ -61,6 +61,7 @@
 #include 
 #include 
 #include 
+#include 
 
 #include "common.h"
 
diff --git a/arch/x86/kernel/kprobes/opt.c b/arch/x86/kernel/kprobes/opt.c
index 9aadff3d0902..901c640d152f 100644
--- a/arch/x86/kernel/kprobes/opt.c
+++ b/arch/x86/kernel/kprobes/opt.c
@@ -37,6 +37,7 @@
 #include 
 #include 
 #include 
+#include 
 
 #include "common.h"
 
-- 
2.11.0

-- 
Cheers,
Stephen Rothwell


linux-next: build failure after merge of the akpm tree

2017-04-18 Thread Stephen Rothwell
Hi all,

After merging the akpm tree, today's linux-next build (x86_64
allmodconfig) failed like this:

arch/x86/kernel/kprobes/opt.c: In function 'arch_prepare_optimized_kprobe':
arch/x86/kernel/kprobes/opt.c:357:2: error: implicit declaration of function 
'set_memory_rw' [-Werror=implicit-function-declaration]
  set_memory_rw((unsigned long)buf & PAGE_MASK, 1);
  ^
arch/x86/kernel/kprobes/opt.c:380:2: error: implicit declaration of function 
'set_memory_ro' [-Werror=implicit-function-declaration]
  set_memory_ro((unsigned long)buf & PAGE_MASK, 1);
  ^
arch/x86/kernel/kprobes/core.c: In function 'arch_copy_kprobe':
arch/x86/kernel/kprobes/core.c:424:2: error: implicit declaration of function 
'set_memory_rw' [-Werror=implicit-function-declaration]
  set_memory_rw((unsigned long)p->ainsn.insn & PAGE_MASK, 1);
  ^
arch/x86/kernel/kprobes/core.c:437:2: error: implicit declaration of function 
'set_memory_ro' [-Werror=implicit-function-declaration]
  set_memory_ro((unsigned long)p->ainsn.insn & PAGE_MASK, 1);
  ^

Probably caused by commit

  f276e80d1e7b ("treewide: decouple cacheflush.h and set_memory.h")

interacting with commit

  d0381c81c2f7 ("kprobes/x86: Set kprobes pages read-only")

from the tip tree.

I applied this merge fix patch:

From: Stephen Rothwell 
Date: Tue, 18 Apr 2017 17:59:09 +1000
Subject: [PATCH] kprobes/x86: merge fix for set_memory.h decoupling

Signed-off-by: Stephen Rothwell 
---
 arch/x86/kernel/kprobes/core.c | 1 +
 arch/x86/kernel/kprobes/opt.c  | 1 +
 2 files changed, 2 insertions(+)

diff --git a/arch/x86/kernel/kprobes/core.c b/arch/x86/kernel/kprobes/core.c
index 19e1f2a6d7b0..5b2bbfbb3712 100644
--- a/arch/x86/kernel/kprobes/core.c
+++ b/arch/x86/kernel/kprobes/core.c
@@ -61,6 +61,7 @@
 #include 
 #include 
 #include 
+#include 
 
 #include "common.h"
 
diff --git a/arch/x86/kernel/kprobes/opt.c b/arch/x86/kernel/kprobes/opt.c
index 9aadff3d0902..901c640d152f 100644
--- a/arch/x86/kernel/kprobes/opt.c
+++ b/arch/x86/kernel/kprobes/opt.c
@@ -37,6 +37,7 @@
 #include 
 #include 
 #include 
+#include 
 
 #include "common.h"
 
-- 
2.11.0

-- 
Cheers,
Stephen Rothwell


linux-next: build failure after merge of the akpm tree

2017-04-10 Thread Stephen Rothwell
Hi Andrew,

After merging the akpm tree, today's linux-next build (x86_64
allmodconfig) failed like this:

mm/migrate.c: In function 'migrate_vma_insert_page':
mm/migrate.c:2491:23: error: passing argument 2 of 'pud_alloc' from 
incompatible pointer type [-Werror=incompatible-pointer-types]
  pudp = pud_alloc(mm, pgdp, addr);
   ^
In file included from include/linux/migrate.h:4:0,
 from mm/migrate.c:15:
include/linux/mm.h:1677:22: note: expected 'p4d_t * {aka struct  *}' 
but argument is of type 'pgd_t * {aka struct  *}'
 static inline pud_t *pud_alloc(struct mm_struct *mm, p4d_t *p4d,
  ^

Caused by patch

  "mm/migrate: allow migrate_vma() to alloc new page on empty entry"

interacting with commit

  c2febafc6773 ("mm: convert generic code to 5-level paging")

from Linus' tree (v4.11-rc2).

I applied the following fix patch:

From: Stephen Rothwell 
Date: Mon, 10 Apr 2017 17:09:15 +1000
Subject: [PATCH] mm/migrate: allow migrate_vma() to alloc new page on empty
 entry fix

Signed-off-by: Stephen Rothwell 
---
 mm/migrate.c | 6 +-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/mm/migrate.c b/mm/migrate.c
index e4b555f9a689..7958dfa01b16 100644
--- a/mm/migrate.c
+++ b/mm/migrate.c
@@ -2478,6 +2478,7 @@ static void migrate_vma_insert_page(struct migrate_vma 
*migrate,
struct mem_cgroup *memcg;
spinlock_t *ptl;
pgd_t *pgdp;
+   p4d_t *p4dp;
pud_t *pudp;
pmd_t *pmdp;
pte_t *ptep;
@@ -2488,7 +2489,10 @@ static void migrate_vma_insert_page(struct migrate_vma 
*migrate,
goto abort;
 
pgdp = pgd_offset(mm, addr);
-   pudp = pud_alloc(mm, pgdp, addr);
+   p4dp = p4d_alloc(mm, pgdp, addr);
+   if (!p4dp)
+   goto abort;
+   pudp = pud_alloc(mm, p4dp, addr);
if (!pudp)
goto abort;
pmdp = pmd_alloc(mm, pudp, addr);
-- 
2.11.0

-- 
Cheers,
Stephen Rothwell


linux-next: build failure after merge of the akpm tree

2017-04-10 Thread Stephen Rothwell
Hi Andrew,

After merging the akpm tree, today's linux-next build (x86_64
allmodconfig) failed like this:

mm/migrate.c: In function 'migrate_vma_insert_page':
mm/migrate.c:2491:23: error: passing argument 2 of 'pud_alloc' from 
incompatible pointer type [-Werror=incompatible-pointer-types]
  pudp = pud_alloc(mm, pgdp, addr);
   ^
In file included from include/linux/migrate.h:4:0,
 from mm/migrate.c:15:
include/linux/mm.h:1677:22: note: expected 'p4d_t * {aka struct  *}' 
but argument is of type 'pgd_t * {aka struct  *}'
 static inline pud_t *pud_alloc(struct mm_struct *mm, p4d_t *p4d,
  ^

Caused by patch

  "mm/migrate: allow migrate_vma() to alloc new page on empty entry"

interacting with commit

  c2febafc6773 ("mm: convert generic code to 5-level paging")

from Linus' tree (v4.11-rc2).

I applied the following fix patch:

From: Stephen Rothwell 
Date: Mon, 10 Apr 2017 17:09:15 +1000
Subject: [PATCH] mm/migrate: allow migrate_vma() to alloc new page on empty
 entry fix

Signed-off-by: Stephen Rothwell 
---
 mm/migrate.c | 6 +-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/mm/migrate.c b/mm/migrate.c
index e4b555f9a689..7958dfa01b16 100644
--- a/mm/migrate.c
+++ b/mm/migrate.c
@@ -2478,6 +2478,7 @@ static void migrate_vma_insert_page(struct migrate_vma 
*migrate,
struct mem_cgroup *memcg;
spinlock_t *ptl;
pgd_t *pgdp;
+   p4d_t *p4dp;
pud_t *pudp;
pmd_t *pmdp;
pte_t *ptep;
@@ -2488,7 +2489,10 @@ static void migrate_vma_insert_page(struct migrate_vma 
*migrate,
goto abort;
 
pgdp = pgd_offset(mm, addr);
-   pudp = pud_alloc(mm, pgdp, addr);
+   p4dp = p4d_alloc(mm, pgdp, addr);
+   if (!p4dp)
+   goto abort;
+   pudp = pud_alloc(mm, p4dp, addr);
if (!pudp)
goto abort;
pmdp = pmd_alloc(mm, pudp, addr);
-- 
2.11.0

-- 
Cheers,
Stephen Rothwell


Re: linux-next: build failure after merge of the akpm tree

2017-03-20 Thread Michal Hocko
On Mon 20-03-17 16:37:35, Stephen Rothwell wrote:
> Hi Andrew,
> 
> After merging the akpm tree, today's linux-next build (x86_64
> allmodconfig) failed like this:
> 
> fs/f2fs/node.c: In function 'init_free_nid_cache':
> fs/f2fs/node.c:2634:25: error: implicit declaration of function 
> 'f2fs_kvzalloc' [-Werror=implicit-function-declaration]
>   nm_i->free_nid_count = f2fs_kvzalloc(nm_i->nat_blocks *
>  ^
> fs/f2fs/node.c:2634:23: warning: assignment makes pointer from integer 
> without a cast [-Wint-conversion]
>   nm_i->free_nid_count = f2fs_kvzalloc(nm_i->nat_blocks *
>^
> 
> Caused by commit
> 
>   69e5e80117a3 ("mm: introduce kv[mz]alloc helpers")
> 
> interacting with commit
> 
>   c48b15867a2f ("f2fs: skip scanning free nid bitmap of full NAT blocks")
> 
> from the f2fs tree.
> 
> I applied the following fix patch:

yes this is correct. Thanks!

> 
> From: Stephen Rothwell 
> Date: Mon, 20 Mar 2017 16:28:21 +1100
> Subject: [PATCH] mm: introduce kv[mz]alloc helpers - f2fs fix up
> 
> Signed-off-by: Stephen Rothwell 
> ---
>  fs/f2fs/node.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/fs/f2fs/node.c b/fs/f2fs/node.c
> index cdbb05745895..0ea1dca8a0e2 100644
> --- a/fs/f2fs/node.c
> +++ b/fs/f2fs/node.c
> @@ -2631,7 +2631,7 @@ static int init_free_nid_cache(struct f2fs_sb_info *sbi)
>   if (!nm_i->nat_block_bitmap)
>   return -ENOMEM;
>  
> - nm_i->free_nid_count = f2fs_kvzalloc(nm_i->nat_blocks *
> + nm_i->free_nid_count = kvzalloc(nm_i->nat_blocks *
>   sizeof(unsigned short), GFP_KERNEL);
>   if (!nm_i->free_nid_count)
>   return -ENOMEM;
> -- 
> 2.11.0
> 
> -- 
> Cheers,
> Stephen Rothwell

-- 
Michal Hocko
SUSE Labs


Re: linux-next: build failure after merge of the akpm tree

2017-03-20 Thread Michal Hocko
On Mon 20-03-17 16:37:35, Stephen Rothwell wrote:
> Hi Andrew,
> 
> After merging the akpm tree, today's linux-next build (x86_64
> allmodconfig) failed like this:
> 
> fs/f2fs/node.c: In function 'init_free_nid_cache':
> fs/f2fs/node.c:2634:25: error: implicit declaration of function 
> 'f2fs_kvzalloc' [-Werror=implicit-function-declaration]
>   nm_i->free_nid_count = f2fs_kvzalloc(nm_i->nat_blocks *
>  ^
> fs/f2fs/node.c:2634:23: warning: assignment makes pointer from integer 
> without a cast [-Wint-conversion]
>   nm_i->free_nid_count = f2fs_kvzalloc(nm_i->nat_blocks *
>^
> 
> Caused by commit
> 
>   69e5e80117a3 ("mm: introduce kv[mz]alloc helpers")
> 
> interacting with commit
> 
>   c48b15867a2f ("f2fs: skip scanning free nid bitmap of full NAT blocks")
> 
> from the f2fs tree.
> 
> I applied the following fix patch:

yes this is correct. Thanks!

> 
> From: Stephen Rothwell 
> Date: Mon, 20 Mar 2017 16:28:21 +1100
> Subject: [PATCH] mm: introduce kv[mz]alloc helpers - f2fs fix up
> 
> Signed-off-by: Stephen Rothwell 
> ---
>  fs/f2fs/node.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/fs/f2fs/node.c b/fs/f2fs/node.c
> index cdbb05745895..0ea1dca8a0e2 100644
> --- a/fs/f2fs/node.c
> +++ b/fs/f2fs/node.c
> @@ -2631,7 +2631,7 @@ static int init_free_nid_cache(struct f2fs_sb_info *sbi)
>   if (!nm_i->nat_block_bitmap)
>   return -ENOMEM;
>  
> - nm_i->free_nid_count = f2fs_kvzalloc(nm_i->nat_blocks *
> + nm_i->free_nid_count = kvzalloc(nm_i->nat_blocks *
>   sizeof(unsigned short), GFP_KERNEL);
>   if (!nm_i->free_nid_count)
>   return -ENOMEM;
> -- 
> 2.11.0
> 
> -- 
> Cheers,
> Stephen Rothwell

-- 
Michal Hocko
SUSE Labs


Re: linux-next: build failure after merge of the akpm tree

2017-03-20 Thread Jaegeuk Kim
On 03/20, Michal Hocko wrote:
> On Mon 20-03-17 16:37:35, Stephen Rothwell wrote:
> > Hi Andrew,
> > 
> > After merging the akpm tree, today's linux-next build (x86_64
> > allmodconfig) failed like this:
> > 
> > fs/f2fs/node.c: In function 'init_free_nid_cache':
> > fs/f2fs/node.c:2634:25: error: implicit declaration of function 
> > 'f2fs_kvzalloc' [-Werror=implicit-function-declaration]
> >   nm_i->free_nid_count = f2fs_kvzalloc(nm_i->nat_blocks *
> >  ^
> > fs/f2fs/node.c:2634:23: warning: assignment makes pointer from integer 
> > without a cast [-Wint-conversion]
> >   nm_i->free_nid_count = f2fs_kvzalloc(nm_i->nat_blocks *
> >^
> > 
> > Caused by commit
> > 
> >   69e5e80117a3 ("mm: introduce kv[mz]alloc helpers")
> > 
> > interacting with commit
> > 
> >   c48b15867a2f ("f2fs: skip scanning free nid bitmap of full NAT blocks")
> > 
> > from the f2fs tree.
> > 
> > I applied the following fix patch:
> 
> yes this is correct. Thanks!

Thank you for checking this out.

Thanks,

> 
> > 
> > From: Stephen Rothwell 
> > Date: Mon, 20 Mar 2017 16:28:21 +1100
> > Subject: [PATCH] mm: introduce kv[mz]alloc helpers - f2fs fix up
> > 
> > Signed-off-by: Stephen Rothwell 
> > ---
> >  fs/f2fs/node.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/fs/f2fs/node.c b/fs/f2fs/node.c
> > index cdbb05745895..0ea1dca8a0e2 100644
> > --- a/fs/f2fs/node.c
> > +++ b/fs/f2fs/node.c
> > @@ -2631,7 +2631,7 @@ static int init_free_nid_cache(struct f2fs_sb_info 
> > *sbi)
> > if (!nm_i->nat_block_bitmap)
> > return -ENOMEM;
> >  
> > -   nm_i->free_nid_count = f2fs_kvzalloc(nm_i->nat_blocks *
> > +   nm_i->free_nid_count = kvzalloc(nm_i->nat_blocks *
> > sizeof(unsigned short), GFP_KERNEL);
> > if (!nm_i->free_nid_count)
> > return -ENOMEM;
> > -- 
> > 2.11.0
> > 
> > -- 
> > Cheers,
> > Stephen Rothwell
> 
> -- 
> Michal Hocko
> SUSE Labs


Re: linux-next: build failure after merge of the akpm tree

2017-03-20 Thread Jaegeuk Kim
On 03/20, Michal Hocko wrote:
> On Mon 20-03-17 16:37:35, Stephen Rothwell wrote:
> > Hi Andrew,
> > 
> > After merging the akpm tree, today's linux-next build (x86_64
> > allmodconfig) failed like this:
> > 
> > fs/f2fs/node.c: In function 'init_free_nid_cache':
> > fs/f2fs/node.c:2634:25: error: implicit declaration of function 
> > 'f2fs_kvzalloc' [-Werror=implicit-function-declaration]
> >   nm_i->free_nid_count = f2fs_kvzalloc(nm_i->nat_blocks *
> >  ^
> > fs/f2fs/node.c:2634:23: warning: assignment makes pointer from integer 
> > without a cast [-Wint-conversion]
> >   nm_i->free_nid_count = f2fs_kvzalloc(nm_i->nat_blocks *
> >^
> > 
> > Caused by commit
> > 
> >   69e5e80117a3 ("mm: introduce kv[mz]alloc helpers")
> > 
> > interacting with commit
> > 
> >   c48b15867a2f ("f2fs: skip scanning free nid bitmap of full NAT blocks")
> > 
> > from the f2fs tree.
> > 
> > I applied the following fix patch:
> 
> yes this is correct. Thanks!

Thank you for checking this out.

Thanks,

> 
> > 
> > From: Stephen Rothwell 
> > Date: Mon, 20 Mar 2017 16:28:21 +1100
> > Subject: [PATCH] mm: introduce kv[mz]alloc helpers - f2fs fix up
> > 
> > Signed-off-by: Stephen Rothwell 
> > ---
> >  fs/f2fs/node.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/fs/f2fs/node.c b/fs/f2fs/node.c
> > index cdbb05745895..0ea1dca8a0e2 100644
> > --- a/fs/f2fs/node.c
> > +++ b/fs/f2fs/node.c
> > @@ -2631,7 +2631,7 @@ static int init_free_nid_cache(struct f2fs_sb_info 
> > *sbi)
> > if (!nm_i->nat_block_bitmap)
> > return -ENOMEM;
> >  
> > -   nm_i->free_nid_count = f2fs_kvzalloc(nm_i->nat_blocks *
> > +   nm_i->free_nid_count = kvzalloc(nm_i->nat_blocks *
> > sizeof(unsigned short), GFP_KERNEL);
> > if (!nm_i->free_nid_count)
> > return -ENOMEM;
> > -- 
> > 2.11.0
> > 
> > -- 
> > Cheers,
> > Stephen Rothwell
> 
> -- 
> Michal Hocko
> SUSE Labs


linux-next: build failure after merge of the akpm tree

2017-03-19 Thread Stephen Rothwell
Hi Andrew,

After merging the akpm tree, today's linux-next build (x86_64
allmodconfig) failed like this:

fs/f2fs/node.c: In function 'init_free_nid_cache':
fs/f2fs/node.c:2634:25: error: implicit declaration of function 'f2fs_kvzalloc' 
[-Werror=implicit-function-declaration]
  nm_i->free_nid_count = f2fs_kvzalloc(nm_i->nat_blocks *
 ^
fs/f2fs/node.c:2634:23: warning: assignment makes pointer from integer without 
a cast [-Wint-conversion]
  nm_i->free_nid_count = f2fs_kvzalloc(nm_i->nat_blocks *
   ^

Caused by commit

  69e5e80117a3 ("mm: introduce kv[mz]alloc helpers")

interacting with commit

  c48b15867a2f ("f2fs: skip scanning free nid bitmap of full NAT blocks")

from the f2fs tree.

I applied the following fix patch:

From: Stephen Rothwell 
Date: Mon, 20 Mar 2017 16:28:21 +1100
Subject: [PATCH] mm: introduce kv[mz]alloc helpers - f2fs fix up

Signed-off-by: Stephen Rothwell 
---
 fs/f2fs/node.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/f2fs/node.c b/fs/f2fs/node.c
index cdbb05745895..0ea1dca8a0e2 100644
--- a/fs/f2fs/node.c
+++ b/fs/f2fs/node.c
@@ -2631,7 +2631,7 @@ static int init_free_nid_cache(struct f2fs_sb_info *sbi)
if (!nm_i->nat_block_bitmap)
return -ENOMEM;
 
-   nm_i->free_nid_count = f2fs_kvzalloc(nm_i->nat_blocks *
+   nm_i->free_nid_count = kvzalloc(nm_i->nat_blocks *
sizeof(unsigned short), GFP_KERNEL);
if (!nm_i->free_nid_count)
return -ENOMEM;
-- 
2.11.0

-- 
Cheers,
Stephen Rothwell


linux-next: build failure after merge of the akpm tree

2017-03-19 Thread Stephen Rothwell
Hi Andrew,

After merging the akpm tree, today's linux-next build (x86_64
allmodconfig) failed like this:

fs/f2fs/node.c: In function 'init_free_nid_cache':
fs/f2fs/node.c:2634:25: error: implicit declaration of function 'f2fs_kvzalloc' 
[-Werror=implicit-function-declaration]
  nm_i->free_nid_count = f2fs_kvzalloc(nm_i->nat_blocks *
 ^
fs/f2fs/node.c:2634:23: warning: assignment makes pointer from integer without 
a cast [-Wint-conversion]
  nm_i->free_nid_count = f2fs_kvzalloc(nm_i->nat_blocks *
   ^

Caused by commit

  69e5e80117a3 ("mm: introduce kv[mz]alloc helpers")

interacting with commit

  c48b15867a2f ("f2fs: skip scanning free nid bitmap of full NAT blocks")

from the f2fs tree.

I applied the following fix patch:

From: Stephen Rothwell 
Date: Mon, 20 Mar 2017 16:28:21 +1100
Subject: [PATCH] mm: introduce kv[mz]alloc helpers - f2fs fix up

Signed-off-by: Stephen Rothwell 
---
 fs/f2fs/node.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/f2fs/node.c b/fs/f2fs/node.c
index cdbb05745895..0ea1dca8a0e2 100644
--- a/fs/f2fs/node.c
+++ b/fs/f2fs/node.c
@@ -2631,7 +2631,7 @@ static int init_free_nid_cache(struct f2fs_sb_info *sbi)
if (!nm_i->nat_block_bitmap)
return -ENOMEM;
 
-   nm_i->free_nid_count = f2fs_kvzalloc(nm_i->nat_blocks *
+   nm_i->free_nid_count = kvzalloc(nm_i->nat_blocks *
sizeof(unsigned short), GFP_KERNEL);
if (!nm_i->free_nid_count)
return -ENOMEM;
-- 
2.11.0

-- 
Cheers,
Stephen Rothwell


Re: linux-next: build failure after merge of the akpm tree

2017-03-06 Thread Laura Abbott
On 03/06/2017 07:07 PM, Stephen Rothwell wrote:
> Hi Andrew,
> 
> After merging the akpm tree, today's linux-next build (powerpc
> ppc64_defconfig) failed like this:
> 
> In file included from include/net/sock.h:64:0,
>  from include/linux/tcp.h:23,
>  from include/linux/ipv6.h:83,
>  from include/net/ipv6.h:16,
>  from include/linux/sunrpc/clnt.h:27,
>  from include/linux/nfs_fs.h:30,
>  from init/do_mounts.c:32:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from arch/powerpc/net/bpf_jit_comp64.c:17:0:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from include/net/sock.h:64:0,
>  from ipc/mqueue.c:42:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> kernel/module.c:52:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from include/net/sock.h:64:0,
>  from include/linux/tcp.h:23,
>  from include/linux/ipv6.h:83,
>  from include/net/ipv6.h:16,
>  from include/linux/sunrpc/clnt.h:27,
>  from include/linux/nfs_fs.h:30,
>  from kernel/sysctl.c:54:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from kernel/extable.c:25:0:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from include/net/sock.h:64:0,
>  from kernel/cgroup/cgroup.c:57:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from kernel/bpf/inode.c:22:0:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from kernel/kallsyms.c:26:0:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from kernel/events/core.c:46:0:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from kernel/bpf/core.c:24:0:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from kernel/bpf/hashtab.c:15:0:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from include/linux/bpf_verifier.h:11:0,
>  from kernel/bpf/verifier.c:17:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from kernel/bpf/stackmap.c:9:0:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from kernel/seccomp.c:31:0:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from include/trace/events/bpf.h:7:0,
>  from include/linux/bpf_trace.h:4,
>  from kernel/bpf/syscall.c:13:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from include/net/sock.h:64:0,
>  from include/net/inet_sock.h:27,
>  from include/net/ip.h:30,
>  from include/net/busy_poll.h:30,
>  from fs/select.c:31:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from kernel/bpf/helpers.c:20:0:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from include/net/sock.h:64:0,
>  from kernel/bpf/cgroup.c:17:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from include/net/sock.h:64:0,
>  from include/linux/tcp.h:23,
>  from include/linux/ipv6.h:83,
>  from include/net/ipv6.h:16,
>  from kernel/bpf/lpm_trie.c:17:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from kernel/bpf/arraymap.c:16:0:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from kernel/trace/bpf_trace.c:13:0:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from include/net/sock.h:64:0,
>  from include/linux/if_pppox.h:46,
>  from fs/compat_ioctl.c:38:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from include/net/sock.h:64:0,
>  from include/linux/tcp.h:23,
>  from include/linux/ipv6.h:83,
>  from include/net/ipv6.h:16,
>  from 

Re: linux-next: build failure after merge of the akpm tree

2017-03-06 Thread Laura Abbott
On 03/06/2017 07:07 PM, Stephen Rothwell wrote:
> Hi Andrew,
> 
> After merging the akpm tree, today's linux-next build (powerpc
> ppc64_defconfig) failed like this:
> 
> In file included from include/net/sock.h:64:0,
>  from include/linux/tcp.h:23,
>  from include/linux/ipv6.h:83,
>  from include/net/ipv6.h:16,
>  from include/linux/sunrpc/clnt.h:27,
>  from include/linux/nfs_fs.h:30,
>  from init/do_mounts.c:32:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from arch/powerpc/net/bpf_jit_comp64.c:17:0:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from include/net/sock.h:64:0,
>  from ipc/mqueue.c:42:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> kernel/module.c:52:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from include/net/sock.h:64:0,
>  from include/linux/tcp.h:23,
>  from include/linux/ipv6.h:83,
>  from include/net/ipv6.h:16,
>  from include/linux/sunrpc/clnt.h:27,
>  from include/linux/nfs_fs.h:30,
>  from kernel/sysctl.c:54:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from kernel/extable.c:25:0:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from include/net/sock.h:64:0,
>  from kernel/cgroup/cgroup.c:57:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from kernel/bpf/inode.c:22:0:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from kernel/kallsyms.c:26:0:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from kernel/events/core.c:46:0:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from kernel/bpf/core.c:24:0:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from kernel/bpf/hashtab.c:15:0:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from include/linux/bpf_verifier.h:11:0,
>  from kernel/bpf/verifier.c:17:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from kernel/bpf/stackmap.c:9:0:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from kernel/seccomp.c:31:0:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from include/trace/events/bpf.h:7:0,
>  from include/linux/bpf_trace.h:4,
>  from kernel/bpf/syscall.c:13:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from include/net/sock.h:64:0,
>  from include/net/inet_sock.h:27,
>  from include/net/ip.h:30,
>  from include/net/busy_poll.h:30,
>  from fs/select.c:31:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from kernel/bpf/helpers.c:20:0:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from include/net/sock.h:64:0,
>  from kernel/bpf/cgroup.c:17:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from include/net/sock.h:64:0,
>  from include/linux/tcp.h:23,
>  from include/linux/ipv6.h:83,
>  from include/net/ipv6.h:16,
>  from kernel/bpf/lpm_trie.c:17:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from kernel/bpf/arraymap.c:16:0:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from kernel/trace/bpf_trace.c:13:0:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from include/net/sock.h:64:0,
>  from include/linux/if_pppox.h:46,
>  from fs/compat_ioctl.c:38:
> include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
> directory
> In file included from include/net/sock.h:64:0,
>  from include/linux/tcp.h:23,
>  from include/linux/ipv6.h:83,
>  from include/net/ipv6.h:16,
>  from 

linux-next: build failure after merge of the akpm tree

2017-03-06 Thread Stephen Rothwell
Hi Andrew,

After merging the akpm tree, today's linux-next build (powerpc
ppc64_defconfig) failed like this:

In file included from include/net/sock.h:64:0,
 from include/linux/tcp.h:23,
 from include/linux/ipv6.h:83,
 from include/net/ipv6.h:16,
 from include/linux/sunrpc/clnt.h:27,
 from include/linux/nfs_fs.h:30,
 from init/do_mounts.c:32:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from arch/powerpc/net/bpf_jit_comp64.c:17:0:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from include/net/sock.h:64:0,
 from ipc/mqueue.c:42:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
kernel/module.c:52:28: fatal error: asm/set_memory.h: No such file or directory
In file included from include/net/sock.h:64:0,
 from include/linux/tcp.h:23,
 from include/linux/ipv6.h:83,
 from include/net/ipv6.h:16,
 from include/linux/sunrpc/clnt.h:27,
 from include/linux/nfs_fs.h:30,
 from kernel/sysctl.c:54:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from kernel/extable.c:25:0:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from include/net/sock.h:64:0,
 from kernel/cgroup/cgroup.c:57:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from kernel/bpf/inode.c:22:0:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from kernel/kallsyms.c:26:0:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from kernel/events/core.c:46:0:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from kernel/bpf/core.c:24:0:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from kernel/bpf/hashtab.c:15:0:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from include/linux/bpf_verifier.h:11:0,
 from kernel/bpf/verifier.c:17:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from kernel/bpf/stackmap.c:9:0:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from kernel/seccomp.c:31:0:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from include/trace/events/bpf.h:7:0,
 from include/linux/bpf_trace.h:4,
 from kernel/bpf/syscall.c:13:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from include/net/sock.h:64:0,
 from include/net/inet_sock.h:27,
 from include/net/ip.h:30,
 from include/net/busy_poll.h:30,
 from fs/select.c:31:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from kernel/bpf/helpers.c:20:0:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from include/net/sock.h:64:0,
 from kernel/bpf/cgroup.c:17:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from include/net/sock.h:64:0,
 from include/linux/tcp.h:23,
 from include/linux/ipv6.h:83,
 from include/net/ipv6.h:16,
 from kernel/bpf/lpm_trie.c:17:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from kernel/bpf/arraymap.c:16:0:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from kernel/trace/bpf_trace.c:13:0:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from include/net/sock.h:64:0,
 from include/linux/if_pppox.h:46,
 from fs/compat_ioctl.c:38:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from include/net/sock.h:64:0,
 from include/linux/tcp.h:23,
 from include/linux/ipv6.h:83,
 from include/net/ipv6.h:16,
 from fs/cifs/cifsfs.c:41:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from include/net/sock.h:64:0,
 from include/linux/tcp.h:23,
 from include/linux/ipv6.h:83,
 from 

linux-next: build failure after merge of the akpm tree

2017-03-06 Thread Stephen Rothwell
Hi Andrew,

After merging the akpm tree, today's linux-next build (powerpc
ppc64_defconfig) failed like this:

In file included from include/net/sock.h:64:0,
 from include/linux/tcp.h:23,
 from include/linux/ipv6.h:83,
 from include/net/ipv6.h:16,
 from include/linux/sunrpc/clnt.h:27,
 from include/linux/nfs_fs.h:30,
 from init/do_mounts.c:32:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from arch/powerpc/net/bpf_jit_comp64.c:17:0:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from include/net/sock.h:64:0,
 from ipc/mqueue.c:42:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
kernel/module.c:52:28: fatal error: asm/set_memory.h: No such file or directory
In file included from include/net/sock.h:64:0,
 from include/linux/tcp.h:23,
 from include/linux/ipv6.h:83,
 from include/net/ipv6.h:16,
 from include/linux/sunrpc/clnt.h:27,
 from include/linux/nfs_fs.h:30,
 from kernel/sysctl.c:54:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from kernel/extable.c:25:0:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from include/net/sock.h:64:0,
 from kernel/cgroup/cgroup.c:57:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from kernel/bpf/inode.c:22:0:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from kernel/kallsyms.c:26:0:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from kernel/events/core.c:46:0:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from kernel/bpf/core.c:24:0:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from kernel/bpf/hashtab.c:15:0:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from include/linux/bpf_verifier.h:11:0,
 from kernel/bpf/verifier.c:17:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from kernel/bpf/stackmap.c:9:0:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from kernel/seccomp.c:31:0:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from include/trace/events/bpf.h:7:0,
 from include/linux/bpf_trace.h:4,
 from kernel/bpf/syscall.c:13:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from include/net/sock.h:64:0,
 from include/net/inet_sock.h:27,
 from include/net/ip.h:30,
 from include/net/busy_poll.h:30,
 from fs/select.c:31:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from kernel/bpf/helpers.c:20:0:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from include/net/sock.h:64:0,
 from kernel/bpf/cgroup.c:17:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from include/net/sock.h:64:0,
 from include/linux/tcp.h:23,
 from include/linux/ipv6.h:83,
 from include/net/ipv6.h:16,
 from kernel/bpf/lpm_trie.c:17:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from kernel/bpf/arraymap.c:16:0:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from kernel/trace/bpf_trace.c:13:0:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from include/net/sock.h:64:0,
 from include/linux/if_pppox.h:46,
 from fs/compat_ioctl.c:38:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from include/net/sock.h:64:0,
 from include/linux/tcp.h:23,
 from include/linux/ipv6.h:83,
 from include/net/ipv6.h:16,
 from fs/cifs/cifsfs.c:41:
include/linux/filter.h:21:28: fatal error: asm/set_memory.h: No such file or 
directory
In file included from include/net/sock.h:64:0,
 from include/linux/tcp.h:23,
 from include/linux/ipv6.h:83,
 from 

linux-next: build failure after merge of the akpm tree

2017-03-06 Thread Stephen Rothwell
Hi Andrew,

After merging the akpm tree, today's linux-next build (arm
multi_v7_defconfig) failed like this:

arch/arm/kernel/machine_kexec.c: In function 'machine_kexec':
arch/arm/kernel/machine_kexec.c:163:2: error: implicit declaration of function 
'set_kernel_text_rw' [-Werror=implicit-function-declaration]
  set_kernel_text_rw();
  ^

Caused by patches

  treewide: move set_memory_* functions away from cacheflush.h
  treewide: decouple cacheflush.h and set_memory.h

I have added this fix patch:

From: Stephen Rothwell 
Date: Tue, 7 Mar 2017 13:28:38 +1100
Subject: [PATCH] treewide-decouple-cacheflushh-and-set_memoryh-fix-7

Signed-off-by: Stephen Rothwell 
---
 arch/arm/kernel/machine_kexec.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/kernel/machine_kexec.c b/arch/arm/kernel/machine_kexec.c
index b18c1ea56bed..80f48f522b0c 100644
--- a/arch/arm/kernel/machine_kexec.c
+++ b/arch/arm/kernel/machine_kexec.c
@@ -14,6 +14,7 @@
 #include 
 #include 
 #include 
+#include 
 #include 
 #include 
 #include 
-- 
2.11.0

Which lead to (again in the arm multi_v7_defconfig build):

drivers/misc/sram-exec.c: In function 'sram_exec_copy':
drivers/misc/sram-exec.c:93:2: error: implicit declaration of function 
'set_memory_nx' [-Werror=implicit-function-declaration]
  set_memory_nx((unsigned long)base, pages);
  ^
drivers/misc/sram-exec.c:94:2: error: implicit declaration of function 
'set_memory_rw' [-Werror=implicit-function-declaration]
  set_memory_rw((unsigned long)base, pages);
  ^
drivers/misc/sram-exec.c:98:2: error: implicit declaration of function 
'set_memory_ro' [-Werror=implicit-function-declaration]
  set_memory_ro((unsigned long)base, pages);
  ^
drivers/misc/sram-exec.c:99:2: error: implicit declaration of function 
'set_memory_x' [-Werror=implicit-function-declaration]
  set_memory_x((unsigned long)base, pages);
  ^

For which I added:

From: Stephen Rothwell 
Date: Tue, 7 Mar 2017 13:34:58 +1100
Subject: [PATCH] treewide-decouple-cacheflushh-and-set_memoryh-fix-8

Signed-off-by: Stephen Rothwell 
---
 drivers/misc/sram-exec.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/misc/sram-exec.c b/drivers/misc/sram-exec.c
index ac522417c462..225300bb5510 100644
--- a/drivers/misc/sram-exec.c
+++ b/drivers/misc/sram-exec.c
@@ -19,6 +19,7 @@
 #include 
 
 #include 
+#include 
 
 #include "sram.h"
 
-- 
2.11.0

-- 
Cheers,
Stephen Rothwell


linux-next: build failure after merge of the akpm tree

2017-03-06 Thread Stephen Rothwell
Hi Andrew,

After merging the akpm tree, today's linux-next build (arm
multi_v7_defconfig) failed like this:

arch/arm/kernel/machine_kexec.c: In function 'machine_kexec':
arch/arm/kernel/machine_kexec.c:163:2: error: implicit declaration of function 
'set_kernel_text_rw' [-Werror=implicit-function-declaration]
  set_kernel_text_rw();
  ^

Caused by patches

  treewide: move set_memory_* functions away from cacheflush.h
  treewide: decouple cacheflush.h and set_memory.h

I have added this fix patch:

From: Stephen Rothwell 
Date: Tue, 7 Mar 2017 13:28:38 +1100
Subject: [PATCH] treewide-decouple-cacheflushh-and-set_memoryh-fix-7

Signed-off-by: Stephen Rothwell 
---
 arch/arm/kernel/machine_kexec.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/kernel/machine_kexec.c b/arch/arm/kernel/machine_kexec.c
index b18c1ea56bed..80f48f522b0c 100644
--- a/arch/arm/kernel/machine_kexec.c
+++ b/arch/arm/kernel/machine_kexec.c
@@ -14,6 +14,7 @@
 #include 
 #include 
 #include 
+#include 
 #include 
 #include 
 #include 
-- 
2.11.0

Which lead to (again in the arm multi_v7_defconfig build):

drivers/misc/sram-exec.c: In function 'sram_exec_copy':
drivers/misc/sram-exec.c:93:2: error: implicit declaration of function 
'set_memory_nx' [-Werror=implicit-function-declaration]
  set_memory_nx((unsigned long)base, pages);
  ^
drivers/misc/sram-exec.c:94:2: error: implicit declaration of function 
'set_memory_rw' [-Werror=implicit-function-declaration]
  set_memory_rw((unsigned long)base, pages);
  ^
drivers/misc/sram-exec.c:98:2: error: implicit declaration of function 
'set_memory_ro' [-Werror=implicit-function-declaration]
  set_memory_ro((unsigned long)base, pages);
  ^
drivers/misc/sram-exec.c:99:2: error: implicit declaration of function 
'set_memory_x' [-Werror=implicit-function-declaration]
  set_memory_x((unsigned long)base, pages);
  ^

For which I added:

From: Stephen Rothwell 
Date: Tue, 7 Mar 2017 13:34:58 +1100
Subject: [PATCH] treewide-decouple-cacheflushh-and-set_memoryh-fix-8

Signed-off-by: Stephen Rothwell 
---
 drivers/misc/sram-exec.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/misc/sram-exec.c b/drivers/misc/sram-exec.c
index ac522417c462..225300bb5510 100644
--- a/drivers/misc/sram-exec.c
+++ b/drivers/misc/sram-exec.c
@@ -19,6 +19,7 @@
 #include 
 
 #include 
+#include 
 
 #include "sram.h"
 
-- 
2.11.0

-- 
Cheers,
Stephen Rothwell


linux-next: build failure after merge of the akpm tree

2017-01-08 Thread Stephen Rothwell
Hi Andrew,

After merging the akpm tree, today's linux-next build (arm
multi_v7_defconfig) failed like this:

lib/radix-tree.c: In function 'radix_tree_iter_delete':
lib/radix-tree.c:1952:3: error: too few arguments to function 
'__radix_tree_delete_node'
   __radix_tree_delete_node(root, node);
   ^
lib/radix-tree.c:1936:6: note: declared here
 void __radix_tree_delete_node(struct radix_tree_root *root,
  ^

Caused by patch

  "Reimplement IDR and IDA using the radix tree"

interacting with commit

  ea07b862ac8e ("mm: workingset: fix use-after-free in shadow node shrinker")

from Linus' tree.

I applied the following fixup patch (which may not be entirely complete,
of course).

From: Stephen Rothwell 
Date: Mon, 9 Jan 2017 15:05:08 +1100
Subject: [PATCH] mm: merge fixup for "fix use-after-free in shadow node 
shrinker"

Signed-off-by: Stephen Rothwell 
---
 lib/radix-tree.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/radix-tree.c b/lib/radix-tree.c
index e563b5f50ace..4a8d206d508a 100644
--- a/lib/radix-tree.c
+++ b/lib/radix-tree.c
@@ -1949,7 +1949,7 @@ void radix_tree_iter_delete(struct radix_tree_root *root,
if (node) {
node->slots[iter_offset(iter)] = NULL;
node->count--;
-   __radix_tree_delete_node(root, node);
+   __radix_tree_delete_node(root, node, NULL, NULL);
} else {
root->rnode = NULL;
}
-- 
2.10.2

-- 
Cheers,
Stephen Rothwell


linux-next: build failure after merge of the akpm tree

2017-01-08 Thread Stephen Rothwell
Hi Andrew,

After merging the akpm tree, today's linux-next build (arm
multi_v7_defconfig) failed like this:

lib/radix-tree.c: In function 'radix_tree_iter_delete':
lib/radix-tree.c:1952:3: error: too few arguments to function 
'__radix_tree_delete_node'
   __radix_tree_delete_node(root, node);
   ^
lib/radix-tree.c:1936:6: note: declared here
 void __radix_tree_delete_node(struct radix_tree_root *root,
  ^

Caused by patch

  "Reimplement IDR and IDA using the radix tree"

interacting with commit

  ea07b862ac8e ("mm: workingset: fix use-after-free in shadow node shrinker")

from Linus' tree.

I applied the following fixup patch (which may not be entirely complete,
of course).

From: Stephen Rothwell 
Date: Mon, 9 Jan 2017 15:05:08 +1100
Subject: [PATCH] mm: merge fixup for "fix use-after-free in shadow node 
shrinker"

Signed-off-by: Stephen Rothwell 
---
 lib/radix-tree.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/radix-tree.c b/lib/radix-tree.c
index e563b5f50ace..4a8d206d508a 100644
--- a/lib/radix-tree.c
+++ b/lib/radix-tree.c
@@ -1949,7 +1949,7 @@ void radix_tree_iter_delete(struct radix_tree_root *root,
if (node) {
node->slots[iter_offset(iter)] = NULL;
node->count--;
-   __radix_tree_delete_node(root, node);
+   __radix_tree_delete_node(root, node, NULL, NULL);
} else {
root->rnode = NULL;
}
-- 
2.10.2

-- 
Cheers,
Stephen Rothwell


Re: linux-next: build failure after merge of the akpm tree

2016-01-26 Thread Takashi Iwai
On Tue, 26 Jan 2016 21:51:30 +0100,
Stephen Rothwell wrote:
> 
> Hi Takashi,
> 
> On Mon, 25 Jan 2016 14:45:55 +0100 Takashi Iwai  wrote:
> >
> > From: Takashi Iwai 
> > Subject: [PATCH v2] ALSA: compress: Disable GET_CODEC_CAPS ioctl for some
> >  architectures
> > 
> > Some architectures like PowerPC can handle the maximum struct size in
> > an ioctl only up to 13 bits, and struct snd_compr_codec_caps used by
> > SNDRV_COMPRESS_GET_CODEC_CAPS ioctl overflows this limit.  This
> > problem was revealed recently by a powerpc change, as it's now treated
> > as a fatal build error.
> > 
> > This patch is a workaround for that: for architectures with less than
> > 14 bit ioctl struct size, get rid of the handling of the relevant
> > ioctl.  We should provide an alternative equivalent ioctl code later,
> > but for now just paper over it.  Luckily, the compress API hasn't been
> > used on such architectures, so the impact must be effectively zero.
> > 
> > Signed-off-by: Takashi Iwai 
> > ---
> >  sound/core/compress_offload.c | 11 +++
> >  1 file changed, 11 insertions(+)
> > 
> > diff --git a/sound/core/compress_offload.c b/sound/core/compress_offload.c
> > index 18b8dc45bb8f..0609e618107a 100644
> > --- a/sound/core/compress_offload.c
> > +++ b/sound/core/compress_offload.c
> > @@ -46,6 +46,13 @@
> >  #include 
> >  #include 
> >  
> > +/* FIXME: struct snd_compr_codec_caps overflows the ioctl bit size for some
> > + *architectures, so we need to disable the relevant ioctls.
> > + */
> > +#if _IOC_SIZEBITS < 14
> > +#define COMPR_CODEC_CAPS_OVERFLOW
> > +#endif
> > +
> >  /* TODO:
> >   * - add substream support for multiple devices in case of
> >   * SND_DYNAMIC_MINORS is not used
> > @@ -440,6 +447,7 @@ out:
> > return retval;
> >  }
> >  
> > +#ifndef COMPR_CODEC_CAPS_OVERFLOW
> >  static int
> >  snd_compr_get_codec_caps(struct snd_compr_stream *stream, unsigned long 
> > arg)
> >  {
> > @@ -463,6 +471,7 @@ out:
> > kfree(caps);
> > return retval;
> >  }
> > +#endif /* !COMPR_CODEC_CAPS_OVERFLOW */
> >  
> >  /* revisit this with snd_pcm_preallocate_xxx */
> >  static int snd_compr_allocate_buffer(struct snd_compr_stream *stream,
> > @@ -801,9 +810,11 @@ static long snd_compr_ioctl(struct file *f, unsigned 
> > int cmd, unsigned long arg)
> > case _IOC_NR(SNDRV_COMPRESS_GET_CAPS):
> > retval = snd_compr_get_caps(stream, arg);
> > break;
> > +#ifndef COMPR_CODEC_CAPS_OVERFLOW
> > case _IOC_NR(SNDRV_COMPRESS_GET_CODEC_CAPS):
> > retval = snd_compr_get_codec_caps(stream, arg);
> > break;
> > +#endif
> > case _IOC_NR(SNDRV_COMPRESS_SET_PARAMS):
> > retval = snd_compr_set_params(stream, arg);
> > break;
> > -- 
> > 2.7.0
> 
> I have replaced my other patch in my fixes tree until someone gets this
> patch to Linus.

I've merged this to for-linus branch, so it'll be included in the next
pull request.


thanks,

Takashi


Re: linux-next: build failure after merge of the akpm tree

2016-01-26 Thread Stephen Rothwell
Hi Takashi,

On Mon, 25 Jan 2016 14:45:55 +0100 Takashi Iwai  wrote:
>
> From: Takashi Iwai 
> Subject: [PATCH v2] ALSA: compress: Disable GET_CODEC_CAPS ioctl for some
>  architectures
> 
> Some architectures like PowerPC can handle the maximum struct size in
> an ioctl only up to 13 bits, and struct snd_compr_codec_caps used by
> SNDRV_COMPRESS_GET_CODEC_CAPS ioctl overflows this limit.  This
> problem was revealed recently by a powerpc change, as it's now treated
> as a fatal build error.
> 
> This patch is a workaround for that: for architectures with less than
> 14 bit ioctl struct size, get rid of the handling of the relevant
> ioctl.  We should provide an alternative equivalent ioctl code later,
> but for now just paper over it.  Luckily, the compress API hasn't been
> used on such architectures, so the impact must be effectively zero.
> 
> Signed-off-by: Takashi Iwai 
> ---
>  sound/core/compress_offload.c | 11 +++
>  1 file changed, 11 insertions(+)
> 
> diff --git a/sound/core/compress_offload.c b/sound/core/compress_offload.c
> index 18b8dc45bb8f..0609e618107a 100644
> --- a/sound/core/compress_offload.c
> +++ b/sound/core/compress_offload.c
> @@ -46,6 +46,13 @@
>  #include 
>  #include 
>  
> +/* FIXME: struct snd_compr_codec_caps overflows the ioctl bit size for some
> + *architectures, so we need to disable the relevant ioctls.
> + */
> +#if _IOC_SIZEBITS < 14
> +#define COMPR_CODEC_CAPS_OVERFLOW
> +#endif
> +
>  /* TODO:
>   * - add substream support for multiple devices in case of
>   *   SND_DYNAMIC_MINORS is not used
> @@ -440,6 +447,7 @@ out:
>   return retval;
>  }
>  
> +#ifndef COMPR_CODEC_CAPS_OVERFLOW
>  static int
>  snd_compr_get_codec_caps(struct snd_compr_stream *stream, unsigned long arg)
>  {
> @@ -463,6 +471,7 @@ out:
>   kfree(caps);
>   return retval;
>  }
> +#endif /* !COMPR_CODEC_CAPS_OVERFLOW */
>  
>  /* revisit this with snd_pcm_preallocate_xxx */
>  static int snd_compr_allocate_buffer(struct snd_compr_stream *stream,
> @@ -801,9 +810,11 @@ static long snd_compr_ioctl(struct file *f, unsigned int 
> cmd, unsigned long arg)
>   case _IOC_NR(SNDRV_COMPRESS_GET_CAPS):
>   retval = snd_compr_get_caps(stream, arg);
>   break;
> +#ifndef COMPR_CODEC_CAPS_OVERFLOW
>   case _IOC_NR(SNDRV_COMPRESS_GET_CODEC_CAPS):
>   retval = snd_compr_get_codec_caps(stream, arg);
>   break;
> +#endif
>   case _IOC_NR(SNDRV_COMPRESS_SET_PARAMS):
>   retval = snd_compr_set_params(stream, arg);
>   break;
> -- 
> 2.7.0

I have replaced my other patch in my fixes tree until someone gets this
patch to Linus.
-- 
Cheers,
Stephen Rothwells...@canb.auug.org.au


Re: linux-next: build failure after merge of the akpm tree

2016-01-26 Thread Vinod Koul
On Mon, Jan 25, 2016 at 01:55:46PM +, Mark Brown wrote:
> 
> though we will need to come up with an alternative solution for the
> affected architectures if anyone ends up caring (MIPS or PowerPC might
> possibly).

Okay I did some rethink on this. So we should be able to make
MAX_NUM_CODEC_DESCRIPTORS to 16. But that will be ABI change :(

Also further down the road if people start hitting this limit add
additional ioctl to get more descriptors, but for Intel devices this is
okay, WM doesn't seem to implement this..

Thanks
-- 
~Vinod


signature.asc
Description: Digital signature


Re: linux-next: build failure after merge of the akpm tree

2016-01-26 Thread Vinod Koul
On Mon, Jan 25, 2016 at 02:45:55PM +0100, Takashi Iwai wrote:
> Below is the revised one.

Acked-by: Vinod Koul 

Thanks for fixing this up...

-- 
~Vinod



Re: linux-next: build failure after merge of the akpm tree

2016-01-26 Thread Vinod Koul
On Mon, Jan 25, 2016 at 02:45:55PM +0100, Takashi Iwai wrote:
> Below is the revised one.

Acked-by: Vinod Koul 

Thanks for fixing this up...

-- 
~Vinod



Re: linux-next: build failure after merge of the akpm tree

2016-01-26 Thread Stephen Rothwell
Hi Takashi,

On Mon, 25 Jan 2016 14:45:55 +0100 Takashi Iwai  wrote:
>
> From: Takashi Iwai 
> Subject: [PATCH v2] ALSA: compress: Disable GET_CODEC_CAPS ioctl for some
>  architectures
> 
> Some architectures like PowerPC can handle the maximum struct size in
> an ioctl only up to 13 bits, and struct snd_compr_codec_caps used by
> SNDRV_COMPRESS_GET_CODEC_CAPS ioctl overflows this limit.  This
> problem was revealed recently by a powerpc change, as it's now treated
> as a fatal build error.
> 
> This patch is a workaround for that: for architectures with less than
> 14 bit ioctl struct size, get rid of the handling of the relevant
> ioctl.  We should provide an alternative equivalent ioctl code later,
> but for now just paper over it.  Luckily, the compress API hasn't been
> used on such architectures, so the impact must be effectively zero.
> 
> Signed-off-by: Takashi Iwai 
> ---
>  sound/core/compress_offload.c | 11 +++
>  1 file changed, 11 insertions(+)
> 
> diff --git a/sound/core/compress_offload.c b/sound/core/compress_offload.c
> index 18b8dc45bb8f..0609e618107a 100644
> --- a/sound/core/compress_offload.c
> +++ b/sound/core/compress_offload.c
> @@ -46,6 +46,13 @@
>  #include 
>  #include 
>  
> +/* FIXME: struct snd_compr_codec_caps overflows the ioctl bit size for some
> + *architectures, so we need to disable the relevant ioctls.
> + */
> +#if _IOC_SIZEBITS < 14
> +#define COMPR_CODEC_CAPS_OVERFLOW
> +#endif
> +
>  /* TODO:
>   * - add substream support for multiple devices in case of
>   *   SND_DYNAMIC_MINORS is not used
> @@ -440,6 +447,7 @@ out:
>   return retval;
>  }
>  
> +#ifndef COMPR_CODEC_CAPS_OVERFLOW
>  static int
>  snd_compr_get_codec_caps(struct snd_compr_stream *stream, unsigned long arg)
>  {
> @@ -463,6 +471,7 @@ out:
>   kfree(caps);
>   return retval;
>  }
> +#endif /* !COMPR_CODEC_CAPS_OVERFLOW */
>  
>  /* revisit this with snd_pcm_preallocate_xxx */
>  static int snd_compr_allocate_buffer(struct snd_compr_stream *stream,
> @@ -801,9 +810,11 @@ static long snd_compr_ioctl(struct file *f, unsigned int 
> cmd, unsigned long arg)
>   case _IOC_NR(SNDRV_COMPRESS_GET_CAPS):
>   retval = snd_compr_get_caps(stream, arg);
>   break;
> +#ifndef COMPR_CODEC_CAPS_OVERFLOW
>   case _IOC_NR(SNDRV_COMPRESS_GET_CODEC_CAPS):
>   retval = snd_compr_get_codec_caps(stream, arg);
>   break;
> +#endif
>   case _IOC_NR(SNDRV_COMPRESS_SET_PARAMS):
>   retval = snd_compr_set_params(stream, arg);
>   break;
> -- 
> 2.7.0

I have replaced my other patch in my fixes tree until someone gets this
patch to Linus.
-- 
Cheers,
Stephen Rothwells...@canb.auug.org.au


Re: linux-next: build failure after merge of the akpm tree

2016-01-26 Thread Takashi Iwai
On Tue, 26 Jan 2016 21:51:30 +0100,
Stephen Rothwell wrote:
> 
> Hi Takashi,
> 
> On Mon, 25 Jan 2016 14:45:55 +0100 Takashi Iwai  wrote:
> >
> > From: Takashi Iwai 
> > Subject: [PATCH v2] ALSA: compress: Disable GET_CODEC_CAPS ioctl for some
> >  architectures
> > 
> > Some architectures like PowerPC can handle the maximum struct size in
> > an ioctl only up to 13 bits, and struct snd_compr_codec_caps used by
> > SNDRV_COMPRESS_GET_CODEC_CAPS ioctl overflows this limit.  This
> > problem was revealed recently by a powerpc change, as it's now treated
> > as a fatal build error.
> > 
> > This patch is a workaround for that: for architectures with less than
> > 14 bit ioctl struct size, get rid of the handling of the relevant
> > ioctl.  We should provide an alternative equivalent ioctl code later,
> > but for now just paper over it.  Luckily, the compress API hasn't been
> > used on such architectures, so the impact must be effectively zero.
> > 
> > Signed-off-by: Takashi Iwai 
> > ---
> >  sound/core/compress_offload.c | 11 +++
> >  1 file changed, 11 insertions(+)
> > 
> > diff --git a/sound/core/compress_offload.c b/sound/core/compress_offload.c
> > index 18b8dc45bb8f..0609e618107a 100644
> > --- a/sound/core/compress_offload.c
> > +++ b/sound/core/compress_offload.c
> > @@ -46,6 +46,13 @@
> >  #include 
> >  #include 
> >  
> > +/* FIXME: struct snd_compr_codec_caps overflows the ioctl bit size for some
> > + *architectures, so we need to disable the relevant ioctls.
> > + */
> > +#if _IOC_SIZEBITS < 14
> > +#define COMPR_CODEC_CAPS_OVERFLOW
> > +#endif
> > +
> >  /* TODO:
> >   * - add substream support for multiple devices in case of
> >   * SND_DYNAMIC_MINORS is not used
> > @@ -440,6 +447,7 @@ out:
> > return retval;
> >  }
> >  
> > +#ifndef COMPR_CODEC_CAPS_OVERFLOW
> >  static int
> >  snd_compr_get_codec_caps(struct snd_compr_stream *stream, unsigned long 
> > arg)
> >  {
> > @@ -463,6 +471,7 @@ out:
> > kfree(caps);
> > return retval;
> >  }
> > +#endif /* !COMPR_CODEC_CAPS_OVERFLOW */
> >  
> >  /* revisit this with snd_pcm_preallocate_xxx */
> >  static int snd_compr_allocate_buffer(struct snd_compr_stream *stream,
> > @@ -801,9 +810,11 @@ static long snd_compr_ioctl(struct file *f, unsigned 
> > int cmd, unsigned long arg)
> > case _IOC_NR(SNDRV_COMPRESS_GET_CAPS):
> > retval = snd_compr_get_caps(stream, arg);
> > break;
> > +#ifndef COMPR_CODEC_CAPS_OVERFLOW
> > case _IOC_NR(SNDRV_COMPRESS_GET_CODEC_CAPS):
> > retval = snd_compr_get_codec_caps(stream, arg);
> > break;
> > +#endif
> > case _IOC_NR(SNDRV_COMPRESS_SET_PARAMS):
> > retval = snd_compr_set_params(stream, arg);
> > break;
> > -- 
> > 2.7.0
> 
> I have replaced my other patch in my fixes tree until someone gets this
> patch to Linus.

I've merged this to for-linus branch, so it'll be included in the next
pull request.


thanks,

Takashi


Re: linux-next: build failure after merge of the akpm tree

2016-01-26 Thread Vinod Koul
On Mon, Jan 25, 2016 at 01:55:46PM +, Mark Brown wrote:
> 
> though we will need to come up with an alternative solution for the
> affected architectures if anyone ends up caring (MIPS or PowerPC might
> possibly).

Okay I did some rethink on this. So we should be able to make
MAX_NUM_CODEC_DESCRIPTORS to 16. But that will be ABI change :(

Also further down the road if people start hitting this limit add
additional ioctl to get more descriptors, but for Intel devices this is
okay, WM doesn't seem to implement this..

Thanks
-- 
~Vinod


signature.asc
Description: Digital signature


Re: linux-next: build failure after merge of the akpm tree

2016-01-25 Thread Sudip Mukherjee
On Mon, Jan 25, 2016 at 02:45:55PM +0100, Takashi Iwai wrote:
> On Mon, 25 Jan 2016 14:10:37 +0100,
> Takashi Iwai wrote:
> > 
> > On Mon, 25 Jan 2016 12:41:50 +0100,
> > Mark Brown wrote:
> > > 
> > 
> > Signed-off-by: Takashi Iwai 
> > ---
> >  sound/core/compress_offload.c | 11 +++
> >  1 file changed, 11 insertions(+)
> > 
> > diff --git a/sound/core/compress_offload.c b/sound/core/compress_offload.c
> > index 18b8dc45bb8f..36b0083fd9f4 100644
> > --- a/sound/core/compress_offload.c
> > +++ b/sound/core/compress_offload.c
> > @@ -46,6 +46,13 @@
> >  #include 
> >  #include 
> >  
> > +/* FIXME: struct snd_compr_codec_caps overflows the ioctl bit size for some
> > + *architectures, so we need to disable the relevant ioctls.
> > + */
> > +#if _IOC_SIZEBITS < 13
> 
> Argh, a typo here.  I forgot to refresh the patch, sorry.
> 
> Below is the revised one.

powerpc allmodconfig builds properly now.

Acked-by: Sudip Mukherjee 

regards
sudip


Re: linux-next: build failure after merge of the akpm tree

2016-01-25 Thread Mark Brown
On Mon, Jan 25, 2016 at 02:45:55PM +0100, Takashi Iwai wrote:

> Argh, a typo here.  I forgot to refresh the patch, sorry.

> Below is the revised one.

This makes sense to me.

Reviwed-by: Mark Brown 

though we will need to come up with an alternative solution for the
affected architectures if anyone ends up caring (MIPS or PowerPC might
possibly).


signature.asc
Description: PGP signature


Re: linux-next: build failure after merge of the akpm tree

2016-01-25 Thread Takashi Iwai
On Mon, 25 Jan 2016 14:10:37 +0100,
Takashi Iwai wrote:
> 
> On Mon, 25 Jan 2016 12:41:50 +0100,
> Mark Brown wrote:
> > 
> > On Mon, Jan 25, 2016 at 10:29:54AM +0100, Takashi Iwai wrote:
> > > Stephen Rothwell wrote:
> > 
> > > > diff --git a/sound/soc/codecs/Kconfig b/sound/soc/codecs/Kconfig
> > > > index 50693c867e71..ee5f36b9c787 100644
> > > > --- a/sound/soc/codecs/Kconfig
> > > > +++ b/sound/soc/codecs/Kconfig
> > > > @@ -13,6 +13,7 @@ menu "CODEC drivers"
> > > >  config SND_SOC_ALL_CODECS
> > > > tristate "Build all ASoC CODEC drivers"
> > > > depends on COMPILE_TEST
> > > > +   depends on !PPC
> > > > select SND_SOC_88PM860X if MFD_88PM860X
> > > > select SND_SOC_L3
> > > > select SND_SOC_AB8500_CODEC if ABX500_CORE
> > 
> > > Suppressing this whole is an overreaction, IMO.  It should suffice
> > > just to disable compile-testing Intel driver.
> > 
> > Please send patches and reports to maintainers :(  I agree that this is
> > an absurdly wide change.
> > 
> > > diff --git a/sound/soc/intel/Kconfig b/sound/soc/intel/Kconfig
> > > index 803f95e40679..d854cd66e090 100644
> > > --- a/sound/soc/intel/Kconfig
> > > +++ b/sound/soc/intel/Kconfig
> > > @@ -31,6 +31,8 @@ config SND_SOC_INTEL_SST
> > >   tristate
> > >   select SND_SOC_INTEL_SST_ACPI if ACPI
> > >   depends on (X86 || COMPILE_TEST)
> > > + # FIXME: a part of compress API is broken for PPC
> > > + depends on !PPC
> > 
> > Why is an Intel CPU thing being enabled by SND_SOC_ALL_CODECS?  I'm also
> > unclear why this will help when we're selecting in the drivers so their
> > dependencies will be ignored.
> 
> Yeah, obviously papering over a wrong place.
> 
> In anyway, thinking of this workaround again, I don't think it being
> the best way.  The easier and safer workaround is to just avoid the
> corresponding ioctl being handled.  The untested patch is attached
> below.
> 
> 
> thanks,
> 
> Takashi
> 
> -- 8< --
> From: Takashi Iwai 
> Subject: [PATCH] ALSA: compress: Disable GET_CODEC_CAPS ioctl for some
>  architectures
> 
> Some architectures like PowerPC can handle the maximum struct size in
> an ioctl only up to 13 bits, and struct snd_compr_codec_caps used by
> SNDRV_COMPRESS_GET_CODEC_CAPS ioctl overflows this limit.  This
> problem was revealed recently by a powerpc change, as it's now treated
> as a fatal build error.
> 
> This patch is a workaround for that: for architectures with less than
> 14 bit ioctl struct size, get rid of the handling of the relevant
> ioctl.  We should provide an alternative equivalent ioctl code later,
> but for now just paper over it.  Luckily, the compress API hasn't been
> used on such architectures, so the impact must be effectively zero.
> 
> Signed-off-by: Takashi Iwai 
> ---
>  sound/core/compress_offload.c | 11 +++
>  1 file changed, 11 insertions(+)
> 
> diff --git a/sound/core/compress_offload.c b/sound/core/compress_offload.c
> index 18b8dc45bb8f..36b0083fd9f4 100644
> --- a/sound/core/compress_offload.c
> +++ b/sound/core/compress_offload.c
> @@ -46,6 +46,13 @@
>  #include 
>  #include 
>  
> +/* FIXME: struct snd_compr_codec_caps overflows the ioctl bit size for some
> + *architectures, so we need to disable the relevant ioctls.
> + */
> +#if _IOC_SIZEBITS < 13

Argh, a typo here.  I forgot to refresh the patch, sorry.

Below is the revised one.


Takashi

-- 8< --
From: Takashi Iwai 
Subject: [PATCH v2] ALSA: compress: Disable GET_CODEC_CAPS ioctl for some
 architectures

Some architectures like PowerPC can handle the maximum struct size in
an ioctl only up to 13 bits, and struct snd_compr_codec_caps used by
SNDRV_COMPRESS_GET_CODEC_CAPS ioctl overflows this limit.  This
problem was revealed recently by a powerpc change, as it's now treated
as a fatal build error.

This patch is a workaround for that: for architectures with less than
14 bit ioctl struct size, get rid of the handling of the relevant
ioctl.  We should provide an alternative equivalent ioctl code later,
but for now just paper over it.  Luckily, the compress API hasn't been
used on such architectures, so the impact must be effectively zero.

Signed-off-by: Takashi Iwai 
---
 sound/core/compress_offload.c | 11 +++
 1 file changed, 11 insertions(+)

diff --git a/sound/core/compress_offload.c b/sound/core/compress_offload.c
index 18b8dc45bb8f..0609e618107a 100644
--- a/sound/core/compress_offload.c
+++ b/sound/core/compress_offload.c
@@ -46,6 +46,13 @@
 #include 
 #include 
 
+/* FIXME: struct snd_compr_codec_caps overflows the ioctl bit size for some
+ *architectures, so we need to disable the relevant ioctls.
+ */
+#if _IOC_SIZEBITS < 14
+#define COMPR_CODEC_CAPS_OVERFLOW
+#endif
+
 /* TODO:
  * - add substream support for multiple devices in case of
  * SND_DYNAMIC_MINORS is not used
@@ -440,6 +447,7 @@ out:
return retval;
 }
 
+#ifndef COMPR_CODEC_CAPS_OVERFLOW
 static int
 snd_compr_get_codec_caps(struct snd_compr_stream *stream, unsigned 

Re: linux-next: build failure after merge of the akpm tree

2016-01-25 Thread Takashi Iwai
On Mon, 25 Jan 2016 12:41:50 +0100,
Mark Brown wrote:
> 
> On Mon, Jan 25, 2016 at 10:29:54AM +0100, Takashi Iwai wrote:
> > Stephen Rothwell wrote:
> 
> > > diff --git a/sound/soc/codecs/Kconfig b/sound/soc/codecs/Kconfig
> > > index 50693c867e71..ee5f36b9c787 100644
> > > --- a/sound/soc/codecs/Kconfig
> > > +++ b/sound/soc/codecs/Kconfig
> > > @@ -13,6 +13,7 @@ menu "CODEC drivers"
> > >  config SND_SOC_ALL_CODECS
> > >   tristate "Build all ASoC CODEC drivers"
> > >   depends on COMPILE_TEST
> > > + depends on !PPC
> > >   select SND_SOC_88PM860X if MFD_88PM860X
> > >   select SND_SOC_L3
> > >   select SND_SOC_AB8500_CODEC if ABX500_CORE
> 
> > Suppressing this whole is an overreaction, IMO.  It should suffice
> > just to disable compile-testing Intel driver.
> 
> Please send patches and reports to maintainers :(  I agree that this is
> an absurdly wide change.
> 
> > diff --git a/sound/soc/intel/Kconfig b/sound/soc/intel/Kconfig
> > index 803f95e40679..d854cd66e090 100644
> > --- a/sound/soc/intel/Kconfig
> > +++ b/sound/soc/intel/Kconfig
> > @@ -31,6 +31,8 @@ config SND_SOC_INTEL_SST
> > tristate
> > select SND_SOC_INTEL_SST_ACPI if ACPI
> > depends on (X86 || COMPILE_TEST)
> > +   # FIXME: a part of compress API is broken for PPC
> > +   depends on !PPC
> 
> Why is an Intel CPU thing being enabled by SND_SOC_ALL_CODECS?  I'm also
> unclear why this will help when we're selecting in the drivers so their
> dependencies will be ignored.

Yeah, obviously papering over a wrong place.

In anyway, thinking of this workaround again, I don't think it being
the best way.  The easier and safer workaround is to just avoid the
corresponding ioctl being handled.  The untested patch is attached
below.


thanks,

Takashi

-- 8< --
From: Takashi Iwai 
Subject: [PATCH] ALSA: compress: Disable GET_CODEC_CAPS ioctl for some
 architectures

Some architectures like PowerPC can handle the maximum struct size in
an ioctl only up to 13 bits, and struct snd_compr_codec_caps used by
SNDRV_COMPRESS_GET_CODEC_CAPS ioctl overflows this limit.  This
problem was revealed recently by a powerpc change, as it's now treated
as a fatal build error.

This patch is a workaround for that: for architectures with less than
14 bit ioctl struct size, get rid of the handling of the relevant
ioctl.  We should provide an alternative equivalent ioctl code later,
but for now just paper over it.  Luckily, the compress API hasn't been
used on such architectures, so the impact must be effectively zero.

Signed-off-by: Takashi Iwai 
---
 sound/core/compress_offload.c | 11 +++
 1 file changed, 11 insertions(+)

diff --git a/sound/core/compress_offload.c b/sound/core/compress_offload.c
index 18b8dc45bb8f..36b0083fd9f4 100644
--- a/sound/core/compress_offload.c
+++ b/sound/core/compress_offload.c
@@ -46,6 +46,13 @@
 #include 
 #include 
 
+/* FIXME: struct snd_compr_codec_caps overflows the ioctl bit size for some
+ *architectures, so we need to disable the relevant ioctls.
+ */
+#if _IOC_SIZEBITS < 13
+#define COMPR_CODEC_CAPS_OVERFLOW
+#endif
+
 /* TODO:
  * - add substream support for multiple devices in case of
  * SND_DYNAMIC_MINORS is not used
@@ -440,6 +447,7 @@ out:
return retval;
 }
 
+#ifndef COMPR_CODEC_CAPS_OVERFLOW
 static int
 snd_compr_get_codec_caps(struct snd_compr_stream *stream, unsigned long arg)
 {
@@ -463,6 +471,7 @@ out:
kfree(caps);
return retval;
 }
+#endif /* !COMPR_CODEC_CAPS_OVERFLOW */
 
 /* revisit this with snd_pcm_preallocate_xxx */
 static int snd_compr_allocate_buffer(struct snd_compr_stream *stream,
@@ -801,9 +810,11 @@ static long snd_compr_ioctl(struct file *f, unsigned int 
cmd, unsigned long arg)
case _IOC_NR(SNDRV_COMPRESS_GET_CAPS):
retval = snd_compr_get_caps(stream, arg);
break;
+#ifndef COMPR_CODEC_CAPS_OVERFLOW
case _IOC_NR(SNDRV_COMPRESS_GET_CODEC_CAPS):
retval = snd_compr_get_codec_caps(stream, arg);
break;
+#endif
case _IOC_NR(SNDRV_COMPRESS_SET_PARAMS):
retval = snd_compr_set_params(stream, arg);
break;
-- 
2.7.0



Re: linux-next: build failure after merge of the akpm tree

2016-01-25 Thread Mark Brown
On Mon, Jan 25, 2016 at 10:29:54AM +0100, Takashi Iwai wrote:
> Stephen Rothwell wrote:

> > diff --git a/sound/soc/codecs/Kconfig b/sound/soc/codecs/Kconfig
> > index 50693c867e71..ee5f36b9c787 100644
> > --- a/sound/soc/codecs/Kconfig
> > +++ b/sound/soc/codecs/Kconfig
> > @@ -13,6 +13,7 @@ menu "CODEC drivers"
> >  config SND_SOC_ALL_CODECS
> > tristate "Build all ASoC CODEC drivers"
> > depends on COMPILE_TEST
> > +   depends on !PPC
> > select SND_SOC_88PM860X if MFD_88PM860X
> > select SND_SOC_L3
> > select SND_SOC_AB8500_CODEC if ABX500_CORE

> Suppressing this whole is an overreaction, IMO.  It should suffice
> just to disable compile-testing Intel driver.

Please send patches and reports to maintainers :(  I agree that this is
an absurdly wide change.

> diff --git a/sound/soc/intel/Kconfig b/sound/soc/intel/Kconfig
> index 803f95e40679..d854cd66e090 100644
> --- a/sound/soc/intel/Kconfig
> +++ b/sound/soc/intel/Kconfig
> @@ -31,6 +31,8 @@ config SND_SOC_INTEL_SST
>   tristate
>   select SND_SOC_INTEL_SST_ACPI if ACPI
>   depends on (X86 || COMPILE_TEST)
> + # FIXME: a part of compress API is broken for PPC
> + depends on !PPC

Why is an Intel CPU thing being enabled by SND_SOC_ALL_CODECS?  I'm also
unclear why this will help when we're selecting in the drivers so their
dependencies will be ignored.


signature.asc
Description: PGP signature


  1   2   3   4   >