before_eq() and friends should be used to compare serial numbers (when not
checking for (non)equality) rather than casting to int, subtracting and
checking the result.

Signed-off-by: David Howells <dhowe...@redhat.com>
---

 net/rxrpc/input.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/net/rxrpc/input.c b/net/rxrpc/input.c
index cbb5d53f09d7..06027b6d9c19 100644
--- a/net/rxrpc/input.c
+++ b/net/rxrpc/input.c
@@ -578,7 +578,7 @@ static void rxrpc_input_ack(struct rxrpc_call *call, struct 
sk_buff *skb,
        }
 
        /* Discard any out-of-order or duplicate ACKs. */
-       if ((int)sp->hdr.serial - (int)call->acks_latest <= 0) {
+       if (before_eq(sp->hdr.serial, call->acks_latest)) {
                _debug("discard ACK %d <= %d",
                       sp->hdr.serial, call->acks_latest);
                return;

Reply via email to