[PATCH] NFS: Use common error handling code in nfs_alloc_server()
Markus Elfring <[email protected]> Wed, 10 Jun 2026 18:35:08 +0200
| Newsgroups | org.kernel.vger.kernel-janitors,org.kernel.vger.linux-kernel,org.kernel.vger.linux-nfs |
|---|---|
| Message-ID | <[email protected]> |
From: Markus Elfring <[email protected]> Date: Wed, 10 Jun 2026 18:28:17 +0200 Use an additional label so that a bit of exception handling can be better reused at the end of this function implementation. This issue was detected by using the Coccinelle software. Signed-off-by: Markus Elfring <[email protected]> --- fs/nfs/client.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/fs/nfs/client.c b/fs/nfs/client.c index 73b95318ba48..50482257667d 100644 --- a/fs/nfs/client.c +++ b/fs/nfs/client.c @@ -1063,10 +1063,8 @@ struct nfs_server *nfs_alloc_server(void) return NULL; server->s_sysfs_id = ida_alloc(&s_sysfs_ids, GFP_KERNEL); - if (server->s_sysfs_id < 0) { - kfree(server); - return NULL; - } + if (server->s_sysfs_id < 0) + goto free_server; server->client = server->client_acl = ERR_PTR(-EINVAL); @@ -1087,10 +1085,8 @@ struct nfs_server *nfs_alloc_server(void) atomic_long_set(&server->nr_active_delegations, 0); server->io_stats = nfs_alloc_iostats(); - if (!server->io_stats) { - kfree(server); - return NULL; - } + if (!server->io_stats) + goto free_server; server->change_attr_type = NFS4_CHANGE_TYPE_IS_UNDEFINED; @@ -1103,6 +1099,10 @@ struct nfs_server *nfs_alloc_server(void) rpc_init_wait_queue(&server->uoc_rpcwaitq, "NFS UOC"); return server; + +free_server: + kfree(server); + return NULL; } EXPORT_SYMBOL_GPL(nfs_alloc_server); -- 2.54.0