Details
-
Bug
-
Resolution: Fixed
-
Minor
-
None
-
None
-
3
-
9223372036854775807
Description
On Ubuntu 22.04, when some keyring resources are getting cleared, a warning message is displayed instead, and the clearing is not successful, leading into a misbehaving filesystem and regular stack traces being printed in logs.
WARNING: CPU: 44 PID: 305468 at security/keys/permission.c:35 key_task_permission+0xa5/0x150
CPU: 44 PID: 305468 Comm: kworker/u448:1 Tainted: P W OE 5.15.0-69-generic #76-Ubuntu
Workqueue: ptlrpc_pinger ptlrpc_pinger_main [ptlrpc]
RIP: 0010:key_task_permission+0xa5/0x150
Call Trace:
<TASK>
lookup_user_key+0xf4/0x700
? key_validate+0x50/0x50
request_key_unlink+0x230/0x330 [ptlrpc_gss]
gss_sec_lookup_ctx_kr+0xa0c/0xd0c [ptlrpc_gss]
get_my_ctx+0x5f/0x140 [ptlrpc]
sptlrpc_req_get_ctx+0x15a/0x280 [ptlrpc]
ptlrpc_request_bufs_pack+0x283/0x6a0 [ptlrpc]
ptlrpc_request_alloc_pack+0x3a/0x70 [ptlrpc]
ptlrpc_pinger_main+0x893/0xab0 [ptlrpc]
process_one_work+0x228/0x3d0
worker_thread+0x53/0x420
? process_one_work+0x3d0/0x3d0
kthread+0x127/0x150
? set_kthread_struct+0x50/0x50
ret_from_fork+0x1f/0x30
</TASK>
This is because in Linux 5.8, in commit 8c0637e950d68933a67f7438f779d79b049b5e5c, lookup_user_key() API was changed and requires different parameters.