linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [linux-next:master] BUILD REGRESSION b9d3d01405061bb42358fe53f824e894a1922ced
@ 2019-11-25  4:05 kbuild test robot
  2019-11-26  4:33 ` Andrew Morton
  0 siblings, 1 reply; 5+ messages in thread
From: kbuild test robot @ 2019-11-25  4:05 UTC (permalink / raw)
  To: Andrew Morton; +Cc: Linux Memory Management List

tree/branch: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git  master
branch HEAD: b9d3d01405061bb42358fe53f824e894a1922ced  Add linux-next specific files for 20191122

Regressions in current branch:

arch/m68k/mm/kmap.c:348:2: error: #endif without #if
arch/m68k/mm/kmap.c:352:3: error: 'p4d_dir' undeclared (first use in this function); did you mean 'pmd_dir'?
arch/m68k/mm/kmap.c:353:3: error: 'pud_dir' undeclared (first use in this function); did you mean 'p4d_dir'?
arch/m68k/mm/kmap.c:76:24: error: passing argument 1 of 'pmd_offset' from incompatible pointer type [-Werror=incompatible-pointer-types]
arch/m68k/mm/kmap.c:80:28: error: 'pmd_t {aka struct <anonymous>}' has no member named 'pmd'; did you mean 'pud'?
drivers/gpu/drm/ttm/ttm_bo.c:886 ttm_mem_evict_first() warn: inconsistent returns 'spin_lock:&ttm_bo_glob.lru_lock'.
drivers/hwspinlock/hwspinlock_core.c:91:5: sparse: sparse: context imbalance in '__hwspin_trylock' - different lock contexts for basic block
drivers/input/keyboard/adp5589-keys.c:892 adp5589_keypad_add() error: we previously assumed 'pdata->gpimap' could be null (see line 881)
drivers/net/dsa/ocelot/felix.c:351:6: sparse: sparse: symbol 'felix_txtstamp' was not declared. Should it be static?
drivers/nfc/pn533/pn533.c:1443 pn533_autopoll_complete() error: 'resp' dereferencing possible ERR_PTR()
drivers/pci/controller/pcie-rockchip-host.c:628:1-3: WARNING: PTR_ERR_OR_ZERO can be used
drivers/virtio/virtio_balloon.c:594:22: note: in expansion of macro 'VIRTIO_BALLOON_HINT_BLOCK_BYTES'
kernel/bpf/syscall.c:154: undefined reference to `vmalloc_user_node_flags'
mm/vmalloc.c:3510:13: sparse: sparse: context imbalance in 's_start' - wrong count at exit
mm/vmalloc.c:3525:13: sparse: sparse: context imbalance in 's_stop' - wrong count at exit
net/tipc/crypto.c:1734 tipc_crypto_rcv() error: we previously assumed 'aead' could be null (see line 1697)
net/tipc/crypto.c:688 tipc_aead_encrypt() error: uninitialized symbol 'trailer'.
stacktrace.c:(.text+0x120): undefined reference to `save_stack_trace'

Error ids grouped by kconfigs:

recent_errors
|-- arm-randconfig-a001-20191123
|   `-- kernel-bpf-syscall.c:undefined-reference-to-vmalloc_user_node_flags
|-- i386-alldefconfig
|   |-- mm-vmalloc.c:sparse:sparse:context-imbalance-in-s_start-wrong-count-at-exit
|   `-- mm-vmalloc.c:sparse:sparse:context-imbalance-in-s_stop-wrong-count-at-exit
|-- i386-allyesconfig
|   |-- drivers-gpu-drm-ttm-ttm_bo.c-ttm_mem_evict_first()-warn:inconsistent-returns-spin_lock:ttm_bo_glob.lru_lock-.
|   |-- drivers-input-keyboard-adp5589-keys.c-adp5589_keypad_add()-error:we-previously-assumed-pdata-gpimap-could-be-null-(see-line-)
|   |-- drivers-nfc-pn533-pn533.c-pn533_autopoll_complete()-error:resp-dereferencing-possible-ERR_PTR()
|   |-- net-tipc-crypto.c-tipc_aead_encrypt()-error:uninitialized-symbol-trailer-.
|   `-- net-tipc-crypto.c-tipc_crypto_rcv()-error:we-previously-assumed-aead-could-be-null-(see-line-)
|-- ia64-randconfig-a001-20191124
|   `-- drivers-virtio-virtio_balloon.c:note:in-expansion-of-macro-VIRTIO_BALLOON_HINT_BLOCK_BYTES
|-- m68k-allmodconfig
|   |-- arch-m68k-mm-kmap.c:error:endif-without-if
|   |-- arch-m68k-mm-kmap.c:error:p4d_dir-undeclared-(first-use-in-this-function)-did-you-mean-pmd_dir
|   |-- arch-m68k-mm-kmap.c:error:passing-argument-of-pmd_offset-from-incompatible-pointer-type
|   |-- arch-m68k-mm-kmap.c:error:pud_dir-undeclared-(first-use-in-this-function)-did-you-mean-p4d_dir
|   `-- stacktrace.c:(.text):undefined-reference-to-save_stack_trace
|-- m68k-m5475evb_defconfig
|   |-- arch-m68k-mm-kmap.c:error:endif-without-if
|   |-- arch-m68k-mm-kmap.c:error:p4d_dir-undeclared-(first-use-in-this-function)-did-you-mean-pmd_dir
|   |-- arch-m68k-mm-kmap.c:error:passing-argument-of-pmd_offset-from-incompatible-pointer-type
|   |-- arch-m68k-mm-kmap.c:error:pmd_t-aka-struct-anonymous-has-no-member-named-pmd-did-you-mean-pud
|   `-- arch-m68k-mm-kmap.c:error:pud_dir-undeclared-(first-use-in-this-function)-did-you-mean-p4d_dir
|-- m68k-multi_defconfig
|   |-- arch-m68k-mm-kmap.c:error:endif-without-if
|   |-- arch-m68k-mm-kmap.c:error:p4d_dir-undeclared-(first-use-in-this-function)-did-you-mean-pmd_dir
|   |-- arch-m68k-mm-kmap.c:error:passing-argument-of-pmd_offset-from-incompatible-pointer-type
|   `-- arch-m68k-mm-kmap.c:error:pud_dir-undeclared-(first-use-in-this-function)-did-you-mean-p4d_dir
|-- x86_64-allmodconfig
|   |-- drivers-hwspinlock-hwspinlock_core.c:sparse:sparse:context-imbalance-in-__hwspin_trylock-different-lock-contexts-for-basic-block
|   |-- drivers-net-dsa-ocelot-felix.c:sparse:sparse:symbol-felix_txtstamp-was-not-declared.-Should-it-be-static
|   |-- mm-vmalloc.c:sparse:sparse:context-imbalance-in-s_start-wrong-count-at-exit
|   `-- mm-vmalloc.c:sparse:sparse:context-imbalance-in-s_stop-wrong-count-at-exit
`-- x86_64-allyesconfig
    |-- drivers-hwspinlock-hwspinlock_core.c:sparse:sparse:context-imbalance-in-__hwspin_trylock-different-lock-contexts-for-basic-block
    |-- drivers-net-dsa-ocelot-felix.c:sparse:sparse:symbol-felix_txtstamp-was-not-declared.-Should-it-be-static
    |-- drivers-pci-controller-pcie-rockchip-host.c:WARNING:PTR_ERR_OR_ZERO-can-be-used
    |-- mm-vmalloc.c:sparse:sparse:context-imbalance-in-s_start-wrong-count-at-exit
    `-- mm-vmalloc.c:sparse:sparse:context-imbalance-in-s_stop-wrong-count-at-exit

TIMEOUT after 3725m


Sorry we cannot finish the testset for your branch within a reasonable time.
It's our fault -- either some build server is down or some build worker is busy
doing bisects for _other_ trees. The branch will get more complete coverage and
possible error reports when our build infrastructure is restored or catches up.
There will be no more build success notification for this branch head, but you
can expect reasonably good test coverage after waiting for 1 day.

configs timed out: 11

arm                              allmodconfig
i386                              allnoconfig
i386                                defconfig
mips                           32r2_defconfig
mips                         64r6el_defconfig
mips                             allmodconfig
mips                              allnoconfig
mips                      fuloong2e_defconfig
mips                      malta_kvm_defconfig
powerpc                          rhel-kconfig
s390                          debug_defconfig

configs tested: 117

xtensa                       common_defconfig
openrisc                    or1ksim_defconfig
nios2                         3c120_defconfig
xtensa                          iss_defconfig
c6x                        evmc6678_defconfig
c6x                              allyesconfig
nios2                         10m50_defconfig
openrisc                 simple_smp_defconfig
sparc64                          allmodconfig
sparc                               defconfig
sparc64                           allnoconfig
sparc64                             defconfig
um                           x86_64_defconfig
um                             i386_defconfig
um                                  defconfig
sh                               allmodconfig
sh                          rsk7269_defconfig
sh                  sh7785lcr_32bit_defconfig
sh                                allnoconfig
sh                            titan_defconfig
riscv                             allnoconfig
riscv                               defconfig
nds32                               defconfig
alpha                               defconfig
nds32                             allnoconfig
i386                             alldefconfig
x86_64               randconfig-d002-20191123
i386                 randconfig-d001-20191123
i386                 randconfig-d003-20191123
i386                 randconfig-d002-20191123
x86_64               randconfig-d001-20191123
x86_64               randconfig-d003-20191123
i386                 randconfig-e002-20191121
x86_64               randconfig-e003-20191121
x86_64               randconfig-e001-20191121
i386                 randconfig-e001-20191121
x86_64               randconfig-e002-20191121
i386                 randconfig-e003-20191121
arc                              allyesconfig
powerpc                             defconfig
microblaze                    nommu_defconfig
powerpc                       ppc64_defconfig
microblaze                      mmu_defconfig
arc                                 defconfig
powerpc                           allnoconfig
x86_64               randconfig-h001-20191123
i386                 randconfig-h002-20191123
x86_64               randconfig-h003-20191123
i386                 randconfig-h001-20191123
i386                 randconfig-h003-20191123
x86_64               randconfig-h002-20191123
i386                 randconfig-g002-20191123
x86_64               randconfig-g001-20191123
x86_64               randconfig-g002-20191123
i386                 randconfig-g003-20191123
i386                 randconfig-g001-20191123
x86_64               randconfig-g003-20191123
i386                 randconfig-f003-20191123
i386                 randconfig-f002-20191123
x86_64               randconfig-f002-20191123
x86_64               randconfig-f003-20191123
i386                 randconfig-f001-20191123
x86_64               randconfig-f001-20191123
parisc                        c3000_defconfig
parisc                         b180_defconfig
parisc                              defconfig
parisc                            allnoconfig
i386                 randconfig-b002-20191121
x86_64               randconfig-b002-20191121
x86_64               randconfig-b001-20191121
i386                 randconfig-b003-20191121
x86_64               randconfig-b003-20191121
i386                 randconfig-b001-20191121
i386                             allyesconfig
m68k                          multi_defconfig
m68k                       m5475evb_defconfig
h8300                    h8300h-sim_defconfig
h8300                     edosk2674_defconfig
m68k                           sun3_defconfig
h8300                       h8s-sim_defconfig
m68k                             allmodconfig
ia64                             allmodconfig
ia64                              allnoconfig
ia64                                defconfig
ia64                             alldefconfig
ia64                 randconfig-a001-20191122
sparc                randconfig-a001-20191122
arc                 randconfig-a0031-20191122
powerpc              randconfig-a001-20191122
arm64                randconfig-a001-20191122
arm                  randconfig-a001-20191122
s390                              allnoconfig
s390                             allmodconfig
s390                                defconfig
x86_64               randconfig-c001-20191123
x86_64               randconfig-c003-20191123
i386                 randconfig-c003-20191123
i386                 randconfig-c002-20191123
x86_64               randconfig-c002-20191123
i386                 randconfig-c001-20191123
arm                         at91_dt_defconfig
arm64                               defconfig
arm                        multi_v5_defconfig
arm64                            allyesconfig
arm                               allnoconfig
arm                           efm32_defconfig
arm                           sunxi_defconfig
arm64                             allnoconfig
arm64                            allmodconfig
arm                          exynos_defconfig
arm                        shmobile_defconfig
arm                        multi_v7_defconfig
x86_64                                    lkp
x86_64                                   rhel
x86_64                               rhel-7.6
x86_64                              fedora-25
x86_64                                  kexec

---
0-DAY kernel test infrastructure                 Open Source Technology Center
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Intel Corporation


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [linux-next:master] BUILD REGRESSION b9d3d01405061bb42358fe53f824e894a1922ced
  2019-11-25  4:05 [linux-next:master] BUILD REGRESSION b9d3d01405061bb42358fe53f824e894a1922ced kbuild test robot
@ 2019-11-26  4:33 ` Andrew Morton
  2019-11-26  8:10   ` Geert Uytterhoeven
  0 siblings, 1 reply; 5+ messages in thread
From: Andrew Morton @ 2019-11-26  4:33 UTC (permalink / raw)
  To: kbuild test robot
  Cc: Linux Memory Management List, Mike Rapoport, Geert Uytterhoeven

On Mon, 25 Nov 2019 12:05:43 +0800 kbuild test robot <lkp@intel.com> wrote:

> tree/branch: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git  master
> branch HEAD: b9d3d01405061bb42358fe53f824e894a1922ced  Add linux-next specific files for 20191122
> 
> Regressions in current branch:
> 
> arch/m68k/mm/kmap.c:348:2: error: #endif without #if
> arch/m68k/mm/kmap.c:352:3: error: 'p4d_dir' undeclared (first use in this function); did you mean 'pmd_dir'?
> arch/m68k/mm/kmap.c:353:3: error: 'pud_dir' undeclared (first use in this function); did you mean 'p4d_dir'?
> arch/m68k/mm/kmap.c:76:24: error: passing argument 1 of 'pmd_offset' from incompatible pointer type [-Werror=incompatible-pointer-types]
> arch/m68k/mm/kmap.c:80:28: error: 'pmd_t {aka struct <anonymous>}' has no member named 'pmd'; did you mean 'pud'?

Thanks - a messed up merge fix, I guess.  Mike, can you please check?

--- a/arch/m68k/mm/kmap.c~m68k-mm-use-pgtable-nopxd-instead-of-4level-fixup-fix
+++ a/arch/m68k/mm/kmap.c
@@ -345,7 +345,6 @@ void kernel_set_cachemode(void *addr, un
 			cmode = 0;
 		}
 	}
-#endif
 
 	while ((long)size > 0) {
 		pgd_dir = pgd_offset_k(virtaddr);
_


> mm/vmalloc.c:3510:13: sparse: sparse: context imbalance in 's_start' - wrong count at exit
> mm/vmalloc.c:3525:13: sparse: sparse: context imbalance in 's_stop' - wrong count at exit

False positive.


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [linux-next:master] BUILD REGRESSION b9d3d01405061bb42358fe53f824e894a1922ced
  2019-11-26  4:33 ` Andrew Morton
@ 2019-11-26  8:10   ` Geert Uytterhoeven
  2019-11-26  8:47     ` Mike Rapoport
  0 siblings, 1 reply; 5+ messages in thread
From: Geert Uytterhoeven @ 2019-11-26  8:10 UTC (permalink / raw)
  To: Andrew Morton
  Cc: kbuild test robot, Linux Memory Management List, Mike Rapoport

[-- Attachment #1: Type: text/plain, Size: 1732 bytes --]

Hi Andrew,

On Tue, Nov 26, 2019 at 5:33 AM Andrew Morton <akpm@linux-foundation.org> wrote:
> On Mon, 25 Nov 2019 12:05:43 +0800 kbuild test robot <lkp@intel.com> wrote:
> > tree/branch: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git  master
> > branch HEAD: b9d3d01405061bb42358fe53f824e894a1922ced  Add linux-next specific files for 20191122
> >
> > Regressions in current branch:
> >
> > arch/m68k/mm/kmap.c:348:2: error: #endif without #if

That one is fixed by your
m68k-mm-use-pgtable-nopxd-instead-of-4level-fixup-fix.patch.

> > arch/m68k/mm/kmap.c:352:3: error: 'p4d_dir' undeclared (first use in this function); did you mean 'pmd_dir'?
> > arch/m68k/mm/kmap.c:353:3: error: 'pud_dir' undeclared (first use in this function); did you mean 'p4d_dir'?

You lost the addition of

+       p4d_t *p4d_dir;
+       pud_t *pud_dir;

to kernel_set_cachemode().

> > arch/m68k/mm/kmap.c:76:24: error: passing argument 1 of 'pmd_offset' from incompatible pointer type [-Werror=incompatible-pointer-types]
> > arch/m68k/mm/kmap.c:80:28: error: 'pmd_t {aka struct <anonymous>}' has no member named 'pmd'; did you mean 'pud'?

Mike's changes to __iounmap() should be applied to __free_io_area() now,
due to hch's move/rename of the function.

> Thanks - a messed up merge fix, I guess.  Mike, can you please check?

I've attached an incremental fix, compile-tested only.

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

[-- Attachment #2: + -m68k-mm-use-pgtable-nopxd-instead-of-4level-fixup-fix-fix.patch --]
[-- Type: text/x-patch, Size: 1918 bytes --]

From 619eab7044ec1f43d761c95fd62f50be2e5deb63 Mon Sep 17 00:00:00 2001
From: Geert Uytterhoeven <geert@linux-m68k.org>
Date: Tue, 26 Nov 2019 09:06:43 +0100
Subject: [PATCH] 
 m68k-mm-use-pgtable-nopxd-instead-of-4level-fixup-fix-fix.patch

more merge glitch fixes.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
---
 arch/m68k/mm/kmap.c | 16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)

diff --git a/arch/m68k/mm/kmap.c b/arch/m68k/mm/kmap.c
index 06aa0ccc1f1aeca7..2bc570c14c3525dc 100644
--- a/arch/m68k/mm/kmap.c
+++ b/arch/m68k/mm/kmap.c
@@ -63,18 +63,23 @@ static void __free_io_area(void *addr, unsigned long size)
 {
 	unsigned long virtaddr = (unsigned long)addr;
 	pgd_t *pgd_dir;
+	p4d_t *p4d_dir;
+	pud_t *pud_dir;
 	pmd_t *pmd_dir;
 	pte_t *pte_dir;
 
 	while ((long)size > 0) {
 		pgd_dir = pgd_offset_k(virtaddr);
-		if (pgd_bad(*pgd_dir)) {
-			printk("iounmap: bad pgd(%08lx)\n", pgd_val(*pgd_dir));
-			pgd_clear(pgd_dir);
+		p4d_dir = p4d_offset(pgd_dir, virtaddr);
+		pud_dir = pud_offset(p4d_dir, virtaddr);
+		if (pud_bad(*pud_dir)) {
+			printk("iounmap: bad pgd(%08lx)\n", pud_val(*pud_dir));
+			pud_clear(pud_dir);
 			return;
 		}
-		pmd_dir = pmd_offset(pgd_dir, virtaddr);
+		pmd_dir = pmd_offset(pud_dir, virtaddr);
 
+#if CONFIG_PGTABLE_LEVELS == 3
 		if (CPU_IS_020_OR_030) {
 			int pmd_off = (virtaddr/PTRTREESIZE) & 15;
 			int pmd_type = pmd_dir->pmd[pmd_off] & _DESCTYPE_MASK;
@@ -87,6 +92,7 @@ static void __free_io_area(void *addr, unsigned long size)
 			} else if (pmd_type == 0)
 				continue;
 		}
+#endif
 
 		if (pmd_bad(*pmd_dir)) {
 			printk("iounmap: bad pmd (%08lx)\n", pmd_val(*pmd_dir));
@@ -314,6 +320,8 @@ void kernel_set_cachemode(void *addr, unsigned long size, int cmode)
 {
 	unsigned long virtaddr = (unsigned long)addr;
 	pgd_t *pgd_dir;
+	p4d_t *p4d_dir;
+	pud_t *pud_dir;
 	pmd_t *pmd_dir;
 	pte_t *pte_dir;
 
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [linux-next:master] BUILD REGRESSION b9d3d01405061bb42358fe53f824e894a1922ced
  2019-11-26  8:10   ` Geert Uytterhoeven
@ 2019-11-26  8:47     ` Mike Rapoport
  2019-11-26  8:50       ` Geert Uytterhoeven
  0 siblings, 1 reply; 5+ messages in thread
From: Mike Rapoport @ 2019-11-26  8:47 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: Andrew Morton, kbuild test robot, Linux Memory Management List,
	Mike Rapoport

Hi Geert,

On Tue, Nov 26, 2019 at 09:10:22AM +0100, Geert Uytterhoeven wrote:
> Hi Andrew,
> 
> On Tue, Nov 26, 2019 at 5:33 AM Andrew Morton <akpm@linux-foundation.org> wrote:
> > On Mon, 25 Nov 2019 12:05:43 +0800 kbuild test robot <lkp@intel.com> wrote:
> > > tree/branch: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git  master
> > > branch HEAD: b9d3d01405061bb42358fe53f824e894a1922ced  Add linux-next specific files for 20191122
> > >
> > > Regressions in current branch:
> > >
> > > arch/m68k/mm/kmap.c:348:2: error: #endif without #if
> 
> That one is fixed by your
> m68k-mm-use-pgtable-nopxd-instead-of-4level-fixup-fix.patch.
> 
> > > arch/m68k/mm/kmap.c:352:3: error: 'p4d_dir' undeclared (first use in this function); did you mean 'pmd_dir'?
> > > arch/m68k/mm/kmap.c:353:3: error: 'pud_dir' undeclared (first use in this function); did you mean 'p4d_dir'?
> 
> You lost the addition of
> 
> +       p4d_t *p4d_dir;
> +       pud_t *pud_dir;
> 
> to kernel_set_cachemode().
> 
> > > arch/m68k/mm/kmap.c:76:24: error: passing argument 1 of 'pmd_offset' from incompatible pointer type [-Werror=incompatible-pointer-types]
> > > arch/m68k/mm/kmap.c:80:28: error: 'pmd_t {aka struct <anonymous>}' has no member named 'pmd'; did you mean 'pud'?
> 
> Mike's changes to __iounmap() should be applied to __free_io_area() now,
> due to hch's move/rename of the function.
> 
> > Thanks - a messed up merge fix, I guess.  Mike, can you please check?
> 
> I've attached an incremental fix, compile-tested only.

I was just about to send the same fix :)
It boots on aranym.
 
> Gr{oetje,eeting}s,
> 
>                         Geert
> 
> --
> Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
> 
> In personal conversations with technical people, I call myself a hacker. But
> when I'm talking to journalists I just say "programmer" or something like that.
>                                 -- Linus Torvalds

> From 619eab7044ec1f43d761c95fd62f50be2e5deb63 Mon Sep 17 00:00:00 2001
> From: Geert Uytterhoeven <geert@linux-m68k.org>
> Date: Tue, 26 Nov 2019 09:06:43 +0100
> Subject: [PATCH] 
>  m68k-mm-use-pgtable-nopxd-instead-of-4level-fixup-fix-fix.patch
> 
> more merge glitch fixes.
> 
> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
> ---
>  arch/m68k/mm/kmap.c | 16 ++++++++++++----
>  1 file changed, 12 insertions(+), 4 deletions(-)
> 
> diff --git a/arch/m68k/mm/kmap.c b/arch/m68k/mm/kmap.c
> index 06aa0ccc1f1aeca7..2bc570c14c3525dc 100644
> --- a/arch/m68k/mm/kmap.c
> +++ b/arch/m68k/mm/kmap.c
> @@ -63,18 +63,23 @@ static void __free_io_area(void *addr, unsigned long size)
>  {
>  	unsigned long virtaddr = (unsigned long)addr;
>  	pgd_t *pgd_dir;
> +	p4d_t *p4d_dir;
> +	pud_t *pud_dir;
>  	pmd_t *pmd_dir;
>  	pte_t *pte_dir;
>  
>  	while ((long)size > 0) {
>  		pgd_dir = pgd_offset_k(virtaddr);
> -		if (pgd_bad(*pgd_dir)) {
> -			printk("iounmap: bad pgd(%08lx)\n", pgd_val(*pgd_dir));
> -			pgd_clear(pgd_dir);
> +		p4d_dir = p4d_offset(pgd_dir, virtaddr);
> +		pud_dir = pud_offset(p4d_dir, virtaddr);
> +		if (pud_bad(*pud_dir)) {
> +			printk("iounmap: bad pgd(%08lx)\n", pud_val(*pud_dir));

                                       ^ bad pud ;-)

> +			pud_clear(pud_dir);
>  			return;
>  		}
> -		pmd_dir = pmd_offset(pgd_dir, virtaddr);
> +		pmd_dir = pmd_offset(pud_dir, virtaddr);
>  
> +#if CONFIG_PGTABLE_LEVELS == 3
>  		if (CPU_IS_020_OR_030) {
>  			int pmd_off = (virtaddr/PTRTREESIZE) & 15;
>  			int pmd_type = pmd_dir->pmd[pmd_off] & _DESCTYPE_MASK;
> @@ -87,6 +92,7 @@ static void __free_io_area(void *addr, unsigned long size)
>  			} else if (pmd_type == 0)
>  				continue;
>  		}
> +#endif
>  
>  		if (pmd_bad(*pmd_dir)) {
>  			printk("iounmap: bad pmd (%08lx)\n", pmd_val(*pmd_dir));
> @@ -314,6 +320,8 @@ void kernel_set_cachemode(void *addr, unsigned long size, int cmode)
>  {
>  	unsigned long virtaddr = (unsigned long)addr;
>  	pgd_t *pgd_dir;
> +	p4d_t *p4d_dir;
> +	pud_t *pud_dir;
>  	pmd_t *pmd_dir;
>  	pte_t *pte_dir;
>  
> -- 
> 2.17.1
> 


-- 
Sincerely yours,
Mike.



^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [linux-next:master] BUILD REGRESSION b9d3d01405061bb42358fe53f824e894a1922ced
  2019-11-26  8:47     ` Mike Rapoport
@ 2019-11-26  8:50       ` Geert Uytterhoeven
  0 siblings, 0 replies; 5+ messages in thread
From: Geert Uytterhoeven @ 2019-11-26  8:50 UTC (permalink / raw)
  To: Mike Rapoport
  Cc: Andrew Morton, kbuild test robot, Linux Memory Management List,
	Mike Rapoport

Hi Mike,

On Tue, Nov 26, 2019 at 9:47 AM Mike Rapoport <rppt@linux.ibm.com> wrote:
> On Tue, Nov 26, 2019 at 09:10:22AM +0100, Geert Uytterhoeven wrote:
> > On Tue, Nov 26, 2019 at 5:33 AM Andrew Morton <akpm@linux-foundation.org> wrote:
> > > On Mon, 25 Nov 2019 12:05:43 +0800 kbuild test robot <lkp@intel.com> wrote:
> > > > tree/branch: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git  master
> > > > branch HEAD: b9d3d01405061bb42358fe53f824e894a1922ced  Add linux-next specific files for 20191122
> > > >
> > > > Regressions in current branch:
> > > >
> > > > arch/m68k/mm/kmap.c:348:2: error: #endif without #if
> >
> > That one is fixed by your
> > m68k-mm-use-pgtable-nopxd-instead-of-4level-fixup-fix.patch.
> >
> > > > arch/m68k/mm/kmap.c:352:3: error: 'p4d_dir' undeclared (first use in this function); did you mean 'pmd_dir'?
> > > > arch/m68k/mm/kmap.c:353:3: error: 'pud_dir' undeclared (first use in this function); did you mean 'p4d_dir'?
> >
> > You lost the addition of
> >
> > +       p4d_t *p4d_dir;
> > +       pud_t *pud_dir;
> >
> > to kernel_set_cachemode().
> >
> > > > arch/m68k/mm/kmap.c:76:24: error: passing argument 1 of 'pmd_offset' from incompatible pointer type [-Werror=incompatible-pointer-types]
> > > > arch/m68k/mm/kmap.c:80:28: error: 'pmd_t {aka struct <anonymous>}' has no member named 'pmd'; did you mean 'pud'?
> >
> > Mike's changes to __iounmap() should be applied to __free_io_area() now,
> > due to hch's move/rename of the function.
> >
> > > Thanks - a messed up merge fix, I guess.  Mike, can you please check?
> >
> > I've attached an incremental fix, compile-tested only.
>
> I was just about to send the same fix :)
> It boots on aranym.

Thanks for checking!

> > --- a/arch/m68k/mm/kmap.c
> > +++ b/arch/m68k/mm/kmap.c
> > @@ -63,18 +63,23 @@ static void __free_io_area(void *addr, unsigned long size)
> >  {
> >       unsigned long virtaddr = (unsigned long)addr;
> >       pgd_t *pgd_dir;
> > +     p4d_t *p4d_dir;
> > +     pud_t *pud_dir;
> >       pmd_t *pmd_dir;
> >       pte_t *pte_dir;
> >
> >       while ((long)size > 0) {
> >               pgd_dir = pgd_offset_k(virtaddr);
> > -             if (pgd_bad(*pgd_dir)) {
> > -                     printk("iounmap: bad pgd(%08lx)\n", pgd_val(*pgd_dir));
> > -                     pgd_clear(pgd_dir);
> > +             p4d_dir = p4d_offset(pgd_dir, virtaddr);
> > +             pud_dir = pud_offset(p4d_dir, virtaddr);
> > +             if (pud_bad(*pud_dir)) {
> > +                     printk("iounmap: bad pgd(%08lx)\n", pud_val(*pud_dir));
>
>                                        ^ bad pud ;-)

Bummer... I even pointed out that typo during the review of your v4 ;-(
Andrew: can you please fix that up?

Thanks!

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2019-11-26  8:50 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-11-25  4:05 [linux-next:master] BUILD REGRESSION b9d3d01405061bb42358fe53f824e894a1922ced kbuild test robot
2019-11-26  4:33 ` Andrew Morton
2019-11-26  8:10   ` Geert Uytterhoeven
2019-11-26  8:47     ` Mike Rapoport
2019-11-26  8:50       ` Geert Uytterhoeven

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).