To not get the console spammed about WARN_ON() of invalid states in the
dlm midcomms hot path handling we switch to WARN_ON_ONCE() to get it
only once that there might be an issue with the midcomms state handling.

Signed-off-by: Alexander Aring <aahri...@redhat.com>
---
 fs/dlm/midcomms.c | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/fs/dlm/midcomms.c b/fs/dlm/midcomms.c
index 3a4e20d6cd2d..32194a750fe1 100644
--- a/fs/dlm/midcomms.c
+++ b/fs/dlm/midcomms.c
@@ -469,7 +469,7 @@ static void dlm_pas_fin_ack_rcv(struct midcomms_node *node)
                spin_unlock(&node->state_lock);
                log_print("%s: unexpected state: %d\n",
                          __func__, node->state);
-               WARN_ON(1);
+               WARN_ON_ONCE(1);
                return;
        }
        spin_unlock(&node->state_lock);
@@ -540,7 +540,7 @@ static void dlm_midcomms_receive_buffer(union dlm_packet *p,
                                spin_unlock(&node->state_lock);
                                log_print("%s: unexpected state: %d\n",
                                          __func__, node->state);
-                               WARN_ON(1);
+                               WARN_ON_ONCE(1);
                                return;
                        }
                        spin_unlock(&node->state_lock);
@@ -548,7 +548,7 @@ static void dlm_midcomms_receive_buffer(union dlm_packet *p,
                        set_bit(DLM_NODE_FLAG_STOP_RX, &node->flags);
                        break;
                default:
-                       WARN_ON(test_bit(DLM_NODE_FLAG_STOP_RX, &node->flags));
+                       WARN_ON_ONCE(test_bit(DLM_NODE_FLAG_STOP_RX, 
&node->flags));
                        dlm_receive_buffer_3_2_trace(seq, p);
                        dlm_receive_buffer(p, node->nodeid);
                        set_bit(DLM_NODE_ULP_DELIVERED, &node->flags);
@@ -770,7 +770,7 @@ static void dlm_midcomms_receive_buffer_3_2(union 
dlm_packet *p, int nodeid)
                        goto out;
                }
 
-               WARN_ON(test_bit(DLM_NODE_FLAG_STOP_RX, &node->flags));
+               WARN_ON_ONCE(test_bit(DLM_NODE_FLAG_STOP_RX, &node->flags));
                dlm_receive_buffer(p, nodeid);
                break;
        case DLM_OPTS:
@@ -1095,7 +1095,7 @@ struct dlm_mhandle *dlm_midcomms_get_mhandle(int nodeid, 
int len,
        }
 
        /* this is a bug, however we going on and hope it will be resolved */
-       WARN_ON(test_bit(DLM_NODE_FLAG_STOP_TX, &node->flags));
+       WARN_ON_ONCE(test_bit(DLM_NODE_FLAG_STOP_TX, &node->flags));
 
        mh = dlm_allocate_mhandle(allocation);
        if (!mh)
@@ -1127,7 +1127,7 @@ struct dlm_mhandle *dlm_midcomms_get_mhandle(int nodeid, 
int len,
                break;
        default:
                dlm_free_mhandle(mh);
-               WARN_ON(1);
+               WARN_ON_ONCE(1);
                goto err;
        }
 
@@ -1196,7 +1196,7 @@ void dlm_midcomms_commit_mhandle(struct dlm_mhandle *mh,
                break;
        default:
                srcu_read_unlock(&nodes_srcu, mh->idx);
-               WARN_ON(1);
+               WARN_ON_ONCE(1);
                break;
        }
 }
@@ -1238,7 +1238,7 @@ static void dlm_act_fin_ack_rcv(struct midcomms_node 
*node)
                spin_unlock(&node->state_lock);
                log_print("%s: unexpected state: %d\n",
                          __func__, node->state);
-               WARN_ON(1);
+               WARN_ON_ONCE(1);
                return;
        }
        spin_unlock(&node->state_lock);
@@ -1356,7 +1356,7 @@ static void midcomms_node_release(struct rcu_head *rcu)
 {
        struct midcomms_node *node = container_of(rcu, struct midcomms_node, 
rcu);
 
-       WARN_ON(atomic_read(&node->send_queue_cnt));
+       WARN_ON_ONCE(atomic_read(&node->send_queue_cnt));
        kfree(node);
 }
 
-- 
2.31.1

Reply via email to