]> www.infradead.org Git - users/hch/misc.git/commitdiff
NFSD: unregister filesystem in case genl_register_family() fails
authorManinder Singh <maninder1.s@samsung.com>
Thu, 6 Mar 2025 09:20:06 +0000 (14:50 +0530)
committerChuck Lever <chuck.lever@oracle.com>
Sun, 11 May 2025 23:48:22 +0000 (19:48 -0400)
With rpc_status netlink support, unregister of register_filesystem()
was missed in case of genl_register_family() fails.

Correcting it by making new label.

Fixes: bd9d6a3efa97 ("NFSD: add rpc_status netlink support")
Cc: stable@vger.kernel.org
Signed-off-by: Maninder Singh <maninder1.s@samsung.com>
Reviewed-by: Jeff Layton <jlayton@kernel.org>
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
fs/nfsd/nfsctl.c

index ac265d6fde35df4e02b955050f5b0ef22e6e519c..d773481bcf1025681402cdbaa78837f073e3eb6f 100644 (file)
@@ -2305,7 +2305,7 @@ static int __init init_nfsd(void)
                goto out_free_cld;
        retval = register_filesystem(&nfsd_fs_type);
        if (retval)
-               goto out_free_all;
+               goto out_free_nfsd4;
        retval = genl_register_family(&nfsd_nl_family);
        if (retval)
                goto out_free_all;
@@ -2313,6 +2313,8 @@ static int __init init_nfsd(void)
 
        return 0;
 out_free_all:
+       unregister_filesystem(&nfsd_fs_type);
+out_free_nfsd4:
        nfsd4_destroy_laundry_wq();
 out_free_cld:
        unregister_cld_notifier();