rxrpc: De-atomic call->ackr_window and call->ackr_nr_unacked
[platform/kernel/linux-rpi.git] / net / rxrpc / input.c
index 367927a..7e65c7d 100644 (file)
@@ -338,7 +338,8 @@ static void rxrpc_end_rx_phase(struct rxrpc_call *call, rxrpc_serial_t serial)
 static void rxrpc_input_update_ack_window(struct rxrpc_call *call,
                                          rxrpc_seq_t window, rxrpc_seq_t wtop)
 {
-       atomic64_set_release(&call->ackr_window, ((u64)wtop) << 32 | window);
+       call->ackr_window = window;
+       call->ackr_wtop = wtop;
 }
 
 /*
@@ -367,9 +368,8 @@ static void rxrpc_input_data_one(struct rxrpc_call *call, struct sk_buff *skb,
        struct rxrpc_skb_priv *sp = rxrpc_skb(skb);
        struct sk_buff *oos;
        rxrpc_serial_t serial = sp->hdr.serial;
-       u64 win = atomic64_read(&call->ackr_window);
-       rxrpc_seq_t window = lower_32_bits(win);
-       rxrpc_seq_t wtop = upper_32_bits(win);
+       rxrpc_seq_t window = call->ackr_window;
+       rxrpc_seq_t wtop = call->ackr_wtop;
        rxrpc_seq_t wlimit = window + call->rx_winsize - 1;
        rxrpc_seq_t seq = sp->hdr.seq;
        bool last = sp->hdr.flags & RXRPC_LAST_PACKET;
@@ -419,7 +419,7 @@ static void rxrpc_input_data_one(struct rxrpc_call *call, struct sk_buff *skb,
                else if (!skb_queue_empty(&call->rx_oos_queue))
                        ack_reason = RXRPC_ACK_DELAY;
                else
-                       atomic_inc_return(&call->ackr_nr_unacked);
+                       call->ackr_nr_unacked++;
 
                window++;
                if (after(window, wtop))
@@ -567,8 +567,8 @@ static void rxrpc_input_data(struct rxrpc_call *call, struct sk_buff *skb)
        rxrpc_serial_t serial = sp->hdr.serial;
        rxrpc_seq_t seq0 = sp->hdr.seq;
 
-       _enter("{%llx,%x},{%u,%x}",
-              atomic64_read(&call->ackr_window), call->rx_highest_seq,
+       _enter("{%x,%x,%x},{%u,%x}",
+              call->ackr_window, call->ackr_wtop, call->rx_highest_seq,
               skb->len, seq0);
 
        if (__rxrpc_call_is_complete(call))