From: kernel test robot <lkp@intel.com>
To: Mike Rapoport <rppt@linux.ibm.com>
Cc: kbuild-all@lists.01.org, Johannes Weiner <hannes@cmpxchg.org>,
Andrew Morton <akpm@linux-foundation.org>,
Linux Memory Management List <linux-mm@kvack.org>
Subject: [hnaz-linux-mm:master 432/544] arch/powerpc/include/asm/nohash/32/pgtable.h:237:37: error: implicit declaration of function 'pgd_offset'; did you mean
Date: Sun, 7 Jun 2020 14:18:26 +0800 [thread overview]
Message-ID: <202006071413.AYGlhYXM%lkp@intel.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 10855 bytes --]
tree: https://github.com/hnaz/linux-mm master
head: 82f0963cec9bc87571b9666fee12a6a2e47d1193
commit: aecd6390e2fec5d15dea7c20a8d44d3a00ace96e [432/544] mm: consolidate pgd_index() and pgd_offset{_k}() definitions
config: powerpc-randconfig-r035-20200607 (attached as .config)
compiler: powerpc-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 aecd6390e2fec5d15dea7c20a8d44d3a00ace96e
# 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 error/warnings (new ones prefixed by >>, old ones prefixed by <<):
In file included from arch/powerpc/include/asm/nohash/pgtable.h:8,
from arch/powerpc/include/asm/pgtable.h:20,
from include/linux/pgtable.h:6,
from arch/powerpc/include/asm/kup.h:42,
from arch/powerpc/include/asm/uaccess.h:9,
from include/linux/uaccess.h:11,
from include/linux/crypto.h:21,
from include/crypto/hash.h:11,
from include/linux/uio.h:10,
from include/linux/socket.h:8,
from include/linux/compat.h:15,
from arch/powerpc/kernel/asm-offsets.c:14:
arch/powerpc/include/asm/nohash/32/pgtable.h: In function 'pte_update':
<< from arch/powerpc/include/asm/nohash/32/pgtable.h:5,
>> arch/powerpc/include/asm/nohash/32/pgtable.h:237:37: error: implicit declaration of function 'pgd_offset'; did you mean 'pmd_offset'? [-Werror=implicit-function-declaration]
237 | pmd_t *pmd = pmd_offset(pud_offset(pgd_offset(mm, addr), addr), addr);
| ^~~~~~~~~~
| pmd_offset
<< from arch/powerpc/include/asm/nohash/32/pgtable.h:5,
>> arch/powerpc/include/asm/nohash/32/pgtable.h:237:37: warning: passing argument 1 of 'pud_offset' makes pointer from integer without a cast [-Wint-conversion]
237 | pmd_t *pmd = pmd_offset(pud_offset(pgd_offset(mm, addr), addr), addr);
| ^~~~~~~~~~~~~~~~~~~~
| |
| int
In file included from include/asm-generic/pgtable-nopmd.h:7,
from arch/powerpc/include/asm/nohash/32/pgtable.h:5,
from arch/powerpc/include/asm/nohash/pgtable.h:8,
from arch/powerpc/include/asm/pgtable.h:20,
from include/linux/pgtable.h:6,
from arch/powerpc/include/asm/kup.h:42,
from arch/powerpc/include/asm/uaccess.h:9,
from include/linux/uaccess.h:11,
from include/linux/crypto.h:21,
from include/crypto/hash.h:11,
from include/linux/uio.h:10,
from include/linux/socket.h:8,
from include/linux/compat.h:15,
from arch/powerpc/kernel/asm-offsets.c:14:
include/asm-generic/pgtable-nopud.h:42:40: note: expected 'p4d_t *' {aka 'struct <anonymous> *'} but argument is of type 'int'
42 | static inline pud_t *pud_offset(p4d_t *p4d, unsigned long address)
| ~~~~~~~^~~
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:114: arch/powerpc/kernel/asm-offsets.s] Error 1
make[2]: Target '__build' not remade because of errors.
make[1]: *** [Makefile:1168: prepare0] Error 2
make[1]: Target 'prepare' not remade because of errors.
make: *** [Makefile:185: __sub-make] Error 2
vim +237 arch/powerpc/include/asm/nohash/32/pgtable.h
f281b5d50c87ec arch/powerpc/include/asm/pgtable-ppc32.h Aneesh Kumar K.V 2015-12-01 207
f281b5d50c87ec arch/powerpc/include/asm/pgtable-ppc32.h Aneesh Kumar K.V 2015-12-01 208
f88df14b1f15cd include/asm-powerpc/pgtable-ppc32.h David Gibson 2007-04-30 209 /*
c605782b1c3f1c arch/powerpc/include/asm/pgtable-ppc32.h Benjamin Herrenschmidt 2009-03-10 210 * PTE updates. This function is called whenever an existing
c605782b1c3f1c arch/powerpc/include/asm/pgtable-ppc32.h Benjamin Herrenschmidt 2009-03-10 211 * valid PTE is updated. This does -not- include set_pte_at()
c605782b1c3f1c arch/powerpc/include/asm/pgtable-ppc32.h Benjamin Herrenschmidt 2009-03-10 212 * which nowadays only sets a new PTE.
c605782b1c3f1c arch/powerpc/include/asm/pgtable-ppc32.h Benjamin Herrenschmidt 2009-03-10 213 *
c605782b1c3f1c arch/powerpc/include/asm/pgtable-ppc32.h Benjamin Herrenschmidt 2009-03-10 214 * Depending on the type of MMU, we may need to use atomic updates
c605782b1c3f1c arch/powerpc/include/asm/pgtable-ppc32.h Benjamin Herrenschmidt 2009-03-10 215 * and the PTE may be either 32 or 64 bit wide. In the later case,
c605782b1c3f1c arch/powerpc/include/asm/pgtable-ppc32.h Benjamin Herrenschmidt 2009-03-10 216 * when using atomic updates, only the low part of the PTE is
c605782b1c3f1c arch/powerpc/include/asm/pgtable-ppc32.h Benjamin Herrenschmidt 2009-03-10 217 * accessed atomically.
f88df14b1f15cd include/asm-powerpc/pgtable-ppc32.h David Gibson 2007-04-30 218 *
c605782b1c3f1c arch/powerpc/include/asm/pgtable-ppc32.h Benjamin Herrenschmidt 2009-03-10 219 * In addition, on 44x, we also maintain a global flag indicating
c605782b1c3f1c arch/powerpc/include/asm/pgtable-ppc32.h Benjamin Herrenschmidt 2009-03-10 220 * that an executable user mapping was modified, which is needed
c605782b1c3f1c arch/powerpc/include/asm/pgtable-ppc32.h Benjamin Herrenschmidt 2009-03-10 221 * to properly flush the virtually tagged instruction cache of
c605782b1c3f1c arch/powerpc/include/asm/pgtable-ppc32.h Benjamin Herrenschmidt 2009-03-10 222 * those implementations.
1158b8c9d53efa arch/powerpc/include/asm/nohash/32/pgtable.h Andrew Morton 2020-06-04 223 *
1158b8c9d53efa arch/powerpc/include/asm/nohash/32/pgtable.h Andrew Morton 2020-06-04 224 * On the 8xx, the page tables are a bit special. For 16k pages, we have
1158b8c9d53efa arch/powerpc/include/asm/nohash/32/pgtable.h Andrew Morton 2020-06-04 225 * 4 identical entries. For 512k pages, we have 128 entries as if it was
1158b8c9d53efa arch/powerpc/include/asm/nohash/32/pgtable.h Andrew Morton 2020-06-04 226 * 4k pages, but they are flagged as 512k pages for the hardware.
1158b8c9d53efa arch/powerpc/include/asm/nohash/32/pgtable.h Andrew Morton 2020-06-04 227 * For other page sizes, we have a single entry in the table.
f88df14b1f15cd include/asm-powerpc/pgtable-ppc32.h David Gibson 2007-04-30 228 */
1158b8c9d53efa arch/powerpc/include/asm/nohash/32/pgtable.h Andrew Morton 2020-06-04 229 #ifdef CONFIG_PPC_8xx
1158b8c9d53efa arch/powerpc/include/asm/nohash/32/pgtable.h Andrew Morton 2020-06-04 230 static inline pte_basic_t pte_update(struct mm_struct *mm, unsigned long addr, pte_t *p,
1158b8c9d53efa arch/powerpc/include/asm/nohash/32/pgtable.h Andrew Morton 2020-06-04 231 unsigned long clr, unsigned long set, int huge)
f88df14b1f15cd include/asm-powerpc/pgtable-ppc32.h David Gibson 2007-04-30 232 {
1158b8c9d53efa arch/powerpc/include/asm/nohash/32/pgtable.h Andrew Morton 2020-06-04 233 pte_basic_t *entry = &p->pte;
1158b8c9d53efa arch/powerpc/include/asm/nohash/32/pgtable.h Andrew Morton 2020-06-04 234 pte_basic_t old = pte_val(*p);
1158b8c9d53efa arch/powerpc/include/asm/nohash/32/pgtable.h Andrew Morton 2020-06-04 235 pte_basic_t new = (old & ~(pte_basic_t)clr) | set;
1158b8c9d53efa arch/powerpc/include/asm/nohash/32/pgtable.h Andrew Morton 2020-06-04 236 int num, i;
1158b8c9d53efa arch/powerpc/include/asm/nohash/32/pgtable.h Andrew Morton 2020-06-04 @237 pmd_t *pmd = pmd_offset(pud_offset(pgd_offset(mm, addr), addr), addr);
1158b8c9d53efa arch/powerpc/include/asm/nohash/32/pgtable.h Andrew Morton 2020-06-04 238
1158b8c9d53efa arch/powerpc/include/asm/nohash/32/pgtable.h Andrew Morton 2020-06-04 239 if (!huge)
1158b8c9d53efa arch/powerpc/include/asm/nohash/32/pgtable.h Andrew Morton 2020-06-04 240 num = PAGE_SIZE / SZ_4K;
1158b8c9d53efa arch/powerpc/include/asm/nohash/32/pgtable.h Andrew Morton 2020-06-04 241 else if ((pmd_val(*pmd) & _PMD_PAGE_MASK) != _PMD_PAGE_8M)
1158b8c9d53efa arch/powerpc/include/asm/nohash/32/pgtable.h Andrew Morton 2020-06-04 242 num = SZ_512K / SZ_4K;
1158b8c9d53efa arch/powerpc/include/asm/nohash/32/pgtable.h Andrew Morton 2020-06-04 243 else
1158b8c9d53efa arch/powerpc/include/asm/nohash/32/pgtable.h Andrew Morton 2020-06-04 244 num = 1;
1158b8c9d53efa arch/powerpc/include/asm/nohash/32/pgtable.h Andrew Morton 2020-06-04 245
1158b8c9d53efa arch/powerpc/include/asm/nohash/32/pgtable.h Andrew Morton 2020-06-04 246 for (i = 0; i < num; i++, entry++, new += SZ_4K)
1158b8c9d53efa arch/powerpc/include/asm/nohash/32/pgtable.h Andrew Morton 2020-06-04 247 *entry = new;
1bc54c03117b90 include/asm-powerpc/pgtable-ppc32.h Benjamin Herrenschmidt 2008-07-08 248
f88df14b1f15cd include/asm-powerpc/pgtable-ppc32.h David Gibson 2007-04-30 249 return old;
f88df14b1f15cd include/asm-powerpc/pgtable-ppc32.h David Gibson 2007-04-30 250 }
1158b8c9d53efa arch/powerpc/include/asm/nohash/32/pgtable.h Andrew Morton 2020-06-04 251 #else
1158b8c9d53efa arch/powerpc/include/asm/nohash/32/pgtable.h Andrew Morton 2020-06-04 252 static inline pte_basic_t pte_update(struct mm_struct *mm, unsigned long addr, pte_t *p,
1158b8c9d53efa arch/powerpc/include/asm/nohash/32/pgtable.h Andrew Morton 2020-06-04 253 unsigned long clr, unsigned long set, int huge)
f88df14b1f15cd include/asm-powerpc/pgtable-ppc32.h David Gibson 2007-04-30 254 {
1158b8c9d53efa arch/powerpc/include/asm/nohash/32/pgtable.h Andrew Morton 2020-06-04 255 pte_basic_t old = pte_val(*p);
1158b8c9d53efa arch/powerpc/include/asm/nohash/32/pgtable.h Andrew Morton 2020-06-04 256 pte_basic_t new = (old & ~(pte_basic_t)clr) | set;
1158b8c9d53efa arch/powerpc/include/asm/nohash/32/pgtable.h Andrew Morton 2020-06-04 257
1158b8c9d53efa arch/powerpc/include/asm/nohash/32/pgtable.h Andrew Morton 2020-06-04 258 *p = __pte(new);
1bc54c03117b90 include/asm-powerpc/pgtable-ppc32.h Benjamin Herrenschmidt 2008-07-08 259
:::::: The code at line 237 was first introduced by commit
:::::: 1158b8c9d53efaf6059d77ccc8cf9b9bcdab8437 linux-next
:::::: TO: Andrew Morton <akpm@linux-foundation.org>
:::::: CC: Johannes Weiner <hannes@cmpxchg.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: 23055 bytes --]
next reply other threads:[~2020-06-07 6:18 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-06-07 6:18 kernel test robot [this message]
2020-06-07 15:34 ` Mike Rapoport
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202006071413.AYGlhYXM%lkp@intel.com \
--to=lkp@intel.com \
--cc=akpm@linux-foundation.org \
--cc=hannes@cmpxchg.org \
--cc=kbuild-all@lists.01.org \
--cc=linux-mm@kvack.org \
--cc=rppt@linux.ibm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox