panic if try to readdir /proc before joining cluster
Brought to you by:
brucewalker,
rogertsang
Doing a simple "echo /proc/*" panics the OpenSSI kernel if done from the initrd. (for debugging for example).
The call trace is:
...
proc_pid_readir
ssig_get_tgid_list
clmns_get_nsc_nodelist
error_code
...
die.
I'd guess we're hitting the SSI_ASSERT(tnlist) in clms_get_nsc_nodelist around ./ci/kernel/cluster/clms/clms_mgmt.c:2425
Maybe not terribly important, but irritating.
Logged In: YES
user_id=166336
Originator: YES
Actually it's blowing up because the clms locks &c haven't been set up yet:
kernel BUG at include/asm/spinlock.h:136!
invalid operand: 0000 [#1]
[...]
Stack traceback for pid 2
0xc13df670 2 0 1 0 R 0xc13df840 *sh
EBP EIP Function (args)
0xc13b7e14 0xc0473c29 _spin_lock+0x39 (0x0, 0xc13b7e3c, 0xc020089d, 0x4, 0x8061b2f)
0xc020089d clms_get_nsc_nodelist+0x2d (0x190, 0xc0188215, 0x8061b2f, 0xc04982a6, 0x4)
0xc13b7e90 0xc024fa28 ssi_get_tgid_list+0x58 (0xc13ab7e0, 0x1, 0xc13b7ed8, 0x100, 0x0)
0xc13b7f34 0xc01af67f proc_pid_readdir+0x6f (0xc13ab7e0, 0xc13b7f98, 0xc0188070, 0xfffffffe, 0xc13bdd50)
0xc13b7f54 0xc01ac344 proc_root_readdir+0x64 (0xc13ab7e0, 0xc13b7f98, 0xc0188070, 0xc13bddc8, 0xc13b7000)
0xc13b7f78 0xc0187a2c vfs_readdir+0xbc (0xc13ab7e0, 0xc0188070, 0xc13b7f98, 0xc13ab7e0, 0x24)
0xc13b7fb4 0xc01883f9 sys_getdents64+0x79
0xc0106a41 syscall_call+0x7
Should maybe be pretending we're in localview mode before cluster code is initialised.
Related
Bugs:
#1Logged In: YES
user_id=1246761
Originator: NO
In other words use /bin/localview or delay whatever you are doing after pre-root cluster initialization.