}
 
 /**
- * queue_overloaded - test if queue overload condition exists
+ * rx_queue_full - determine if receive queue can accept another message
+ * @msg: message to be added to queue
  * @queue_size: current size of queue
  * @base: nominal maximum size of queue
- * @msg: message to be added to queue
  *
- * Returns 1 if queue is currently overloaded, 0 otherwise
+ * Returns 1 if queue is unable to accept message, 0 otherwise
  */
 
-static int queue_overloaded(u32 queue_size, u32 base, struct tipc_msg *msg)
+static int rx_queue_full(struct tipc_msg *msg, u32 queue_size, u32 base)
 {
        u32 threshold;
        u32 imp = msg_importance(msg);
        if (msg_connected(msg))
                threshold *= 4;
 
-       return (queue_size > threshold);
+       return (queue_size >= threshold);
 }
 
 /**
 
        /* Reject message if there isn't room to queue it */
 
-       if (unlikely((u32)atomic_read(&tipc_queue_size) >
-                    OVERLOAD_LIMIT_BASE)) {
-               if (queue_overloaded(atomic_read(&tipc_queue_size),
-                                    OVERLOAD_LIMIT_BASE, msg))
+       recv_q_len = (u32)atomic_read(&tipc_queue_size);
+       if (unlikely(recv_q_len >= OVERLOAD_LIMIT_BASE)) {
+               if (rx_queue_full(msg, recv_q_len, OVERLOAD_LIMIT_BASE))
                        return TIPC_ERR_OVERLOAD;
        }
        recv_q_len = skb_queue_len(&tsock->sk.sk_receive_queue);
-       if (unlikely(recv_q_len > (OVERLOAD_LIMIT_BASE / 2))) {
-               if (queue_overloaded(recv_q_len,
-                                    OVERLOAD_LIMIT_BASE / 2, msg))
+       if (unlikely(recv_q_len >= (OVERLOAD_LIMIT_BASE / 2))) {
+               if (rx_queue_full(msg, recv_q_len, OVERLOAD_LIMIT_BASE / 2))
                        return TIPC_ERR_OVERLOAD;
        }