NFS: Use common error handling code in nfs_alloc_server()

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 <elfring@users.sourceforge.net>
Signed-off-by: Anna Schumaker <anna.schumaker@hammerspace.com>
This commit is contained in:
Markus Elfring 2026-06-14 10:06:11 +02:00 committed by Anna Schumaker
parent d189f22430
commit 284ea3fb4f

View File

@ -1049,10 +1049,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);
@ -1075,8 +1073,7 @@ struct nfs_server *nfs_alloc_server(void)
server->io_stats = nfs_alloc_iostats();
if (!server->io_stats) {
ida_free(&s_sysfs_ids, server->s_sysfs_id);
kfree(server);
return NULL;
goto free_server;
}
server->change_attr_type = NFS4_CHANGE_TYPE_IS_UNDEFINED;
@ -1090,6 +1087,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);