Subject: linux-next: boot failure after merge of the vfs-brauner tree

From: Stephen Rothwell <[email-masked]>
Date: Wed, 30 Oct 2024 18:30:44 +1100

Hi all,

After merging the vfs-brauner tree, today's linux-next build (powerpc
pseries_le_defconfig) qemu boot test failed like this:

 Initialise system trusted keyrings
 Key type blacklist registered
 BUG: Kernel NULL pointer dereference on write at 0x00000018
 Faulting instruction address: 0xc0000000009867d0
 Oops: Kernel access of bad area, sig: 7 [#1]
 LE PAGE_SIZE=4K MMU=Radix SMP NR_CPUS=2048 NUMA pSeries
 Modules linked in:
 CPU: 0 UID: 0 PID: 27 Comm: kworker/u4:1 Not tainted 6.12.0-rc5-08184-gd1b0879097de #1
 Hardware name: IBM pSeries (emulated by qemu) POWER10 (architected) 0x801200 0xf000006 of:SLOF,HEAD pSeries
 Workqueue: async async_run_entry_fn
 NIP:  c0000000009867d0 LR: c0000000009867cc CTR: c000000000986780
 REGS: c000000004a17510 TRAP: 0300   Not tainted  (6.12.0-rc5-08184-gd1b0879097de)
 MSR:  8000000002009033 <SF,VEC,EE,ME,IR,DR,RI,LE>  CR: 84088884  XER: 00000000
 CFAR: c000000000985c94 DAR: 0000000000000018 DSISR: 02080000 IRQMASK: 0 
 GPR00: c0000000009867cc c000000004a177b0 c0000000016ae600 c000000004353748 
 GPR04: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 
 GPR08: 000000007d629000 0000000000000003 0000000000000000 0000000000004000 
 GPR12: c000000000986780 c000000002a7b000 c00000000018d168 c0000000041f3d80 
 GPR16: 0000000000000000 0000000000000000 c000000003855800 c00000000427b300 
 GPR20: fffffffffffffef7 c000000004ba2c20 0000000000000001 0000000000000000 
 GPR24: 0000000000000041 0001024100010041 c000000002779f18 c00000000435ef40 
 GPR28: 0000000000000000 c000000004ba6650 0000000000000010 c00000000435ef00 
 NIP [c0000000009867d0] selinux_file_open+0x50/0x140
 LR [c0000000009867cc] selinux_file_open+0x4c/0x140
 Call Trace:
 [c000000004a177b0] [c0000000009867cc] selinux_file_open+0x4c/0x140 (unreliable)
 [c000000004a17810] [c00000000096ab04] security_file_open+0xa4/0x1b0
 [c000000004a17840] [c00000000059ff94] do_dentry_open+0x174/0x5d0
 [c000000004a17890] [c0000000005a28c4] vfs_open+0x44/0x140
 [c000000004a178c0] [c0000000005c5af8] path_openat+0xb08/0x1490
 [c000000004a179a0] [c0000000005c6548] do_filp_open+0xc8/0x1a0
 [c000000004a17ad0] [c0000000005a0880] filp_open+0x130/0x1f0
 [c000000004a17b30] [c000000002007c2c] do_name+0x110/0x360
 [c000000004a17bc0] [c000000002006d1c] write_buffer+0x60/0x8c
 [c000000004a17bf0] [c000000002006db0] flush_buffer+0x68/0xf4
 [c000000004a17c40] [c00000000207f860] gunzip+0x344/0x454
 [c000000004a17cc0] [c000000002007924] unpack_to_rootfs+0x204/0x380
 [c000000004a17d60] [c000000002008124] do_populate_rootfs+0xbc/0x2b8
 [c000000004a17df0] [c0000000001973e8] async_run_entry_fn+0x58/0x170
 [c000000004a17e40] [c0000000001806f4] process_one_work+0x1d4/0x4d0
 [c000000004a17ef0] [c00000000018199c] worker_thread+0x3ec/0x5b0
 [c000000004a17f90] [c00000000018d298] kthread+0x138/0x140
 [c000000004a17fe0] [c00000000000ded8] start_kernel_thread+0x14/0x18
 Code: 7c7f1b78 f8010010 f821ffa1 e929b53e ebc30080 e8630028 e94d0478 f9410048 39400000 7fde4a14 4bfff431 8123001c <913e0008> 4bff3245 60000000 907e000c 
 ---[ end trace 0000000000000000 ]---
 pstore: backend (nvram) writing error (-1)

Caused by commit

  0eccf222d798 ("fs: port files to file_ref")

I bisected it to this commit, the commit before boots OK.

I have reverted that commit for today.

The qemu command line is:

qemu-system-ppc64 -M pseries,cap-hpt-max-page-size=4k,accel=kvm  -m 2G -vga none -nographic -enable-kvm -kernel $vmlinux -initrd $initrd

but 

qemu-system-ppc64 -M pseries -m 2G -vga none -nographic -kernel $vmlinux -initrd $initrd

fails as well.
-- 
Cheers,
Stephen Rothwell