Re: [PATCH] mm-kasan-dont-vfree-nonexistent-vm_area-fix
Hi Andrey, I love your patch! Yet something to improve: [auto build test ERROR on mmotm/master] [cannot apply to v4.17-rc7 next-20180529] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Andrey-Ryabinin/mm-kasan-dont-vfree-nonexistent-vm_area-fix/20180526-093255 base: git://git.cmpxchg.org/linux-mmotm.git master config: i386-allyesconfig (attached as .config) compiler: gcc-7 (Debian 7.3.0-16) 7.3.0 reproduce: # save the attached .config to linux build tree make ARCH=i386 All errors (new ones prefixed by >>): fs/autofs/inode.o: In function `autofs_new_ino': >> inode.c:(.text+0x170): multiple definition of `autofs_new_ino' fs/autofs/inode.o:inode.c:(.text+0x170): first defined here fs/autofs/inode.o: In function `autofs_clean_ino': >> inode.c:(.text+0x1c0): multiple definition of `autofs_clean_ino' fs/autofs/inode.o:inode.c:(.text+0x1c0): first defined here fs/autofs/inode.o: In function `autofs_free_ino': >> inode.c:(.text+0x1f0): multiple definition of `autofs_free_ino' fs/autofs/inode.o:inode.c:(.text+0x1f0): first defined here fs/autofs/inode.o: In function `autofs_kill_sb': >> inode.c:(.text+0x200): multiple definition of `autofs_kill_sb' fs/autofs/inode.o:inode.c:(.text+0x200): first defined here fs/autofs/inode.o: In function `autofs_get_inode': >> inode.c:(.text+0x250): multiple definition of `autofs_get_inode' fs/autofs/inode.o:inode.c:(.text+0x250): first defined here fs/autofs/inode.o: In function `autofs_fill_super': >> inode.c:(.text+0x300): multiple definition of `autofs_fill_super' fs/autofs/inode.o:inode.c:(.text+0x300): first defined here fs/autofs/root.o: In function `is_autofs_dentry': >> root.c:(.text+0x1170): multiple definition of `is_autofs_dentry' fs/autofs/root.o:root.c:(.text+0x1170): first defined here >> fs/autofs/root.o:(.rodata+0x0): multiple definition of >> `autofs_dentry_operations' fs/autofs/root.o:(.rodata+0x0): first defined here >> fs/autofs/root.o:(.rodata+0x40): multiple definition of >> `autofs_dir_inode_operations' fs/autofs/root.o:(.rodata+0x40): first defined here >> fs/autofs/root.o:(.rodata+0xc0): multiple definition of >> `autofs_dir_operations' fs/autofs/root.o:(.rodata+0xc0): first defined here >> fs/autofs/root.o:(.rodata+0x140): multiple definition of >> `autofs_root_operations' fs/autofs/root.o:(.rodata+0x140): first defined here >> fs/autofs/symlink.o:(.rodata+0x0): multiple definition of >> `autofs_symlink_inode_operations' fs/autofs/symlink.o:(.rodata+0x0): first defined here fs/autofs/waitq.o: In function `autofs_catatonic_mode': >> waitq.c:(.text+0x60): multiple definition of `autofs_catatonic_mode' fs/autofs/waitq.o:waitq.c:(.text+0x60): first defined here fs/autofs/waitq.o: In function `autofs_wait_release': >> waitq.c:(.text+0x110): multiple definition of `autofs_wait_release' fs/autofs/waitq.o:waitq.c:(.text+0x110): first defined here fs/autofs/waitq.o: In function `autofs_wait': >> waitq.c:(.text+0x520): multiple definition of `autofs_wait' fs/autofs/waitq.o:waitq.c:(.text+0x520): first defined here fs/autofs/expire.o: In function `autofs_expire_direct': expire.c:(.text+0x4d0): multiple definition of `autofs_expire_direct' fs/autofs/expire.o:expire.c:(.text+0x4d0): first defined here fs/autofs/expire.o: In function `autofs_expire_indirect': expire.c:(.text+0x5c0): multiple definition of `autofs_expire_indirect' fs/autofs/expire.o:expire.c:(.text+0x5c0): first defined here fs/autofs/expire.o: In function `autofs_expire_wait': expire.c:(.text+0x840): multiple definition of `autofs_expire_wait' fs/autofs/expire.o:expire.c:(.text+0x840): first defined here fs/autofs/expire.o: In function `autofs_expire_run': expire.c:(.text+0x910): multiple definition of `autofs_expire_run' fs/autofs/expire.o:expire.c:(.text+0x910): first defined here fs/autofs/expire.o: In function `autofs_do_expire_multi': expire.c:(.text+0xa30): multiple definition of `autofs_do_expire_multi' fs/autofs/expire.o:expire.c:(.text+0xa30): first defined here fs/autofs/expire.o: In function `autofs_expire_multi': expire.c:(.text+0xb00): multiple definition of `autofs_expire_multi' fs/autofs/expire.o:expire.c:(.text+0xb00): first defined here fs/autofs/dev-ioctl.o: In function `autofs_dev_ioctl_init': dev-ioctl.c:(.init.text+0x0): multiple definition of `autofs_dev_ioctl_init' fs/autofs/dev-ioctl.o:dev-ioctl.c:(.init.text+0x0): first defined here fs/autofs/dev-ioctl.o: In function `autofs_dev_ioctl_exit': dev-ioctl.c:(.text+0xac0): multiple definition of `autofs_dev_ioctl_exit' fs/autofs/dev-ioctl.o:dev-ioctl.c:(.text+0xac0): first defined here --- 0-DAY kernel test infrastructureOpen Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation .config.gz De
Re: [PATCH] mm-kasan-dont-vfree-nonexistent-vm_area-fix
On Mon, 2018-05-28 at 12:39 +0800, Ian Kent wrote: > On Mon, 2018-05-28 at 12:13 +0800, Ian Kent wrote: > > On Fri, 2018-05-25 at 20:48 -0700, Andrew Morton wrote: > > > On Sat, 26 May 2018 11:31:35 +0800 kbuild test robot > > > wrote: > > > > > > > Hi Andrey, > > > > > > > > I love your patch! Yet something to improve: > > > > > > > > [auto build test ERROR on mmotm/master] > > > > [cannot apply to v4.17-rc6] > > > > [if your patch is applied to the wrong git tree, please drop us a note > > > > to > > > > help improve the system] > > > > > > > > url:https://github.com/0day-ci/linux/commits/Andrey-Ryabinin/mm-kasa > > > > n- > > > > do > > > > nt-vfree-nonexistent-vm_area-fix/20180526-093255 > > > > base: git://git.cmpxchg.org/linux-mmotm.git master > > > > config: sparc-allyesconfig (attached as .config) > > > > compiler: sparc64-linux-gnu-gcc (Debian 7.2.0-11) 7.2.0 > > > > reproduce: > > > > wget https://raw.githubusercontent.com/intel/lkp-tests/master/sb > > > > in > > > > /m > > > > ake.cross -O ~/bin/make.cross > > > > chmod +x ~/bin/make.cross > > > > # save the attached .config to linux build tree > > > > make.cross ARCH=sparc > > > > > > > > All errors (new ones prefixed by >>): > > > > > > > >fs/autofs/inode.o: In function `autofs_new_ino': > > > >inode.c:(.text+0x220): multiple definition of `autofs_new_ino' > > > >fs/autofs/inode.o:inode.c:(.text+0x220): first defined here > > > >fs/autofs/inode.o: In function `autofs_clean_ino': > > > >inode.c:(.text+0x280): multiple definition of `autofs_clean_ino' > > > >fs/autofs/inode.o:inode.c:(.text+0x280): first defined here > > > > > > There's bot breakage here - clearly that patch didn't cause this error. > > > > > > Ian, this autofs glitch may still not be fixed. > > > > Yes, autofs-make-autofs4-Kconfig-depend-on-AUTOFS_FS.patch should have > > fixed that. > > > > I tied a bunch of .config combinations and I was unable to find any that > > lead to both CONFIG_AUTOFS_FS and CONFIG_AUTOFS4_FS being defined. > > Oh, autofs-make-autofs4-Kconfig-depend-on-AUTOFS_FS.patch was sent as > a follow up patch which means it's still possible to have both > CONFIG_AUTOFS_FS and CONFIG_AUTOFS4_FS set between > autofs-create-autofs-Kconfig-and-Makefile.patch and the above patch. > > Perhaps all that's needed is to fold the follow up patch into > autofs-create-autofs-Kconfig-and-Makefile.patch to close that > possibility. > > I'll check that can be done without problem. I've had a look and I can't see any reason for this other than CONFIG_AUTOFS_FS and CONFIG_AUTOFS4_FS both being set which isn't ok because the file system name is the same for both. I have seen build system configs that have both of these set even though the "autofs" module was removed years ago so that's probably still present in some site build systems. I see you've added the follow up patch I mentioned above as "autofs-update-fs-autofs4-kconfig-fix.patch" with title "autofs - make autofs4 Kconfig depend on AUTOFS_FS" Folding this patch into the patch "autofs-create-autofs-kconfig-and-makefile.patch" with title "autofs: create autofs Kconfig and Makefile" I'm unable to reproduce the breakage which leads me to think the problem must be due to .config having both the CONFIG_AUTOFS* entries defined to something other than n (which certainly does produce the breakage if the follow up patch is not present, so the result is not bisectable until the follow up patch is added). Also, I don't think there is a need to update the description of "autofs: create autofs Kconfig and Makefile" because the patch that is folded into it adds a NOTE to the fs/autofs4/Kconfig help that essentially re-states what is in the description. If this continues to happen I'll need more information about applied patches and kernel config used to work out what's going on. For completeness here's the resulting patch after folding in the follow up patch above: autofs - create autofs Kconfig and Makefile From: Ian Kent Create Makefile and Kconfig for autofs module. Signed-off-by: Ian Kent --- fs/Kconfig |1 + fs/Makefile|1 + fs/autofs/Kconfig | 20 fs/autofs/Makefile |7 +++ fs/autofs4/Kconfig |8 5 files changed, 37 insertions(+) create mode 100644 fs/autofs/Kconfig create mode 100644 fs/autofs/Makefile diff --git a/fs/Kconfig b/fs/Kconfig index bc821a86d965..e712e62afe59 100644 --- a/fs/Kconfig +++ b/fs/Kconfig @@ -108,6 +108,7 @@ source "fs/notify/Kconfig" source "fs/quota/Kconfig" +source "fs/autofs/Kconfig" source "fs/autofs4/Kconfig" source "fs/fuse/Kconfig" source "fs/overlayfs/Kconfig" diff --git a/fs/Makefile b/fs/Makefile index c9375fd2c8c4..2e005525cc19 100644 --- a/fs/Makefile +++ b/fs/Makefile @@ -102,6 +102,7 @@ obj-$(CONFIG_AFFS_FS) += affs/ obj-$(CONFIG_ROMFS_FS) += romfs/ obj-$(CONFIG_QNX4FS_FS)+= qnx4/ ob
Re: [PATCH] mm-kasan-dont-vfree-nonexistent-vm_area-fix
On Mon, 2018-05-28 at 12:13 +0800, Ian Kent wrote: > On Fri, 2018-05-25 at 20:48 -0700, Andrew Morton wrote: > > On Sat, 26 May 2018 11:31:35 +0800 kbuild test robot wrote: > > > > > Hi Andrey, > > > > > > I love your patch! Yet something to improve: > > > > > > [auto build test ERROR on mmotm/master] > > > [cannot apply to v4.17-rc6] > > > [if your patch is applied to the wrong git tree, please drop us a note to > > > help improve the system] > > > > > > url:https://github.com/0day-ci/linux/commits/Andrey-Ryabinin/mm-kasan- > > > do > > > nt-vfree-nonexistent-vm_area-fix/20180526-093255 > > > base: git://git.cmpxchg.org/linux-mmotm.git master > > > config: sparc-allyesconfig (attached as .config) > > > compiler: sparc64-linux-gnu-gcc (Debian 7.2.0-11) 7.2.0 > > > reproduce: > > > wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin > > > /m > > > ake.cross -O ~/bin/make.cross > > > chmod +x ~/bin/make.cross > > > # save the attached .config to linux build tree > > > make.cross ARCH=sparc > > > > > > All errors (new ones prefixed by >>): > > > > > >fs/autofs/inode.o: In function `autofs_new_ino': > > >inode.c:(.text+0x220): multiple definition of `autofs_new_ino' > > >fs/autofs/inode.o:inode.c:(.text+0x220): first defined here > > >fs/autofs/inode.o: In function `autofs_clean_ino': > > >inode.c:(.text+0x280): multiple definition of `autofs_clean_ino' > > >fs/autofs/inode.o:inode.c:(.text+0x280): first defined here > > > > There's bot breakage here - clearly that patch didn't cause this error. > > > > Ian, this autofs glitch may still not be fixed. > > Yes, autofs-make-autofs4-Kconfig-depend-on-AUTOFS_FS.patch should have > fixed that. > > I tied a bunch of .config combinations and I was unable to find any that > lead to both CONFIG_AUTOFS_FS and CONFIG_AUTOFS4_FS being defined. Oh, autofs-make-autofs4-Kconfig-depend-on-AUTOFS_FS.patch was sent as a follow up patch which means it's still possible to have both CONFIG_AUTOFS_FS and CONFIG_AUTOFS4_FS set between autofs-create-autofs-Kconfig-and-Makefile.patch and the above patch. Perhaps all that's needed is to fold the follow up patch into autofs-create-autofs-Kconfig-and-Makefile.patch to close that possibility. I'll check that can be done without problem. > > I must be missing something else, I'll investigate. And I'll check if there's anything else I'm missing. Sorry for the inconvenience. > > Ian
Re: [PATCH] mm-kasan-dont-vfree-nonexistent-vm_area-fix
On Fri, 2018-05-25 at 20:48 -0700, Andrew Morton wrote: > On Sat, 26 May 2018 11:31:35 +0800 kbuild test robot wrote: > > > Hi Andrey, > > > > I love your patch! Yet something to improve: > > > > [auto build test ERROR on mmotm/master] > > [cannot apply to v4.17-rc6] > > [if your patch is applied to the wrong git tree, please drop us a note to > > help improve the system] > > > > url:https://github.com/0day-ci/linux/commits/Andrey-Ryabinin/mm-kasan-do > > nt-vfree-nonexistent-vm_area-fix/20180526-093255 > > base: git://git.cmpxchg.org/linux-mmotm.git master > > config: sparc-allyesconfig (attached as .config) > > compiler: sparc64-linux-gnu-gcc (Debian 7.2.0-11) 7.2.0 > > reproduce: > > wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/m > > ake.cross -O ~/bin/make.cross > > chmod +x ~/bin/make.cross > > # save the attached .config to linux build tree > > make.cross ARCH=sparc > > > > All errors (new ones prefixed by >>): > > > >fs/autofs/inode.o: In function `autofs_new_ino': > >inode.c:(.text+0x220): multiple definition of `autofs_new_ino' > >fs/autofs/inode.o:inode.c:(.text+0x220): first defined here > >fs/autofs/inode.o: In function `autofs_clean_ino': > >inode.c:(.text+0x280): multiple definition of `autofs_clean_ino' > >fs/autofs/inode.o:inode.c:(.text+0x280): first defined here > > There's bot breakage here - clearly that patch didn't cause this error. > > Ian, this autofs glitch may still not be fixed. Yes, autofs-make-autofs4-Kconfig-depend-on-AUTOFS_FS.patch should have fixed that. I tied a bunch of .config combinations and I was unable to find any that lead to both CONFIG_AUTOFS_FS and CONFIG_AUTOFS4_FS being defined. I must be missing something else, I'll investigate. Ian
Re: [PATCH] mm-kasan-dont-vfree-nonexistent-vm_area-fix
On Sat, 26 May 2018 11:31:35 +0800 kbuild test robot wrote: > Hi Andrey, > > I love your patch! Yet something to improve: > > [auto build test ERROR on mmotm/master] > [cannot apply to v4.17-rc6] > [if your patch is applied to the wrong git tree, please drop us a note to > help improve the system] > > url: > https://github.com/0day-ci/linux/commits/Andrey-Ryabinin/mm-kasan-dont-vfree-nonexistent-vm_area-fix/20180526-093255 > base: git://git.cmpxchg.org/linux-mmotm.git master > config: sparc-allyesconfig (attached as .config) > compiler: sparc64-linux-gnu-gcc (Debian 7.2.0-11) 7.2.0 > reproduce: > wget > https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O > ~/bin/make.cross > chmod +x ~/bin/make.cross > # save the attached .config to linux build tree > make.cross ARCH=sparc > > All errors (new ones prefixed by >>): > >fs/autofs/inode.o: In function `autofs_new_ino': >inode.c:(.text+0x220): multiple definition of `autofs_new_ino' >fs/autofs/inode.o:inode.c:(.text+0x220): first defined here >fs/autofs/inode.o: In function `autofs_clean_ino': >inode.c:(.text+0x280): multiple definition of `autofs_clean_ino' >fs/autofs/inode.o:inode.c:(.text+0x280): first defined here There's bot breakage here - clearly that patch didn't cause this error. Ian, this autofs glitch may still not be fixed.
Re: [PATCH] mm-kasan-dont-vfree-nonexistent-vm_area-fix
Hi Andrey, I love your patch! Yet something to improve: [auto build test ERROR on mmotm/master] [cannot apply to v4.17-rc6] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Andrey-Ryabinin/mm-kasan-dont-vfree-nonexistent-vm_area-fix/20180526-093255 base: git://git.cmpxchg.org/linux-mmotm.git master config: sparc-allyesconfig (attached as .config) compiler: sparc64-linux-gnu-gcc (Debian 7.2.0-11) 7.2.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # save the attached .config to linux build tree make.cross ARCH=sparc All errors (new ones prefixed by >>): fs/autofs/inode.o: In function `autofs_new_ino': inode.c:(.text+0x220): multiple definition of `autofs_new_ino' fs/autofs/inode.o:inode.c:(.text+0x220): first defined here fs/autofs/inode.o: In function `autofs_clean_ino': inode.c:(.text+0x280): multiple definition of `autofs_clean_ino' fs/autofs/inode.o:inode.c:(.text+0x280): first defined here fs/autofs/inode.o: In function `autofs_free_ino': inode.c:(.text+0x2c0): multiple definition of `autofs_free_ino' fs/autofs/inode.o:inode.c:(.text+0x2c0): first defined here fs/autofs/inode.o: In function `autofs_kill_sb': inode.c:(.text+0x2e0): multiple definition of `autofs_kill_sb' fs/autofs/inode.o:inode.c:(.text+0x2e0): first defined here fs/autofs/inode.o: In function `autofs_get_inode': inode.c:(.text+0x360): multiple definition of `autofs_get_inode' fs/autofs/inode.o:inode.c:(.text+0x360): first defined here fs/autofs/inode.o: In function `autofs_fill_super': inode.c:(.text+0x440): multiple definition of `autofs_fill_super' fs/autofs/inode.o:inode.c:(.text+0x440): first defined here fs/autofs/root.o: In function `is_autofs_dentry': root.c:(.text+0x1860): multiple definition of `is_autofs_dentry' fs/autofs/root.o:root.c:(.text+0x1860): first defined here fs/autofs/root.o:(.rodata+0x100): multiple definition of `autofs_dentry_operations' fs/autofs/root.o:(.rodata+0x100): first defined here fs/autofs/root.o:(.rodata+0x180): multiple definition of `autofs_dir_inode_operations' fs/autofs/root.o:(.rodata+0x180): first defined here fs/autofs/root.o:(.rodata+0x240): multiple definition of `autofs_dir_operations' fs/autofs/root.o:(.rodata+0x240): first defined here fs/autofs/root.o:(.rodata+0x338): multiple definition of `autofs_root_operations' fs/autofs/root.o:(.rodata+0x338): first defined here fs/autofs/symlink.o:(.rodata+0x0): multiple definition of `autofs_symlink_inode_operations' fs/autofs/symlink.o:(.rodata+0x0): first defined here fs/autofs/waitq.o: In function `autofs_catatonic_mode': >> waitq.c:(.text+0x80): multiple definition of `autofs_catatonic_mode' fs/autofs/waitq.o:waitq.c:(.text+0x80): first defined here fs/autofs/waitq.o: In function `autofs_wait_release': >> waitq.c:(.text+0x180): multiple definition of `autofs_wait_release' fs/autofs/waitq.o:waitq.c:(.text+0x180): first defined here fs/autofs/waitq.o: In function `autofs_wait': >> waitq.c:(.text+0x520): multiple definition of `autofs_wait' fs/autofs/waitq.o:waitq.c:(.text+0x520): first defined here fs/autofs/expire.o: In function `autofs_expire_direct': expire.c:(.text+0x7a0): multiple definition of `autofs_expire_direct' fs/autofs/expire.o:expire.c:(.text+0x7a0): first defined here fs/autofs/expire.o: In function `autofs_expire_indirect': expire.c:(.text+0x8e0): multiple definition of `autofs_expire_indirect' fs/autofs/expire.o:expire.c:(.text+0x8e0): first defined here fs/autofs/expire.o: In function `autofs_expire_wait': expire.c:(.text+0xba0): multiple definition of `autofs_expire_wait' fs/autofs/expire.o:expire.c:(.text+0xba0): first defined here fs/autofs/expire.o: In function `autofs_expire_run': expire.c:(.text+0xce0): multiple definition of `autofs_expire_run' fs/autofs/expire.o:expire.c:(.text+0xce0): first defined here fs/autofs/expire.o: In function `autofs_do_expire_multi': expire.c:(.text+0xde0): multiple definition of `autofs_do_expire_multi' fs/autofs/expire.o:expire.c:(.text+0xde0): first defined here fs/autofs/expire.o: In function `autofs_expire_multi': expire.c:(.text+0xea0): multiple definition of `autofs_expire_multi' fs/autofs/expire.o:expire.c:(.text+0xea0): first defined here fs/autofs/dev-ioctl.o: In function `autofs_dev_ioctl_init': dev-ioctl.c:(.init.text+0x0): multiple definition of `autofs_dev_ioctl_init' fs/autofs/dev-ioctl.o:dev-ioctl.c:(.init.text+0x0): first defined here fs/autofs/dev-ioctl.o: In function `autofs_dev_ioctl_exit': dev-ioctl.c:(.text+0xbc0): multiple definition of `autofs_dev_ioctl_exit' fs/autofs/dev-ioctl.o:dev-ioctl.c:(.text+0xbc0): first defined here --- 0-DAY kernel test infrastr