From: Shaun Tancheff Date: Thu, 3 Apr 2025 04:13:34 +0000 (+0700) Subject: LU-18888 o2ib: prepare_kernel_cred with &init_task X-Git-Tag: 2.16.55~114 X-Git-Url: https://git.whamcloud.com/?a=commitdiff_plain;h=498c1c10d4ae05f9d46b19331c41d339c0e7dab0;p=fs%2Flustre-release.git LU-18888 o2ib: prepare_kernel_cred with &init_task Linux v6.1-rc1-12-g5a17f040fa33 cred: Do not default to init_cred in prepare_kernel_cred() This breaks kiblnd_resolve_addr() by interpreting the NULL as an -ENOMEM instead of an invalid task being used. The new pattern is to pass &init_task to get init_cred instead of NULL. This needs no special handling for older kernels. HPE-bug-id: LUS-12806 Fixes: 30b356a28b ("LU-14296 lnet: use an unbound cred in kiblnd_resolve_addr()") Signed-off-by: Shaun Tancheff Change-Id: I31caa7f5adb23265985fba6db7b28d48975e7e9d Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58654 Tested-by: jenkins Tested-by: Maloo Reviewed-by: Alexander Zarochentsev Reviewed-by: Timothy Day Reviewed-by: Oleg Drokin --- diff --git a/lnet/klnds/o2iblnd/o2iblnd_cb.c b/lnet/klnds/o2iblnd/o2iblnd_cb.c index 14fe369..09c5e70 100644 --- a/lnet/klnds/o2iblnd/o2iblnd_cb.c +++ b/lnet/klnds/o2iblnd/o2iblnd_cb.c @@ -1425,7 +1425,7 @@ kiblnd_resolve_addr(struct rdma_cm_id *cmid, int rc; if (!capable(CAP_NET_BIND_SERVICE)) { - new_creds = prepare_kernel_cred(NULL); + new_creds = prepare_kernel_cred(&init_task); if (!new_creds) return -ENOMEM;