rpc_pipefs: Replace one label in bl_resolve_deviceid()
authorMarkus Elfring <elfring@users.sourceforge.net>
Fri, 29 Dec 2023 12:18:56 +0000 (13:18 +0100)
committerAnna Schumaker <Anna.Schumaker@Netapp.com>
Thu, 4 Jan 2024 15:47:56 +0000 (10:47 -0500)
The kfree() function was called in one case by
the bl_resolve_deviceid() function during error handling
even if the passed data structure member contained a null pointer.
This issue was detected by using the Coccinelle software.

Thus use an other label.

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
Reviewed-by: Benjamin Coddington <bcodding@redhat.com>
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
fs/nfs/blocklayout/rpc_pipefs.c

index 6c977288cc2881f29c8c1bcc03d5339d60e60fce..d8d50a88de04f2c7369fbaa1a6371f202fcebf62 100644 (file)
@@ -75,7 +75,7 @@ bl_resolve_deviceid(struct nfs_server *server, struct pnfs_block_volume *b,
        msg->len = sizeof(*bl_msg) + b->simple.len;
        msg->data = kzalloc(msg->len, gfp_mask);
        if (!msg->data)
-               goto out_free_data;
+               goto out_unlock;
 
        bl_msg = msg->data;
        bl_msg->type = BL_DEVICE_MOUNT;