fs: dlm: use free_con to free connection
authorAlexander Aring <aahringo@redhat.com>
Thu, 27 Aug 2020 19:02:54 +0000 (15:02 -0400)
committerDavid Teigland <teigland@redhat.com>
Thu, 27 Aug 2020 20:59:09 +0000 (15:59 -0500)
This patch use free_con() functionality to free the listen connection if
listen fails. It also fixes an issue that a freed resource is still part
of the connection_hash as hlist_del() is not called in this case. The
only difference is that free_con() handles othercon as well, but this is
never been set for the listen connection.

Signed-off-by: Alexander Aring <aahringo@redhat.com>
Signed-off-by: David Teigland <teigland@redhat.com>
fs/dlm/lowcomms.c

index 794216eb728cc2ba0e9251f9f5f02230852b5961..1bf1808bfa6b04f63f92a5facfa812c0e51bbcc5 100644 (file)
@@ -1704,10 +1704,8 @@ int dlm_lowcomms_start(void)
 fail_unlisten:
        dlm_allow_conn = 0;
        con = nodeid2con(0,0);
-       if (con) {
-               close_connection(con, false, true, true);
-               kfree_rcu(con, rcu);
-       }
+       if (con)
+               free_conn(con);
 fail:
        return error;
 }