sched.c (ff36e78fdb251b9fa65028554689806961e011eb) | sched.c (7eac52648a4c24ad23a05f62db97867c92a5747b) |
---|---|
1// SPDX-License-Identifier: GPL-2.0-only 2/* 3 * linux/net/sunrpc/sched.c 4 * 5 * Scheduling for synchronous and asynchronous RPC requests. 6 * 7 * Copyright (C) 1996 Olaf Kirch, <okir@monad.swb.de> 8 * --- 1148 unchanged lines hidden (view full) --- 1157 rpc_free_task(container_of(work, struct rpc_task, u.tk_work)); 1158 memalloc_nofs_restore(pflags); 1159} 1160 1161static void rpc_release_resources_task(struct rpc_task *task) 1162{ 1163 xprt_release(task); 1164 if (task->tk_msg.rpc_cred) { | 1// SPDX-License-Identifier: GPL-2.0-only 2/* 3 * linux/net/sunrpc/sched.c 4 * 5 * Scheduling for synchronous and asynchronous RPC requests. 6 * 7 * Copyright (C) 1996 Olaf Kirch, <okir@monad.swb.de> 8 * --- 1148 unchanged lines hidden (view full) --- 1157 rpc_free_task(container_of(work, struct rpc_task, u.tk_work)); 1158 memalloc_nofs_restore(pflags); 1159} 1160 1161static void rpc_release_resources_task(struct rpc_task *task) 1162{ 1163 xprt_release(task); 1164 if (task->tk_msg.rpc_cred) { |
1165 put_cred(task->tk_msg.rpc_cred); | 1165 if (!(task->tk_flags & RPC_TASK_CRED_NOREF)) 1166 put_cred(task->tk_msg.rpc_cred); |
1166 task->tk_msg.rpc_cred = NULL; 1167 } 1168 rpc_task_release_client(task); 1169} 1170 1171static void rpc_final_put_task(struct rpc_task *task, 1172 struct workqueue_struct *q) 1173{ --- 153 unchanged lines hidden --- | 1167 task->tk_msg.rpc_cred = NULL; 1168 } 1169 rpc_task_release_client(task); 1170} 1171 1172static void rpc_final_put_task(struct rpc_task *task, 1173 struct workqueue_struct *q) 1174{ --- 153 unchanged lines hidden --- |