* [hnaz-linux-mm:master 82/248] arch/powerpc/mm/nohash/tlb.c:409:6: warning: no previous prototype for 'tlb_flush_pgtable'
@ 2020-07-08 14:17 kernel test robot
2020-07-08 15:15 ` Mike Rapoport
0 siblings, 1 reply; 2+ messages in thread
From: kernel test robot @ 2020-07-08 14:17 UTC (permalink / raw)
To: Mike Rapoport
Cc: kbuild-all, Johannes Weiner, Pekka Enberg, Andrew Morton,
Linux Memory Management List
[-- Attachment #1: Type: text/plain, Size: 5253 bytes --]
tree: https://github.com/hnaz/linux-mm master
head: 7ffdd789c7f570af323ad890ab09118af2e3b0d9
commit: 9939c9934d2e30d1a3b3f7d85572ce3d5f2b0c90 [82/248] mm: remove unneeded includes of <asm/pgalloc.h>
config: powerpc-randconfig-r032-20200708 (attached as .config)
compiler: powerpc64-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout 9939c9934d2e30d1a3b3f7d85572ce3d5f2b0c90
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=powerpc
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All warnings (new ones prefixed by >>):
>> arch/powerpc/mm/nohash/tlb.c:409:6: warning: no previous prototype for 'tlb_flush_pgtable' [-Wmissing-prototypes]
409 | void tlb_flush_pgtable(struct mmu_gather *tlb, unsigned long address)
| ^~~~~~~~~~~~~~~~~
vim +/tlb_flush_pgtable +409 arch/powerpc/mm/nohash/tlb.c
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 404
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 405 /*
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 406 * Handling of virtual linear page tables or indirect TLB entries
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 407 * flushing when PTE pages are freed
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 408 */
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 @409 void tlb_flush_pgtable(struct mmu_gather *tlb, unsigned long address)
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 410 {
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 411 int tsize = mmu_psize_defs[mmu_pte_psize].enc;
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 412
28efc35fe68dac arch/powerpc/mm/tlb_nohash.c Scott Wood 2013-10-11 413 if (book3e_htw_mode != PPC_HTW_NONE) {
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 414 unsigned long start = address & PMD_MASK;
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 415 unsigned long end = address + PMD_SIZE;
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 416 unsigned long size = 1UL << mmu_psize_defs[mmu_pte_psize].shift;
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 417
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 418 /* This isn't the most optimal, ideally we would factor out the
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 419 * while preempt & CPU mask mucking around, or even the IPI but
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 420 * it will do for now
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 421 */
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 422 while (start < end) {
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 423 __flush_tlb_page(tlb->mm, start, tsize, 1);
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 424 start += size;
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 425 }
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 426 } else {
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 427 unsigned long rmask = 0xf000000000000000ul;
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 428 unsigned long rid = (address & rmask) | 0x1000000000000000ul;
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 429 unsigned long vpte = address & ~rmask;
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 430
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 431 vpte = (vpte >> (PAGE_SHIFT - 3)) & ~0xffful;
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 432 vpte |= rid;
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 433 __flush_tlb_page(tlb->mm, vpte, tsize, 0);
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 434 }
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 435 }
25d21ad6e799cc arch/powerpc/mm/tlb_nohash.c Benjamin Herrenschmidt 2009-07-23 436
:::::: The code at line 409 was first introduced by commit
:::::: 25d21ad6e799cccd097b9df2a2fefe19a7e1dfcf powerpc: Add TLB management code for 64-bit Book3E
:::::: TO: Benjamin Herrenschmidt <benh@kernel.crashing.org>
:::::: CC: Benjamin Herrenschmidt <benh@kernel.crashing.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 31392 bytes --]
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [hnaz-linux-mm:master 82/248] arch/powerpc/mm/nohash/tlb.c:409:6: warning: no previous prototype for 'tlb_flush_pgtable'
2020-07-08 14:17 [hnaz-linux-mm:master 82/248] arch/powerpc/mm/nohash/tlb.c:409:6: warning: no previous prototype for 'tlb_flush_pgtable' kernel test robot
@ 2020-07-08 15:15 ` Mike Rapoport
0 siblings, 0 replies; 2+ messages in thread
From: Mike Rapoport @ 2020-07-08 15:15 UTC (permalink / raw)
To: kernel test robot
Cc: kbuild-all, Johannes Weiner, Pekka Enberg, Andrew Morton,
Linux Memory Management List
On Wed, Jul 08, 2020 at 10:17:08PM +0800, kernel test robot wrote:
> tree: https://github.com/hnaz/linux-mm master
> head: 7ffdd789c7f570af323ad890ab09118af2e3b0d9
> commit: 9939c9934d2e30d1a3b3f7d85572ce3d5f2b0c90 [82/248] mm: remove unneeded includes of <asm/pgalloc.h>
> config: powerpc-randconfig-r032-20200708 (attached as .config)
> compiler: powerpc64-linux-gcc (GCC) 9.3.0
> reproduce (this is a W=1 build):
> wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
> chmod +x ~/bin/make.cross
> git checkout 9939c9934d2e30d1a3b3f7d85572ce3d5f2b0c90
> # save the attached .config to linux build tree
> COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=powerpc
>
> If you fix the issue, kindly add following tag as appropriate
> Reported-by: kernel test robot <lkp@intel.com>
>
> All warnings (new ones prefixed by >>):
>
> >> arch/powerpc/mm/nohash/tlb.c:409:6: warning: no previous prototype for 'tlb_flush_pgtable' [-Wmissing-prototypes]
> 409 | void tlb_flush_pgtable(struct mmu_gather *tlb, unsigned long address)
> | ^~~~~~~~~~~~~~~~~
Here is the fix:
From f3c049a1b49f6ed92a61746e05a0087943d79254 Mon Sep 17 00:00:00 2001
From: Mike Rapoport <rppt@linux.ibm.com>
Date: Wed, 8 Jul 2020 18:10:47 +0300
Subject: [PATCH] powerpc: fix compilation warning caused by missing include of
asm/pgalloc.h
Recent rework of asm/pgalloc.h caused a compilation warning reported by
kbuild bot:
All warnings (new ones prefixed by >>):
>> arch/powerpc/mm/nohash/tlb.c:409:6: warning: no previous prototype for
>> 'tlb_flush_pgtable' [-Wmissing-prototypes]
409 | void tlb_flush_pgtable(struct mmu_gather *tlb, unsigned long address)
| ^~~~~~~~~~~~~~~~~
Add missing include of asm/pgtable.h to arch/powerpc/mm/nohash/tlb.c to
make tlb_flush_pgtable() prototype visible there.
Reported-by: kernel test robot <lkp@intel.com>
Signed-off-by: Mike Rapoport <rppt@linux.ibm.com>
---
arch/powerpc/mm/nohash/tlb.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/powerpc/mm/nohash/tlb.c b/arch/powerpc/mm/nohash/tlb.c
index 696f568253a0..14514585db98 100644
--- a/arch/powerpc/mm/nohash/tlb.c
+++ b/arch/powerpc/mm/nohash/tlb.c
@@ -34,6 +34,7 @@
#include <linux/of_fdt.h>
#include <linux/hugetlb.h>
+#include <asm/pgalloc.h>
#include <asm/tlbflush.h>
#include <asm/tlb.h>
#include <asm/code-patching.h>
--
2.26.2
^ permalink raw reply related [flat|nested] 2+ messages in thread
end of thread, other threads:[~2020-07-08 15:16 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-08 14:17 [hnaz-linux-mm:master 82/248] arch/powerpc/mm/nohash/tlb.c:409:6: warning: no previous prototype for 'tlb_flush_pgtable' kernel test robot
2020-07-08 15:15 ` Mike Rapoport
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).