fs: dlm: handle rcom in else if branch
authorAlexander Aring <aahringo@redhat.com>
Mon, 15 Aug 2022 19:43:21 +0000 (15:43 -0400)
committerDavid Teigland <teigland@redhat.com>
Tue, 23 Aug 2022 19:53:59 +0000 (14:53 -0500)
Currently we handle in dlm_receive_buffer() everything else than a
DLM_MSG type as DLM_RCOM message. Although a different message than
DLM_MSG should be a DLM_RCOM we should explicit check on DLM_RCOM and
drop a log_error() if we see something unexpected.

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

index da95ba3c295ee03d75a11e47b57c46b84dabbbe3..c41aa8ab323090494edbee5b2f5ded68f60c0aa2 100644 (file)
@@ -5108,8 +5108,11 @@ void dlm_receive_buffer(union dlm_packet *p, int nodeid)
        down_read(&ls->ls_recv_active);
        if (hd->h_cmd == DLM_MSG)
                dlm_receive_message(ls, &p->message, nodeid);
-       else
+       else if (hd->h_cmd == DLM_RCOM)
                dlm_receive_rcom(ls, &p->rcom, nodeid);
+       else
+               log_error(ls, "invalid h_cmd %d from %d lockspace %x",
+                         hd->h_cmd, nodeid, le32_to_cpu(hd->u.h_lockspace));
        up_read(&ls->ls_recv_active);
 
        dlm_put_lockspace(ls);