Re: Linux 6.3-rc1
From: Guenter Roeck
Date: Mon Mar 06 2023 - 17:02:38 EST
> On Mon, Mar 06, 2023 at 08:52:38AM -0800, Guenter Roeck wrote:
I forgot to actually copy the people I had planned to copy.
Sorry for that; the unexpected crashes distracted me. Copied now.
For those who have not seen this e-mail before: You are copied because
you either submitted a patch causing a build failure in v6.3-rc1,
or a fix for it.
Guenter
> On Sun, Mar 05, 2023 at 03:24:41PM -0800, Linus Torvalds wrote:
> > So after several releases where the merge windows had something odd
> > going on, we finally had just a regular "two weeks of just merge
> > window". It was quite nice.
> >
> > In fact, it was quite nice in a couple of ways: not only didn't I have
> > a hugely compressed merge window where I felt I had to cram as much as
> > possible into the first few days, but the fact that we _have_ had a
> > couple of merge windows where I really asked for people to have
> > everything ready when the merge window opened seems to have set a
> > pattern: the bulk of everything really did come in early.
> >
> > And again, that just makes the merge window work nicer for me, when I
> > don't sit there waiting, knowing that there's stuff pending that just
> > hasn't had a pull request done yet.
> >
> > So it all felt rather good. Of course, the fact that I had no machine
> > issues, no holidays, and no travel coming up, then meant that I may
> > have noticed a few more of the "people, please write good commit
> > messages for merges" issues, so there's a possible downside to me not
> > being as hurried as the last few merge windows have been.
> >
> > And of course, smooth or not, now that the merge window is closed, we
> > need to make sure it all *works*. We had a couple of exciting merges
> > already, and I think the fallout from that got sorted out, but I'm
> > sure there's more to come. Let's hope the calming-down period of 6.3
> > works as well as the merge window did... Knock wood.
> >
> > Anyway, as always, the shortlog is much too large to post, since we
> > had 12500+ commits (and that's not counting the merges - closer to a
> > thousand of those). So below is just my usual merge log which gives
> > only a very high-level view of what I merged and from who. It all
> > looks fairly normal, with ~55% of the patch being drivers, ~20% being
> > architecture updates. and the rest being the usual random mix
> > (documentation, tooling, networking, filesystem, and just core kernel
> > stuff).
> >
> > Please do test,
> >
>
> Build results:
> total: 153 pass: 146 fail: 7
> Failed builds:
> alpha:allmodconfig
> csky:allmodconfig
> m68k:allmodconfig
> openrisc:allmodconfig
> parisc:allmodconfig
> s390:allmodconfig
> sparc64:allmodconfig
> Qemu test results:
> total: 511 pass: 459 fail: 52
> Failed tests:
> arm:smdkc210:exynos_defconfig:cpuidle:nocrypto:mem128:exynos4210-smdkv310:initrd
> arm:smdkc210:exynos_defconfig:cpuidle:nocrypto:sd2:mem128:exynos4210-smdkv310:rootfs
> arm:realview-eb:realview_defconfig:realview_eb:mem512:net,default:arm-realview-eb:initrd
> arm:mcimx6ul-evk:imx_v6_v7_defconfig:nodrm:mem256:net,nic:net,nic:imx6ul-14x14-evk:initrd
> arm:mcimx6ul-evk:imx_v6_v7_defconfig:nodrm:sd:mem256:net,nic:net,nic:imx6ul-14x14-evk:rootfs
> arm:mcimx6ul-evk:imx_v6_v7_defconfig:nodrm:usb0:mem256:net,nic:net,nic:imx6ul-14x14-evk:rootfs
> arm:mcimx6ul-evk:imx_v6_v7_defconfig:nodrm:usb1:mem256:net,nic:net,nic:imx6ul-14x14-evk:rootfs
> arm:mcimx7d-sabre:imx_v6_v7_defconfig:nodrm:mem256:net,nic:imx7d-sdb:initrd
> arm:mcimx7d-sabre:imx_v6_v7_defconfig:nodrm:usb1:mem256:net,nic:imx7d-sdb:rootfs
> arm:mcimx7d-sabre:imx_v6_v7_defconfig:nodrm:sd:mem256:net,nic:imx7d-sdb:rootfs
> arm:vexpress-a9:multi_v7_defconfig:nolocktests:flash64:mem128:net,default:vexpress-v2p-ca9:rootfs
> arm:sabrelite:multi_v7_defconfig:mem256:net,default:imx6dl-sabrelite:initrd
> arm:sabrelite:multi_v7_defconfig:mmc1:mem256:net,default:imx6dl-sabrelite:rootfs
> arm:sabrelite:multi_v7_defconfig:usb0:mem256:net,default:imx6dl-sabrelite:rootfs
> arm:sabrelite:multi_v7_defconfig:usb1:mem256:net,default:imx6dl-sabrelite:rootfs
> arm:xilinx-zynq-a9:multi_v7_defconfig:mem128:net,default:zynq-zc702:initrd
> arm:xilinx-zynq-a9:multi_v7_defconfig:usb0:mem128:net,default:zynq-zc702:rootfs
> arm:xilinx-zynq-a9:multi_v7_defconfig:sd:mem128:net,default:zynq-zc702:rootfs
> arm:xilinx-zynq-a9:multi_v7_defconfig:sd:mem128:net,default:zynq-zc706:rootfs
> arm:xilinx-zynq-a9:multi_v7_defconfig:usb0:mem128:zynq-zed:rootfs
> arm:cubieboard:multi_v7_defconfig:mem512:net,default:sun4i-a10-cubieboard:initrd
> arm:cubieboard:multi_v7_defconfig:usb:mem512:net,default:sun4i-a10-cubieboard:rootfs
> arm:cubieboard:multi_v7_defconfig:sata:mem512:net,default:sun4i-a10-cubieboard:rootfs
> arm:orangepi-pc:multi_v7_defconfig:net,nic:sun8i-h3-orangepi-pc:initrd
> arm:orangepi-pc:multi_v7_defconfig:sd:net,nic:sun8i-h3-orangepi-pc:rootfs
> arm:orangepi-pc:multi_v7_defconfig:usb0:net,nic:sun8i-h3-orangepi-pc:rootfs
> arm:orangepi-pc:multi_v7_defconfig:usb1:net,nic:sun8i-h3-orangepi-pc:rootfs
> ppc:mac99:ppc_book3s_defconfig:smp:ide:net,e1000:rootfs
> ppc64:mac99:ppc64_book3s_defconfig:smp:net,ne2k_pci:initrd
> ppc64:mac99:ppc64_book3s_defconfig:smp:net,pcnet:ide:rootfs
> ppc64:mac99:ppc64_book3s_defconfig:smp:net,e1000:sdhci:mmc:rootfs
> ppc64:mac99:ppc64_book3s_defconfig:smp:net,e1000e:nvme:rootfs
> ppc64:mac99:ppc64_book3s_defconfig:smp:net,virtio-net:scsi[DC395]:rootfs
> riscv:sifive_u:defconfig:net,default:initrd
> riscv:sifive_u:defconfig:sd:net,default:rootfs
> riscv:sifive_u:defconfig:mtd32:net,default:rootfs
> sparc32:SS-4:nodebugobj:smp:scsi:net,default:hd
> sparc32:SS-5:nodebugobj:smp:scsi:net,default:cd
> sparc32:SS-10:nodebugobj:smp:scsi:net,default:hd
> sparc32:SS-20:nodebugobj:smp:scsi:net,default:hd
> sparc32:SS-600MP:nodebugobj:smp:scsi:net,default:hd
> sparc32:Voyager:nodebugobj:smp:noapc:scsi:net,default:hd
> i386:q35:Westmere-IBRS:defconfig:smp:efi32:scsi[53C810]:net,virtio-net-pci:hd
> i386:q35:Opteron_G1:defconfig:smp:efi32:net,i82558a:initrd
> i386:q35:core2duo:defconfig:smp:efi32:usb:net,i82559er:hd
> i386:pc:Westmere:defconfig:pae:smp:efi32:usb:net,pcnet:hd
> x86_64:q35:Conroe:defconfig:smp4:net,tulip:efi32:mem256:scsi[DC395]:hd
> x86_64:q35:Opteron_G5:defconfig:smp4:net,i82559c:efi32:mem256:scsi[MEGASAS2]:hd
> x86_64:q35:Opteron_G1:defconfig:smp2:net,i82562:efi:mem1G:initrd
> x86_64:pc:Opteron_G2:defconfig:smp:net,usb:efi32:mem2G:scsi[virtio-pci]:hd
> x86_64:pc:Opteron_G2:defconfig:smp:net,usb:efi32:mem2G:scsi[virtio-pci-old]:hd
> x86_64:q35:Nehalem:defconfig:smp2:net,i82558a:efi32:mem1G:virtio:hd
>
> Guenter
>
> ---
> Build failures:
>
> alpha:allmodconfig
> arm:allmodconfig
> csky:allmodconfig
> m68k:allmodconfig
> mips:allmodconfig
> openrisc:allmodconfig
> parisc:ppc32_allmodconfig
> powerpc:ppc32_allmodconfig
> s390:allmodconfig
> xtensa:allmodconfig
>
> drivers/media/i2c/imx290.c:1090:12: error: 'imx290_runtime_suspend' defined but not used [-Werror=unused-function]
> 1090 | static int imx290_runtime_suspend(struct device *dev)
> | ^~~~~~~~~~~~~~~~~~~~~~
> drivers/media/i2c/imx290.c:1082:12: error: 'imx290_runtime_resume' defined but not used [-Werror=unused-function]
> 1082 | static int imx290_runtime_resume(struct device *dev)
>
> Seen whenever CONFIG_PM_SLEEP is not enabled. Introduced by commit 02852c01f654
> ("media: i2c: imx290: Initialize runtime PM before subdev");
>
> Caused by commit 02852c01f654 ("media: i2c: imx290: Initialize runtime PM before subdev").
>
> Fix: https://patchwork.kernel.org/project/linux-media/patch/20230207161316.293923-1-arnd@xxxxxxxxxx/
>
> Cc: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
> Cc: Sakari Ailus <sakari.ailus@xxxxxxxxxxxxxxx>
> Cc: Arnd Bergmann <arnd@xxxxxxxx>
> ---
>
> sparc64:allmodconfig
> parisc:allmodconfig
>
> fs/btrfs/inode.c: In function 'btrfs_lookup_dentry':
> fs/btrfs/inode.c:5730:21: error: 'location.type' may be used uninitialized [-Werror=maybe-uninitialized]
> 5730 | if (location.type == BTRFS_INODE_ITEM_KEY) {
> | ~~~~~~~~^~~~~
> fs/btrfs/inode.c:5719:26: note: 'location' declared here
> 5719 | struct btrfs_key location;
> | ^~~~~~~~
>
> Seen with gcc 11.x and later when trying to build sparc64 or parisc images.
> Not observed with other architectures.
> Caused (exposed) by commit 1ec49744ba83 ("btrfs: turn on -Wmaybe-uninitialized").
> The failing code is
>
> ret = btrfs_inode_by_name(BTRFS_I(dir), dentry, &location, &di_type);
> if (ret < 0)
> return ERR_PTR(ret);
>
> if (location.type == BTRFS_INODE_ITEM_KEY) {
>
> and in btrfs_inode_by_name():
>
> ret = fscrypt_setup_filename(&dir->vfs_inode, &dentry->d_name, 1, &fname);
> if (ret)
> goto out;
>
> It appears that gcc believes that fscrypt_setup_filename() may return
> a positive value. If that happens, location.type would indeed be
> uninitialized. Changing the above code to
>
> ret = fscrypt_setup_filename(&dir->vfs_inode, &dentry->d_name, 1, &fname);
> if (ret < 0)
> goto out;
>
> or, alternatively,
>
> ret = btrfs_inode_by_name(BTRFS_I(dir), dentry, &location, &di_type);
> if (ret)
> return ERR_PTR(ret);
>
> would fix the problem.
>
> Side note: gcc on other architectures (e.g., x86) does _not_ report an error
> even if btrfs_inode_by_name() is made to return a positive value without
> initializing location.type.
>
> Fix: Not available as far as I know.
>
> Cc: Josef Bacik <josef@xxxxxxxxxxxxxx>
> Cc: David Sterba <dsterba@xxxxxxxx>
>
> ===
> Runtime failures:
>
> Various crashes, affecting several architectures.
>
> [ 11.664666] BUG: unable to handle page fault for address: 000000000002d3db
> [ 11.664827] #PF: supervisor read access in kernel mode
> [ 11.664891] #PF: error_code(0x0000) - not-present page
> [ 11.664983] PGD 800000000430d067 P4D 800000000430d067 PUD 41a2067 PMD 0
> [ 11.665179] Oops: 0000 [#1] PREEMPT SMP PTI
> [ 11.665319] CPU: 0 PID: 273 Comm: dd Tainted: G N 6.3.0-rc1 #1
> [ 11.665463] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 0.0.0 02/06/2015
> [ 11.665602] RIP: 0010:__lock_acquire+0x5c6/0x2740
> [ 11.665819] Code: 00 83 f8 2f 0f 87 7c 08 00 00 3b 05 cc 62 a2 02 41 bd 01 00 00 00 0f 86 f6 00 00 00 89 05 ba 62 a2 02 e9 eb 00 00 00 45 31 ed <48> 81 3f a0 a8 52 b4 45 0f 45 e8 83 fe 01 0f 87 85 fa ff ff 89 f0
> [ 11.666011] RSP: 0018:ffffb0038039fbf8 EFLAGS: 00000046
> [ 11.666088] RAX: 0000000000000000 RBX: ffff8f1304238040 RCX: 0000000000000000
> [ 11.666163] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 000000000002d3db
> [ 11.666235] RBP: 000000000002d3db R08: 0000000000000001 R09: 0000000000000001
> [ 11.666315] R10: 0000000000000001 R11: 0000000000000001 R12: 0000000000000000
> [ 11.666408] R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000
> [ 11.666504] FS: 00007f78c78e3b28(0000) GS:ffff8f130f000000(0000) knlGS:0000000000000000
> [ 11.666591] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
> [ 11.666655] CR2: 000000000002d3db CR3: 00000000042d2000 CR4: 00000000000006f0
> [ 11.666768] Call Trace:
> [ 11.666873] <TASK>
> [ 11.666958] ? lock_acquire+0xcb/0x330
> [ 11.667043] lock_acquire+0xcb/0x330
> [ 11.667102] ? add_timer_on+0x92/0x150
> [ 11.667163] _raw_spin_lock+0x2b/0x40
> [ 11.667210] ? add_timer_on+0x92/0x150
> [ 11.667255] add_timer_on+0x92/0x150
> [ 11.667302] try_to_generate_entropy+0x256/0x280
> [ 11.667379] ? __pfx_entropy_timer+0x10/0x10
> [ 11.667436] ? inode_security+0x2e/0x70
> [ 11.667484] ? selinux_file_permission+0x11a/0x150
> [ 11.667539] urandom_read_iter+0x23/0x90
> [ 11.667583] vfs_read+0x226/0x2f0
> [ 11.667637] ksys_read+0x64/0xe0
> [ 11.667680] do_syscall_64+0x3f/0x90
> [ 11.667725] entry_SYSCALL_64_after_hwframe+0x72/0xdc
> [ 11.667817] RIP: 0033:0x7f78c78a1be2
> [ 11.667965] Code: c3 8b 07 85 c0 75 24 49 89 fb 48 89 f0 48 89 d7 48 89 ce 4c 89 c2 4d 89 ca 4c 8b 44 24 08 4c 8b 4c 24 10 4c 89 5c 24 08 0f 05 <c3> e9 70 d2 ff ff 41 54 b8 02 00 00 00 49 89 f4 be 00 88 08 00 55
> [ 11.668127] RSP: 002b:00007ffe531be798 EFLAGS: 00000246 ORIG_RAX: 0000000000000000
> [ 11.668209] RAX: ffffffffffffffda RBX: 00007f78c78e3b28 RCX: 00007f78c78a1be2
> [ 11.668276] RDX: 0000000000000020 RSI: 00007f78c78e4d00 RDI: 0000000000000000
> [ 11.668378] RBP: 00007f78c78e4d00 R08: 0000000000000000 R09: 0000000000000000
> [ 11.668451] R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
> [ 11.668517] R13: 0000000000000000 R14: 00007f78c78e4d00 R15: 0000000000000000
> [ 11.668613] </TASK>
> [ 11.668669] Modules linked in:
> [ 11.668794] CR2: 000000000002d3db
> [ 11.669015] ---[ end trace 0000000000000000 ]---
>
> Bisect (on arm):
>
> # bad: [fe15c26ee26efa11741a7b632e9f23b01aca4cc6] Linux 6.3-rc1
> # good: [b01fe98d34f3bed944a93bd8119fed80c856fad8] Merge tag 'i2c-for-6.3-rc1-part2' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux
> git bisect start 'HEAD' 'b01fe98d34f3'
> # good: [1a90673e17b6bcc6b6e8c072015956a6204e0f2d] Merge tag 'pull-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
> git bisect good 1a90673e17b6bcc6b6e8c072015956a6204e0f2d
> # good: [0fb7fb713461e44b12e72c292bf90ee300f40710] genirq/msi, platform-msi: Ensure that MSI descriptors are unreferenced
> git bisect good 0fb7fb713461e44b12e72c292bf90ee300f40710
> # good: [7f9ec7d8169b5281eff2b907d8ffb1bf56045f73] Merge tag 'x86-urgent-2023-03-05' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
> git bisect good 7f9ec7d8169b5281eff2b907d8ffb1bf56045f73
> # good: [f915322fe014c5c515119381e886faf07b3c9d31] Merge tag 'v6.3-p2' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
> git bisect good f915322fe014c5c515119381e886faf07b3c9d31
> # bad: [596ff4a09b8981790e15572e8e7bc904df5835e7] cpumask: re-introduce constant-sized cpumask optimizations
> git bisect bad 596ff4a09b8981790e15572e8e7bc904df5835e7
> # first bad commit: [596ff4a09b8981790e15572e8e7bc904df5835e7] cpumask: re-introduce constant-sized cpumask optimizations
>
> Reverting the bad commit fixes the problem.
>
> ---
> There are also some recently introduced runtime warnings in calls from ct_nmi_enter()
> which I am still trying to bisect.
>
> 28.758119] ------------[ cut here ]------------
> [ 28.758418] WARNING: CPU: 0 PID: 301 at kernel/locking/lockdep.c:5527 check_flags+0x170/0x258
> [ 28.759084] DEBUG_LOCKS_WARN_ON(current->softirqs_enabled)
> [ 28.759127] Modules linked in:
> [ 28.759652] CPU: 0 PID: 301 Comm: run.sh Tainted: G N 6.2.0-13115-gee3f96b16468 #1
> [ 28.759959] Hardware name: Freescale i.MX7 Dual (Device Tree)
> [ 28.760324] unwind_backtrace from show_stack+0x10/0x14
> [ 28.760567] show_stack from dump_stack_lvl+0x68/0x90
> [ 28.760708] dump_stack_lvl from __warn+0x70/0x1e0
> [ 28.760863] __warn from warn_slowpath_fmt+0x118/0x230
> [ 28.761015] warn_slowpath_fmt from check_flags+0x170/0x258
> [ 28.761179] check_flags from lock_is_held_type+0x6c/0x308
> [ 28.761326] lock_is_held_type from rcu_read_lock_sched_held+0x3c/0x70
> [ 28.761505] rcu_read_lock_sched_held from trace_rcu_dyntick+0x7c/0x128
> [ 28.761698] trace_rcu_dyntick from ct_nmi_enter+0x6c/0xe4
> [ 28.761857] ct_nmi_enter from irq_enter+0x8/0x10
> [ 28.762021] irq_enter from generic_handle_arch_irq+0xc/0x64
> [ 28.762187] generic_handle_arch_irq from call_with_stack+0x18/0x20
> [ 28.762370] call_with_stack from __irq_svc+0x9c/0xbc
> [ 28.762594] Exception stack(0xd1b15f60 to 0xd1b15fa8)
> [ 28.762849] 5f60: ecac8b10 40000000 b6ec9418 c1c2607c 00000000 40000000 c557b00b 00000001
> [ 28.763056] 5f80: 00000b00 c0101278 c557b0f0 00000000 00000051 d1b15fb0 c01011c4 c0103c00
> [ 28.763249] 5fa0: 40000013 ffffffff
> [ 28.763394] __irq_svc from vfp_support_entry+0x1c/0x30
> [ 28.763659] irq event stamp: 6348
> [ 28.763783] hardirqs last enabled at (6347): [<c010106c>] __und_usr+0x6c/0x98
> [ 28.764030] hardirqs last disabled at (6348): [<c0100bd4>] __irq_svc+0x54/0xbc
> [ 28.764232] softirqs last enabled at (6328): [<c0103814>] vfp_sync_hwstate+0x48/0x8c
> [ 28.764453] softirqs last disabled at (6326): [<c01037cc>] vfp_sync_hwstate+0x0/0x8c
> [ 28.764665] ---[ end trace 0000000000000000 ]---
> [ 28.764907] irq event stamp: 6348
> [ 28.765018] hardirqs last enabled at (6347): [<c010106c>] __und_usr+0x6c/0x98
> [ 28.765202] hardirqs last disabled at (6348): [<c0100bd4>] __irq_svc+0x54/0xbc
> [ 28.765386] softirqs last enabled at (6328): [<c0103814>] vfp_sync_hwstate+0x48/0x8c
> [ 28.765575] softirqs last disabled at (6326): [<c01037cc>] vfp_sync_hwstate+0x0/0x8c