fs: dlm: move free writequeue into con free
authorAlexander Aring <aahringo@redhat.com>
Thu, 27 Aug 2020 19:02:52 +0000 (15:02 -0400)
committerDavid Teigland <teigland@redhat.com>
Thu, 27 Aug 2020 20:59:09 +0000 (15:59 -0500)
This patch just move the free of struct connection member writequeue
into the functionality when struct connection will be freed instead of
doing two iterations.

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

index d0ece25..04afc71 100644 (file)
@@ -1550,13 +1550,6 @@ static void process_send_sockets(struct work_struct *work)
                send_to_sock(con);
 }
 
-
-/* Discard all entries on the write queues */
-static void clean_writequeues(void)
-{
-       foreach_conn(clean_one_writequeue);
-}
-
 static void work_stop(void)
 {
        if (recv_workqueue)
@@ -1620,6 +1613,7 @@ static void free_conn(struct connection *con)
        spin_lock(&connections_lock);
        hlist_del_rcu(&con->list);
        spin_unlock(&connections_lock);
+       clean_one_writequeue(con);
        kfree_rcu(con, rcu);
 }
 
@@ -1668,7 +1662,6 @@ void dlm_lowcomms_stop(void)
 
        foreach_conn(shutdown_conn);
        work_flush();
-       clean_writequeues();
        foreach_conn(free_conn);
        work_stop();
        deinit_local();