fs: dlm: set is othercon flag
authorAlexander Aring <aahringo@redhat.com>
Fri, 21 May 2021 19:08:36 +0000 (15:08 -0400)
committerDavid Teigland <teigland@redhat.com>
Tue, 25 May 2021 14:22:20 +0000 (09:22 -0500)
There is a is othercon flag which is never used, this patch will set it
and printout a warning if the othercon ever sends a dlm message which
should never be the case.

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

index 7c7a313..4944aef 100644 (file)
@@ -938,6 +938,7 @@ static int accept_from_sock(struct listen_connection *con)
                        }
 
                        lockdep_set_subclass(&othercon->sock_mutex, 1);
+                       set_bit(CF_IS_OTHERCON, &othercon->flags);
                        newcon->othercon = othercon;
                } else {
                        /* close other sock con if we have something new */
@@ -1601,6 +1602,8 @@ static void process_send_sockets(struct work_struct *work)
 {
        struct connection *con = container_of(work, struct connection, swork);
 
+       WARN_ON(test_bit(CF_IS_OTHERCON, &con->flags));
+
        clear_bit(CF_WRITE_PENDING, &con->flags);
        if (con->sock == NULL) /* not mutex protected so check it inside too */
                con->connect_action(con);