Buildresult: linus/mpc85xx_defconfig/powerpc-gcc4.9 built on Jul 17 2021, 13:41
kisskb
Revisions
|
Branches
|
Compilers
|
Configs
|
Build Results
|
Build Failures
|
Status:
OK
Date/Time:
Jul 17 2021, 13:41
Duration:
0:01:21.304832
Builder:
ka4
Revision:
Revert "signal: Allow tasks to cache one sigqueue struct" (
b4b27b9eed8ebdbf9f3046197d29d733c8c944f3)
Target:
linus/mpc85xx_defconfig/powerpc-gcc4.9
Branch:
linus
Compiler:
powerpc-gcc4.9
(powerpc64-linux-gcc (GCC) 4.9.4 / GNU ld (GNU Binutils) 2.29.1.20170915)
Config:
mpc85xx_defconfig
(
download
)
Log:
Download original
Possible warnings (5)
net/sched/sch_frag.c:93:10: warning: missing braces around initializer [-Wmissing-braces] net/sched/sch_frag.c:93:10: warning: (near initialization for 'sch_frag_rt.dst') [-Wmissing-braces] include/linux/err.h:22:49: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] 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) 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)
Full Log
# git rev-parse -q --verify b4b27b9eed8ebdbf9f3046197d29d733c8c944f3^{commit} b4b27b9eed8ebdbf9f3046197d29d733c8c944f3 already have revision, skipping fetch # git checkout -q -f -B kisskb b4b27b9eed8ebdbf9f3046197d29d733c8c944f3 # git clean -qxdf # < git log -1 # commit b4b27b9eed8ebdbf9f3046197d29d733c8c944f3 # Author: Linus Torvalds <torvalds@linux-foundation.org> # Date: Sun Jun 27 13:32:54 2021 -0700 # # Revert "signal: Allow tasks to cache one sigqueue struct" # # This reverts commits 4bad58ebc8bc4f20d89cff95417c9b4674769709 (and # 399f8dd9a866e107639eabd3c1979cd526ca3a98, which tried to fix it). # # I do not believe these are correct, and I'm about to release 5.13, so am # reverting them out of an abundance of caution. # # The locking is odd, and appears broken. # # On the allocation side (in __sigqueue_alloc()), the locking is somewhat # straightforward: it depends on sighand->siglock. Since one caller # doesn't hold that lock, it further then tests 'sigqueue_flags' to avoid # the case with no locks held. # # On the freeing side (in sigqueue_cache_or_free()), there is no locking # at all, and the logic instead depends on 'current' being a single # thread, and not able to race with itself. # # To make things more exciting, there's also the data race between freeing # a signal and allocating one, which is handled by using WRITE_ONCE() and # READ_ONCE(), and being mutually exclusive wrt the initial state (ie # freeing will only free if the old state was NULL, while allocating will # obviously only use the value if it was non-NULL, so only one or the # other will actually act on the value). # # However, while the free->alloc paths do seem mutually exclusive thanks # to just the data value dependency, it's not clear what the memory # ordering constraints are on it. Could writes from the previous # allocation possibly be delayed and seen by the new allocation later, # causing logical inconsistencies? # # So it's all very exciting and unusual. # # And in particular, it seems that the freeing side is incorrect in # depending on "current" being single-threaded. Yes, 'current' is a # single thread, but in the presense of asynchronous events even a single # thread can have data races. # # And such asynchronous events can and do happen, with interrupts causing # signals to be flushed and thus free'd (for example - sending a # SIGCONT/SIGSTOP can happen from interrupt context, and can flush # previously queued process control signals). # # So regardless of all the other questions about the memory ordering and # locking for this new cached allocation, the sigqueue_cache_or_free() # assumptions seem to be fundamentally incorrect. # # It may be that people will show me the errors of my ways, and tell me # why this is all safe after all. We can reinstate it if so. But my # current belief is that the WRITE_ONCE() that sets the cached entry needs # to be a smp_store_release(), and the READ_ONCE() that finds a cached # entry needs to be a smp_load_acquire() to handle memory ordering # correctly. # # And the sequence in sigqueue_cache_or_free() would need to either use a # lock or at least be interrupt-safe some way (perhaps by using something # like the percpu 'cmpxchg': it doesn't need to be SMP-safe, but like the # percpu operations it needs to be interrupt-safe). # # Fixes: 399f8dd9a866 ("signal: Prevent sigqueue caching after task got released") # Fixes: 4bad58ebc8bc ("signal: Allow tasks to cache one sigqueue struct") # Cc: Thomas Gleixner <tglx@linutronix.de> # Cc: Peter Zijlstra <peterz@infradead.org> # Cc: Oleg Nesterov <oleg@redhat.com> # Cc: Christian Brauner <christian.brauner@ubuntu.com> # Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> # < /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 b4b27b9eed8ebdbf9f3046197d29d733c8c944f3 # < make -s -j 120 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 120 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 120 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 120 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/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) /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) INFO: Uncompressed kernel (size 0xd76ed8) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) INFO: Uncompressed kernel (size 0xd76ed8) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) INFO: Uncompressed kernel (size 0xd76ed8) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) INFO: Uncompressed kernel (size 0xd76ed8) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) INFO: Uncompressed kernel (size 0xd76ed8) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) INFO: Uncompressed kernel (size 0xd76ed8) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) INFO: Uncompressed kernel (size 0xd76ed8) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) INFO: Uncompressed kernel (size 0xd76ed8) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) INFO: Uncompressed kernel (size 0xd76ed8) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) INFO: Uncompressed kernel (size 0xd76ed8) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) INFO: Uncompressed kernel (size 0xd76ed8) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) INFO: Uncompressed kernel (size 0xd76ed8) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) INFO: Uncompressed kernel (size 0xd76ed8) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) INFO: Uncompressed kernel (size 0xd76ed8) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) INFO: Uncompressed kernel (size 0xd76ed8) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) INFO: Uncompressed kernel (size 0xd667ac) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xe00000) Image Name: Linux-5.13.0-rc7-gb4b27b9eed8e Created: Sat Jul 17 13:42:29 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6544721 Bytes = 6391.33 KiB = 6.24 MiB Load Address: 00e00000 Entry Point: 00e00314 Image Name: Linux-5.13.0-rc7-gb4b27b9eed8e Created: Sat Jul 17 13:42:29 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6544958 Bytes = 6391.56 KiB = 6.24 MiB Load Address: 00e00000 Entry Point: 00e00314 Image Name: Linux-5.13.0-rc7-gb4b27b9eed8e Created: Sat Jul 17 13:42:29 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6544690 Bytes = 6391.30 KiB = 6.24 MiB Load Address: 00e00000 Entry Point: 00e002a4 Image Name: Linux-5.13.0-rc7-gb4b27b9eed8e Created: Sat Jul 17 13:42:29 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6543843 Bytes = 6390.47 KiB = 6.24 MiB Load Address: 00e00000 Entry Point: 00e002a4 Image Name: Linux-5.13.0-rc7-gb4b27b9eed8e Created: Sat Jul 17 13:42:29 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6543832 Bytes = 6390.46 KiB = 6.24 MiB Load Address: 00e00000 Entry Point: 00e00314 Image Name: Linux-5.13.0-rc7-gb4b27b9eed8e Created: Sat Jul 17 13:42:29 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6543830 Bytes = 6390.46 KiB = 6.24 MiB Load Address: 00e00000 Entry Point: 00e00314 Image Name: Linux-5.13.0-rc7-gb4b27b9eed8e Created: Sat Jul 17 13:42:29 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6545318 Bytes = 6391.91 KiB = 6.24 MiB Load Address: 00e00000 Entry Point: 00e002a4 Image Name: Linux-5.13.0-rc7-gb4b27b9eed8e Created: Sat Jul 17 13:42:29 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6512575 Bytes = 6359.94 KiB = 6.21 MiB Load Address: 00000000 Entry Point: 00000000 Image Name: Linux-5.13.0-rc7-gb4b27b9eed8e Created: Sat Jul 17 13:42:29 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6546970 Bytes = 6393.53 KiB = 6.24 MiB Load Address: 00e00000 Entry Point: 00e002a4 Image Name: Linux-5.13.0-rc7-gb4b27b9eed8e Created: Sat Jul 17 13:42:29 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6543805 Bytes = 6390.43 KiB = 6.24 MiB Load Address: 00e00000 Entry Point: 00e002a4 Image Name: Linux-5.13.0-rc7-gb4b27b9eed8e Created: Sat Jul 17 13:42:29 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6544022 Bytes = 6390.65 KiB = 6.24 MiB Load Address: 00e00000 Entry Point: 00e002a4 Image Name: Linux-5.13.0-rc7-gb4b27b9eed8e Created: Sat Jul 17 13:42:29 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6543905 Bytes = 6390.53 KiB = 6.24 MiB Load Address: 00e00000 Entry Point: 00e00314 Image Name: Linux-5.13.0-rc7-gb4b27b9eed8e Created: Sat Jul 17 13:42:29 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6544023 Bytes = 6390.65 KiB = 6.24 MiB Load Address: 00e00000 Entry Point: 00e002a4 Image Name: Linux-5.13.0-rc7-gb4b27b9eed8e Created: Sat Jul 17 13:42:29 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6544848 Bytes = 6391.45 KiB = 6.24 MiB Load Address: 00e00000 Entry Point: 00e002a4 Image Name: Linux-5.13.0-rc7-gb4b27b9eed8e Created: Sat Jul 17 13:42:29 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6545912 Bytes = 6392.49 KiB = 6.24 MiB Load Address: 00e00000 Entry Point: 00e002a4 Image Name: Linux-5.13.0-rc7-gb4b27b9eed8e Created: Sat Jul 17 13:42:29 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6546912 Bytes = 6393.47 KiB = 6.24 MiB Load Address: 00e00000 Entry Point: 00e002a4 Completed OK # rm -rf /kisskb/build/linus_mpc85xx_defconfig_powerpc-gcc4.9 # Build took: 0:01:21.304832
© Michael Ellerman 2006-2018.