This is the QEMU output while working on bug #204375. This is what probably happens on my G4 DP too while testing bug #204375, but as it does not finish booting I can't get a dmesg: [...] Loading compiled-in X.509 certificates Btrfs loaded, crc32c=crc32c-generic BTRFS: selftest: sectorsize: 4096 nodesize: 4096 BTRFS: selftest: running btrfs free space cache tests BTRFS: selftest: running extent only tests BTRFS: selftest: running bitmap only tests BTRFS: selftest: running bitmap and extent tests BTRFS: selftest: running space stealing from bitmap to extent tests BTRFS: selftest: running extent buffer operation tests BTRFS: selftest: running btrfs_split_item tests BTRFS: selftest: running extent I/O tests BTRFS: selftest: running find delalloc tests BTRFS: selftest: running find_first_clear_extent_bit test BTRFS: selftest: running extent buffer bitmap tests BTRFS: selftest: running inode tests BTRFS: selftest: running btrfs_get_extent tests BTRFS: selftest: running hole first btrfs_get_extent test BTRFS critical (device (efault)): regular/prealloc extent found for non-regular inode 256 BTRFS: selftest: fs/btrfs/tests/inode-tests.c:904 expected a real extent, got 0 ============================================ WARNING: possible recursive locking detected 5.3.0-rc2+ #1881 Tainted: G W -------------------------------------------- swapper/0/1 is trying to acquire lock: (ptrval) (&(&n->list_lock)->rlock){....}, at: ___slab_alloc.constprop.58+0xf0/0x38c but task is already holding lock: (ptrval) (&(&n->list_lock)->rlock){....}, at: __kmem_cache_shutdown+0x70/0x20c other info that might help us debug this: Possible unsafe locking scenario: CPU0 ---- lock(&(&n->list_lock)->rlock); lock(&(&n->list_lock)->rlock); *** DEADLOCK *** May be due to missing lock nesting notation 3 locks held by swapper/0/1: #0: (ptrval) (cpu_hotplug_lock.rw_sem){++++}, at: kmem_cache_destroy+0x54/0x1f4 #1: (ptrval) (slab_mutex){+.+.}, at: kmem_cache_destroy+0x60/0x1f4 #2: (ptrval) (&(&n->list_lock)->rlock){....}, at: __kmem_cache_shutdown+0x70/0x20c stack backtrace: CPU: 0 PID: 1 Comm: swapper/0 Tainted: G W 5.3.0-rc2+ #1881 Call Trace: [ee8d9938] [c0895918] dump_stack+0xb4/0xf8 (unreliable) [ee8d9968] [c00aea18] __lock_acquire+0x1174/0x18dc [ee8d9bd8] [c00ad1e0] lock_acquire+0x14c/0x1c0 [ee8d9c18] [c08b8a14] _raw_spin_lock+0x34/0x4c [ee8d9c38] [c0229560] ___slab_alloc.constprop.58+0xf0/0x38c [ee8d9cc8] [c022983c] __slab_alloc.constprop.57+0x40/0x6c [ee8d9ce8] [c0229920] __kmalloc+0xb8/0x1f0 [ee8d9d28] [c022ba20] __kmem_cache_shutdown+0xe4/0x20c [ee8d9d78] [c01e4e08] shutdown_cache+0x20/0x13c [ee8d9d98] [c01e5320] kmem_cache_destroy+0x1d8/0x1f4 [ee8d9dd8] [c040bbb4] extent_io_exit+0x24/0x44 [ee8d9df8] [c0cbb93c] init_btrfs_fs+0x118/0x134 [ee8d9e18] [c0005860] do_one_initcall+0x134/0x33c [ee8d9ec8] [c0c8c418] kernel_init_freeable+0x2b4/0x35c [ee8d9f18] [c0005d38] kernel_init+0x18/0xf8 [ee8d9f38] [c0019348] ret_from_kernel_thread+0x14/0x1c ============================================================================= BUG btrfs_extent_state (Tainted: G W ): Objects remaining in btrfs_extent_state on __kmem_cache_shutdown() ----------------------------------------------------------------------------- INFO: Slab 0x(ptrval) objects=14 used=1 fp=0x(ptrval) flags=0x0200 CPU: 0 PID: 1 Comm: swapper/0 Tainted: G B W 5.3.0-rc2+ #1881 Call Trace: [ee8d9c58] [c0895918] dump_stack+0xb4/0xf8 (unreliable) [ee8d9c88] [c0227be0] slab_err+0x98/0xa0 [ee8d9d28] [c022ba3c] __kmem_cache_shutdown+0x100/0x20c [ee8d9d78] [c01e4e08] shutdown_cache+0x20/0x13c [ee8d9d98] [c01e5320] kmem_cache_destroy+0x1d8/0x1f4 [ee8d9dd8] [c040bbb4] extent_io_exit+0x24/0x44 [ee8d9df8] [c0cbb93c] init_btrfs_fs+0x118/0x134 [ee8d9e18] [c0005860] do_one_initcall+0x134/0x33c [ee8d9ec8] [c0c8c418] kernel_init_freeable+0x2b4/0x35c [ee8d9f18] [c0005d38] kernel_init+0x18/0xf8 [ee8d9f38] [c0019348] ret_from_kernel_thread+0x14/0x1c INFO: Object 0x(ptrval) @offset=848 INFO: Allocated in alloc_extent_state+0x2c/0x1a4 age=1114 cpu=0 pid=1 __slab_alloc.constprop.57+0x40/0x6c kmem_cache_alloc+0x80/0x268 alloc_extent_state+0x2c/0x1a4 __set_extent_bit+0x1b8/0x770 set_extent_bit+0x30/0x40 btrfs_test_extent_io+0x998/0xc54 btrfs_run_sanity_tests+0xcc/0x144 init_btrfs_fs+0xd4/0x134 do_one_initcall+0x134/0x33c kernel_init_freeable+0x2b4/0x35c kernel_init+0x18/0xf8 ret_from_kernel_thread+0x14/0x1c ============================================================================= BUG btrfs_extent_state (Tainted: G B W ): Objects remaining in btrfs_extent_state on __kmem_cache_shutdown() ----------------------------------------------------------------------------- INFO: Slab 0x(ptrval) objects=14 used=2 fp=0x(ptrval) flags=0x0200 CPU: 0 PID: 1 Comm: swapper/0 Tainted: G B W 5.3.0-rc2+ #1881 Call Trace: [ee8d9c58] [c0895918] dump_stack+0xb4/0xf8 (unreliable) [ee8d9c88] [c0227be0] slab_err+0x98/0xa0 [ee8d9d28] [c022ba3c] __kmem_cache_shutdown+0x100/0x20c [ee8d9d78] [c01e4e08] shutdown_cache+0x20/0x13c [ee8d9d98] [c01e5320] kmem_cache_destroy+0x1d8/0x1f4 [ee8d9dd8] [c040bbb4] extent_io_exit+0x24/0x44 [ee8d9df8] [c0cbb93c] init_btrfs_fs+0x118/0x134 [ee8d9e18] [c0005860] do_one_initcall+0x134/0x33c [ee8d9ec8] [c0c8c418] kernel_init_freeable+0x2b4/0x35c [ee8d9f18] [c0005d38] kernel_init+0x18/0xf8 [ee8d9f38] [c0019348] ret_from_kernel_thread+0x14/0x1c INFO: Object 0x(ptrval) @offset=2248 INFO: Allocated in alloc_extent_state+0x2c/0x1a4 age=1114 cpu=0 pid=1 __slab_alloc.constprop.57+0x40/0x6c kmem_cache_alloc+0x80/0x268 alloc_extent_state+0x2c/0x1a4 __set_extent_bit+0x1b8/0x770 set_extent_bit+0x30/0x40 btrfs_test_extent_io+0x88c/0xc54 btrfs_run_sanity_tests+0xcc/0x144 init_btrfs_fs+0xd4/0x134 do_one_initcall+0x134/0x33c kernel_init_freeable+0x2b4/0x35c kernel_init+0x18/0xf8 ret_from_kernel_thread+0x14/0x1c INFO: Object 0x(ptrval) @offset=2808 INFO: Allocated in alloc_extent_state+0x2c/0x1a4 age=1114 cpu=0 pid=1 __slab_alloc.constprop.57+0x40/0x6c kmem_cache_alloc+0x80/0x268 alloc_extent_state+0x2c/0x1a4 __set_extent_bit+0x1b8/0x770 set_extent_bit+0x30/0x40 btrfs_test_extent_io+0x7f8/0xc54 btrfs_run_sanity_tests+0xcc/0x144 init_btrfs_fs+0xd4/0x134 do_one_initcall+0x134/0x33c kernel_init_freeable+0x2b4/0x35c kernel_init+0x18/0xf8 ret_from_kernel_thread+0x14/0x1c kmem_cache_destroy btrfs_extent_state: Slab cache still has objects CPU: 0 PID: 1 Comm: swapper/0 Tainted: G B W 5.3.0-rc2+ #1881 Call Trace: [ee8d9d98] [c01e5314] kmem_cache_destroy+0x1cc/0x1f4 [ee8d9dd8] [c040bbb4] extent_io_exit+0x24/0x44 [ee8d9df8] [c0cbb93c] init_btrfs_fs+0x118/0x134 [ee8d9e18] [c0005860] do_one_initcall+0x134/0x33c [ee8d9ec8] [c0c8c418] kernel_init_freeable+0x2b4/0x35c [ee8d9f18] [c0005d38] kernel_init+0x18/0xf8 [ee8d9f38] [c0019348] ret_from_kernel_thread+0x14/0x1c Duplicate name in testcase-data, renamed to "duplicate-name#1" ### dt-test ### start of unittest - you will see error messages OF: /testcase-data/phandle-tests/consumer-a: could not get #phandle-cells-missing for /testcase-data/phandle-tests/provider1 OF: /testcase-data/phandle-tests/consumer-a: could not get #phandle-cells-missing for /testcase-data/phandle-tests/provider1 OF: /testcase-data/phandle-tests/consumer-a: could not find phandle OF: /testcase-data/phandle-tests/consumer-a: could not find phandle OF: /testcase-data/phandle-tests/consumer-a: #phandle-cells = 3 found 0 OF: /testcase-data/phandle-tests/consumer-a: #phandle-cells = 3 found 0 OF: /testcase-data/phandle-tests/consumer-b: could not get #phandle-missing-cells for /testcase-data/phandle-tests/provider1 OF: /testcase-data/phandle-tests/consumer-b: could not find phandle OF: /testcase-data/phandle-tests/consumer-b: #phandle-cells = 2 found 0 OF: overlay: WARNING: memory leak will occur if overlay removed, property: /testcase-data/overlay-node/test-bus/test-unittest0/status OF: overlay: WARNING: memory leak will occur if overlay removed, property: /testcase-data/overlay-node/test-bus/test-unittest1/status OF: overlay: WARNING: memory leak will occur if overlay removed, property: /testcase-data/overlay-node/test-bus/test-unittest2/status OF: overlay: WARNING: memory leak will occur if overlay removed, property: /testcase-data/overlay-node/test-bus/test-unittest3/status OF: overlay: WARNING: memory leak will occur if overlay removed, property: /testcase-data/overlay-node/test-bus/test-unittest5/status OF: overlay: WARNING: memory leak will occur if overlay removed, property: /testcase-data/overlay-node/test-bus/test-unittest6/status OF: overlay: WARNING: memory leak will occur if overlay removed, property: /testcase-data/overlay-node/test-bus/test-unittest7/status OF: overlay: WARNING: memory leak will occur if overlay removed, property: /testcase-data/overlay-node/test-bus/test-unittest8/status OF: overlay: WARNING: memory leak will occur if overlay removed, property: /testcase-data/overlay-node/test-bus/test-unittest8/property-foo OF: overlay: node_overlaps_later_cs: #6 overlaps with #7 @/testcase-data/overlay-node/test-bus/test-unittest8 OF: overlay: overlay #6 is not topmost OF: overlay: WARNING: memory leak will occur if overlay removed, property: /testcase-data/overlay-node/test-bus/i2c-test-bus/test-unittest12/status OF: overlay: WARNING: memory leak will occur if overlay removed, property: /testcase-data/overlay-node/test-bus/i2c-test-bus/test-unittest13/status OF: overlay: WARNING: memory leak will occur if overlay removed, property: /testcase-data-2/substation@100/status OF: overlay: WARNING: memory leak will occur if overlay removed, property: /testcase-data-2/fairway-1/status OF: overlay: WARNING: memory leak will occur if overlay removed, property: /testcase-data-2/fairway-1/ride@100/track@30/incline-up OF: overlay: WARNING: memory leak will occur if overlay removed, property: /testcase-data-2/fairway-1/ride@100/track@40/incline-up OF: overlay: WARNING: memory leak will occur if overlay removed, property: /testcase-data-2/lights@40000/status OF: overlay: WARNING: memory leak will occur if overlay removed, property: /testcase-data-2/lights@40000/color OF: overlay: WARNING: memory leak will occur if overlay removed, property: /testcase-data-2/lights@40000/rate OF: overlay: WARNING: memory leak will occur if overlay removed, property: /__symbols__/hvac_2 OF: overlay: WARNING: memory leak will occur if overlay removed, property: /__symbols__/ride_200 OF: overlay: WARNING: memory leak will occur if overlay removed, property: /__symbols__/ride_200_left OF: overlay: WARNING: memory leak will occur if overlay removed, property: /__symbols__/ride_200_right OF: overlay: ERROR: multiple fragments add and/or delete node /testcase-data-2/substation@100/motor-1/controller OF: overlay: ERROR: multiple fragments add, update, and/or delete property /testcase-data-2/substation@100/motor-1/controller/name OF: overlay: WARNING: memory leak will occur if overlay removed, property: /testcase-data-2/substation@100/motor-1/rpm_avail OF: overlay: WARNING: memory leak will occur if overlay removed, property: /testcase-data-2/substation@100/motor-1/rpm_avail OF: overlay: ERROR: multiple fragments add, update, and/or delete property /testcase-data-2/substation@100/motor-1/rpm_avail ### dt-test ### end of unittest - 223 passed, 0 failed Warning: unable to open an initial console. VFS: Cannot open root device "(null)" or unknown-block(8,1): error -6 Please append a correct "root=" boot option; here are the available partitions: Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(8,1) CPU: 0 PID: 1 Comm: swapper/0 Tainted: G B W 5.3.0-rc2+ #1881 Call Trace: [ee8d9d58] [c0895918] dump_stack+0xb4/0xf8 (unreliable) [ee8d9d88] [c0043a08] panic+0x1c0/0x3f0 [ee8d9e48] [c0c8ca3c] mount_block_root+0x348/0x388 [ee8d9ef8] [c0c8cc44] prepare_namespace+0x13c/0x178 [ee8d9f18] [c0005d38] kernel_init+0x18/0xf8 [ee8d9f38] [c0019348] ret_from_kernel_thread+0x14/0x1c Rebooting in 120 seconds..
Created attachment 284357 [details] dmesg (kernel 5.3-rc4 + shadow patch + parallel patch, PowerMac G4 DP) With KASAN working now on ppc32 (https://patchwork.ozlabs.org/patch/1144756/, https://patchwork.ozlabs.org/patch/1144757/), the dmesg output from real hardware. sda6 and sdb2 are btrfs partitions, though not automatically mounted via /etc/fstab. For better readability I cleared the usb/hiddev lines inbetween the btrfs lines: [...] Aug 13 13:01:44 T600 kernel: Btrfs loaded, crc32c=crc32c-generic, debug=on Aug 13 13:01:45 T600 kernel: BTRFS: selftest: sectorsize: 4096 nodesize: 4096 Aug 13 13:01:45 T600 kernel: BTRFS: selftest: running btrfs free space cache tests Aug 13 13:01:45 T600 kernel: BTRFS: selftest: running extent only tests Aug 13 13:01:45 T600 kernel: BTRFS: selftest: running bitmap only tests Aug 13 13:01:45 T600 kernel: BTRFS: selftest: running bitmap and extent tests Aug 13 13:01:45 T600 kernel: BTRFS: selftest: running space stealing from bitmap to extent tests Aug 13 13:01:45 T600 kernel: BTRFS: selftest: running extent buffer operation tests Aug 13 13:01:45 T600 kernel: BTRFS: selftest: running btrfs_split_item tests Aug 13 13:01:45 T600 kernel: BTRFS: selftest: running extent I/O tests Aug 13 13:01:45 T600 kernel: BTRFS: selftest: running find delalloc tests Aug 13 13:01:47 T600 kernel: BTRFS: selftest: running find_first_clear_extent_bit test Aug 13 13:01:47 T600 kernel: BTRFS: selftest: running extent buffer bitmap tests Aug 13 13:01:48 T600 kernel: BTRFS: selftest: running inode tests Aug 13 13:01:48 T600 kernel: BTRFS: selftest: running btrfs_get_extent tests Aug 13 13:01:48 T600 kernel: BTRFS: selftest: running hole first btrfs_get_extent test Aug 13 13:01:48 T600 kernel: BTRFS critical (device (efault)): regular/prealloc extent found for non-regular inode 256 Aug 13 13:01:48 T600 kernel: BTRFS: selftest: fs/btrfs/tests/inode-tests.c:904 expected a real extent, got 0 Aug 13 13:01:48 T600 kernel: BTRFS: state leak: start 67108864 end 75497471 state 1 in tree 1 refs 1 Aug 13 13:01:48 T600 kernel: BTRFS: state leak: start 33554432 end 67108863 state 33 in tree 1 refs 1 Aug 13 13:01:48 T600 kernel: BTRFS: state leak: start 1048576 end 4194303 state 33 in tree 1 refs 1 Aug 13 13:01:49 T600 kernel: Btrfs loaded, crc32c=crc32c-generic, debug=on Aug 13 13:01:49 T600 kernel: BTRFS: selftest: sectorsize: 4096 nodesize: 4096 Aug 13 13:01:49 T600 kernel: BTRFS: selftest: running btrfs free space cache tests Aug 13 13:01:49 T600 kernel: BTRFS: selftest: running extent only tests Aug 13 13:01:49 T600 kernel: BTRFS: selftest: running bitmap only tests Aug 13 13:01:49 T600 kernel: BTRFS: selftest: running bitmap and extent tests Aug 13 13:01:49 T600 kernel: BTRFS: selftest: running space stealing from bitmap to extent tests Aug 13 13:01:49 T600 kernel: BTRFS: selftest: running extent buffer operation tests Aug 13 13:01:49 T600 kernel: BTRFS: selftest: running btrfs_split_item tests Aug 13 13:01:49 T600 kernel: BTRFS: selftest: running extent I/O tests Aug 13 13:01:49 T600 kernel: BTRFS: selftest: running find delalloc tests Aug 13 13:01:50 T600 kernel: ================================================================== Aug 13 13:01:50 T600 kernel: BUG: KASAN: global-out-of-bounds in _copy_to_iter+0x3d4/0x5a8 Aug 13 13:01:50 T600 kernel: Write of size 4096 at addr f1a07000 by task systemd-udevd/120 Aug 13 13:01:50 T600 kernel: Aug 13 13:01:50 T600 kernel: CPU: 0 PID: 120 Comm: systemd-udevd Tainted: G W 5.3.0-rc4+ #1 Aug 13 13:01:50 T600 kernel: Call Trace: Aug 13 13:01:50 T600 kernel: [ee1c3848] [c075026c] dump_stack+0xb0/0x10c (unreliable) Aug 13 13:01:50 T600 kernel: [ee1c3878] [c02334a8] print_address_description+0x80/0x45c Aug 13 13:01:50 T600 kernel: [ee1c3908] [c0233128] __kasan_report+0x140/0x188 Aug 13 13:01:50 T600 kernel: [ee1c3948] [c0233fbc] check_memory_region+0x28/0x184 Aug 13 13:01:50 T600 kernel: [ee1c3958] [c023206c] memcpy+0x48/0x74 Aug 13 13:01:50 T600 kernel: [ee1c3978] [c044342c] _copy_to_iter+0x3d4/0x5a8 Aug 13 13:01:50 T600 kernel: [ee1c3aa8] [c04437a8] copy_page_to_iter+0x90/0x550 Aug 13 13:01:50 T600 kernel: [ee1c3b08] [c01b6898] generic_file_read_iter+0x5c8/0x7bc Aug 13 13:01:50 T600 kernel: [ee1c3b78] [c0249034] __vfs_read+0x1b0/0x1f4 Aug 13 13:01:50 T600 kernel: [ee1c3ca8] [c0249134] vfs_read+0xbc/0x124 Aug 13 13:01:50 T600 kernel: [ee1c3cd8] [c02491f0] kernel_read+0x54/0x70 Aug 13 13:01:50 T600 kernel: [ee1c3d08] [c02535c8] kernel_read_file+0x240/0x358 Aug 13 13:01:50 T600 kernel: [ee1c3db8] [c02537cc] kernel_read_file_from_fd+0x54/0x74 Aug 13 13:01:50 T600 kernel: [ee1c3df8] [c01068ac] sys_finit_module+0xd8/0x140 Aug 13 13:01:50 T600 kernel: [ee1c3f38] [c001a274] ret_from_syscall+0x0/0x34 Aug 13 13:01:50 T600 kernel: --- interrupt: c00 at 0x5b52c4 LR = 0x7a435c Aug 13 13:01:50 T600 kernel: Aug 13 13:01:50 T600 kernel: Aug 13 13:01:50 T600 kernel: Memory state around the buggy address: Aug 13 13:01:50 T600 kernel: f1a07a00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 Aug 13 13:01:50 T600 kernel: f1a07a80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 Aug 13 13:01:50 T600 kernel: >f1a07b00: 00 00 00 00 00 00 00 00 05 fa fa fa fa fa fa fa Aug 13 13:01:50 T600 kernel: ^ Aug 13 13:01:50 T600 kernel: f1a07b80: 07 fa fa fa fa fa fa fa 00 03 fa fa fa fa fa fa Aug 13 13:01:50 T600 kernel: f1a07c00: 04 fa fa fa fa fa fa fa 00 06 fa fa fa fa fa fa Aug 13 13:01:50 T600 kernel: ================================================================== Aug 13 13:01:51 T600 kernel: BTRFS: selftest: running find_first_clear_extent_bit test Aug 13 13:01:51 T600 kernel: BTRFS: selftest: running extent buffer bitmap tests Aug 13 13:01:52 T600 kernel: BTRFS: selftest: running inode tests Aug 13 13:01:52 T600 kernel: BTRFS: selftest: running btrfs_get_extent tests Aug 13 13:01:52 T600 kernel: BTRFS: selftest: running hole first btrfs_get_extent test Aug 13 13:01:52 T600 kernel: BTRFS critical (device (efault)): regular/prealloc extent found for non-regular inode 256 Aug 13 13:01:52 T600 kernel: BTRFS: selftest: fs/btrfs/tests/inode-tests.c:904 expected a real extent, got 0 Aug 13 13:01:52 T600 kernel: BTRFS: state leak: start 67108864 end 75497471 state 1 in tree 1 refs 1 Aug 13 13:01:52 T600 kernel: BTRFS: state leak: start 33554432 end 67108863 state 33 in tree 1 refs 1 Aug 13 13:01:52 T600 kernel: BTRFS: state leak: start 1048576 end 4194303 state 33 in tree 1 refs 1
Created attachment 284359 [details] kernel .config (5.3-rc4, PowerMac G4 DP)
Thanks for the report, fix https://patchwork.kernel.org/patch/11150203/ is on the way to 5.4.
Thanks!