# git rev-parse -q --verify a180bd1d7e16173d965b263c5a536aa40afa2a2a^{commit} a180bd1d7e16173d965b263c5a536aa40afa2a2a already have revision, skipping fetch # git checkout -q -f -B kisskb a180bd1d7e16173d965b263c5a536aa40afa2a2a # git clean -qxdf # < git log -1 # commit a180bd1d7e16173d965b263c5a536aa40afa2a2a # Author: Linus Torvalds # Date: Sun Jul 4 16:12:42 2021 -0700 # # iov_iter: remove uaccess_kernel() warning from iov_iter_init() # # This warning was there to catch any architectures that still use # CONFIG_SET_FS, and that would mis-use iov_iter_init() for anything that # wasn't a proper user space pointer. So that # # WARN_ON_ONCE(uaccess_kernel()); # # makes perfect conceptual sense: you really shouldn't use a kernel # pointer with set_fs(KERNEL_DS) and then pass it to iov_iter_init(). # # HOWEVER. # # Guenter Roeck reports that this warning actually triggers in no-mmu # configurations of both ARM and m68k. And the reason isn't that they # pass in a kernel pointer under set_fs(KERNEL_DS) at all: the reason is # that in those configurations, "uaccess_kernel()" is simply not reliable. # # Those no-mmu setups set USER_DS and KERNEL_DS to the same values, so you # can't test for the difference. # # In particular, the no-mmu case for ARM does # # #define USER_DS KERNEL_DS # #define uaccess_kernel() (true) # # so USER_DS and KERNEL_DS have the same value, and uaccess_kernel() is # always trivially true. # # The m68k case is slightly different and not quite as obvious. It does # (spread out over multiple header files just to be extra exciting: # asm/processor.h, asm/segment.h and asm-generic/uaccess.h): # # #define TASK_SIZE (0xFFFFFFFFUL) # #define USER_DS MAKE_MM_SEG(TASK_SIZE) # #define KERNEL_DS MAKE_MM_SEG(~0UL) # #define get_fs() (current_thread_info()->addr_limit) # #define uaccess_kernel() (get_fs().seg == KERNEL_DS.seg) # # but the end result is the same: uaccess_kernel() will always be true, # because USER_DS and KERNEL_DS end up having the same value, even if that # value is defined differently. # # This is very arguably a misfeature in those implementations, but in the # end we don't really care. All modern architectures have gotten rid of # set_fs() already, and generic kernel code never uses it. And while the # sanity check was a nice idea, an architecture would have to go the extra # mile to actually break this. # # So this well-intentioned warning isn't really all that likely to find # anything but these known false positives, and as such just isn't worth # maintaining. # # Reported-by: Guenter Roeck # Fixes: 8cd54c1c8480 ("iov_iter: separate direction from flavour") # Cc: Matthew Wilcox # Cc: Al Viro # Signed-off-by: Linus Torvalds # < /opt/cross/kisskb/korg/gcc-4.9.4-nolibc/powerpc64-linux/bin/powerpc64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-4.9.4-nolibc/powerpc64-linux/bin/powerpc64-linux-ld --version # < git log --format=%s --max-count=1 a180bd1d7e16173d965b263c5a536aa40afa2a2a # < make -s -j 32 ARCH=powerpc O=/kisskb/build/linus_mpc85xx_defconfig_powerpc-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/powerpc64-linux/bin/powerpc64-linux- mpc85xx_defconfig # < make -s -j 32 ARCH=powerpc O=/kisskb/build/linus_mpc85xx_defconfig_powerpc-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/powerpc64-linux/bin/powerpc64-linux- help # make -s -j 32 ARCH=powerpc O=/kisskb/build/linus_mpc85xx_defconfig_powerpc-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/powerpc64-linux/bin/powerpc64-linux- olddefconfig # make -s -j 32 ARCH=powerpc O=/kisskb/build/linus_mpc85xx_defconfig_powerpc-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/powerpc64-linux/bin/powerpc64-linux- /kisskb/src/net/sched/sch_frag.c: In function 'sch_fragment': /kisskb/src/net/sched/sch_frag.c:93:10: warning: missing braces around initializer [-Wmissing-braces] struct rtable sch_frag_rt = { 0 }; ^ /kisskb/src/net/sched/sch_frag.c:93:10: warning: (near initialization for 'sch_frag_rt.dst') [-Wmissing-braces] In file included from /kisskb/src/include/linux/kernel.h:11:0, from /kisskb/src/include/linux/list.h:9, from /kisskb/src/include/linux/module.h:12, from /kisskb/src/drivers/net/ethernet/freescale/fs_enet/mac-scc.c:15: /kisskb/src/drivers/net/ethernet/freescale/fs_enet/mac-scc.c: In function 'allocate_bd': /kisskb/src/include/linux/err.h:22:49: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] #define IS_ERR_VALUE(x) unlikely((unsigned long)(void *)(x) >= (unsigned long)-MAX_ERRNO) ^ /kisskb/src/include/linux/compiler.h:78:42: note: in definition of macro 'unlikely' # define unlikely(x) __builtin_expect(!!(x), 0) ^ /kisskb/src/drivers/net/ethernet/freescale/fs_enet/mac-scc.c:139:6: note: in expansion of macro 'IS_ERR_VALUE' if (IS_ERR_VALUE(fep->ring_mem_addr)) ^ /kisskb/src/arch/powerpc/boot/dts/fsl/mpc8541cds.dts:330.3-21: Warning (pci_device_bus_num): /pci@e0008000/i8259@19000:bus-range: PCI bus number 1 out of range, expected (0 - 0) /kisskb/src/arch/powerpc/boot/dts/fsl/mpc8555cds.dts:330.3-21: Warning (pci_device_bus_num): /pci@e0008000/i8259@19000:bus-range: PCI bus number 1 out of range, expected (0 - 0) INFO: Uncompressed kernel (size 0xd8eeb4) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) INFO: Uncompressed kernel (size 0xd8eeb4) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) INFO: Uncompressed kernel (size 0xd8eeb4) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) INFO: Uncompressed kernel (size 0xd8eeb4) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) INFO: Uncompressed kernel (size 0xd8eeb4) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) INFO: Uncompressed kernel (size 0xd8eeb4) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) INFO: Uncompressed kernel (size 0xd8eeb4) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) INFO: Uncompressed kernel (size 0xd8eeb4) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) INFO: Uncompressed kernel (size 0xd8eeb4) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) INFO: Uncompressed kernel (size 0xd8eeb4) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) INFO: Uncompressed kernel (size 0xd8eeb4) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) INFO: Uncompressed kernel (size 0xd8eeb4) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) INFO: Uncompressed kernel (size 0xd8eeb4) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) INFO: Uncompressed kernel (size 0xd8eeb4) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) INFO: Uncompressed kernel (size 0xd8eeb4) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) INFO: Uncompressed kernel (size 0xd7e788) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) Image Name: Linux-5.13.0-ga180bd1d7e16 Created: Fri Jul 16 15:36:57 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6597874 Bytes = 6443.24 KiB = 6.29 MiB Load Address: 00e00000 Entry Point: 00e00314 Image Name: Linux-5.13.0-ga180bd1d7e16 Created: Fri Jul 16 15:36:57 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6566789 Bytes = 6412.88 KiB = 6.26 MiB Load Address: 00000000 Entry Point: 00000000 Image Name: Linux-5.13.0-ga180bd1d7e16 Created: Fri Jul 16 15:36:57 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6598562 Bytes = 6443.91 KiB = 6.29 MiB Load Address: 00e00000 Entry Point: 00e002a4 Image Name: Linux-5.13.0-ga180bd1d7e16 Created: Fri Jul 16 15:36:57 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6598607 Bytes = 6443.95 KiB = 6.29 MiB Load Address: 00e00000 Entry Point: 00e00314 Image Name: Linux-5.13.0-ga180bd1d7e16 Created: Fri Jul 16 15:36:57 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6599648 Bytes = 6444.97 KiB = 6.29 MiB Load Address: 00e00000 Entry Point: 00e002a4 Image Name: Linux-5.13.0-ga180bd1d7e16 Created: Fri Jul 16 15:36:57 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6598663 Bytes = 6444.01 KiB = 6.29 MiB Load Address: 00e00000 Entry Point: 00e00314 Image Name: Linux-5.13.0-ga180bd1d7e16 Created: Fri Jul 16 15:36:57 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6599179 Bytes = 6444.51 KiB = 6.29 MiB Load Address: 00e00000 Entry Point: 00e002a4 Image Name: Linux-5.13.0-ga180bd1d7e16 Created: Fri Jul 16 15:36:57 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6597855 Bytes = 6443.22 KiB = 6.29 MiB Load Address: 00e00000 Entry Point: 00e00314 Image Name: Linux-5.13.0-ga180bd1d7e16 Created: Fri Jul 16 15:36:57 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6598647 Bytes = 6443.99 KiB = 6.29 MiB Load Address: 00e00000 Entry Point: 00e002a4 Image Name: Linux-5.13.0-ga180bd1d7e16 Created: Fri Jul 16 15:36:57 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6598559 Bytes = 6443.91 KiB = 6.29 MiB Load Address: 00e00000 Entry Point: 00e002a4 Image Name: Linux-5.13.0-ga180bd1d7e16 Created: Fri Jul 16 15:36:57 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6598710 Bytes = 6444.05 KiB = 6.29 MiB Load Address: 00e00000 Entry Point: 00e002a4 Image Name: Linux-5.13.0-ga180bd1d7e16 Created: Fri Jul 16 15:36:57 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6597857 Bytes = 6443.22 KiB = 6.29 MiB Load Address: 00e00000 Entry Point: 00e00314 Image Name: Linux-5.13.0-ga180bd1d7e16 Created: Fri Jul 16 15:36:57 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6597885 Bytes = 6443.25 KiB = 6.29 MiB Load Address: 00e00000 Entry Point: 00e002a4 Image Name: Linux-5.13.0-ga180bd1d7e16 Created: Fri Jul 16 15:36:57 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6599725 Bytes = 6445.04 KiB = 6.29 MiB Load Address: 00e00000 Entry Point: 00e002a4 Image Name: Linux-5.13.0-ga180bd1d7e16 Created: Fri Jul 16 15:36:57 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6599004 Bytes = 6444.34 KiB = 6.29 MiB Load Address: 00e00000 Entry Point: 00e002a4 Image Name: Linux-5.13.0-ga180bd1d7e16 Created: Fri Jul 16 15:36:57 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6597963 Bytes = 6443.32 KiB = 6.29 MiB Load Address: 00e00000 Entry Point: 00e002a4 Completed OK # rm -rf /kisskb/build/linus_mpc85xx_defconfig_powerpc-gcc4.9 # Build took: 0:02:29.133761