Commit 49673739 authored by Jakub Kicinski's avatar Jakub Kicinski Committed by David S. Miller

net/tls: simplify seq calculation in handle_device_resync()

We subtract "TLS_HEADER_SIZE - 1" from req_seq, then if they
match we add the same constant to seq.  Just add it to seq,
and we don't have to touch req_seq.
Signed-off-by: default avatarJakub Kicinski <jakub.kicinski@netronome.com>
Reviewed-by: default avatarDirk van der Merwe <dirk.vandermerwe@netronome.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 46088059
...@@ -576,14 +576,13 @@ void handle_device_resync(struct sock *sk, u32 seq, u64 rcd_sn) ...@@ -576,14 +576,13 @@ void handle_device_resync(struct sock *sk, u32 seq, u64 rcd_sn)
rx_ctx = tls_offload_ctx_rx(tls_ctx); rx_ctx = tls_offload_ctx_rx(tls_ctx);
resync_req = atomic64_read(&rx_ctx->resync_req); resync_req = atomic64_read(&rx_ctx->resync_req);
req_seq = (resync_req >> 32) - ((u32)TLS_HEADER_SIZE - 1); req_seq = resync_req >> 32;
seq += TLS_HEADER_SIZE - 1;
is_req_pending = resync_req; is_req_pending = resync_req;
if (unlikely(is_req_pending) && req_seq == seq && if (unlikely(is_req_pending) && req_seq == seq &&
atomic64_try_cmpxchg(&rx_ctx->resync_req, &resync_req, 0)) { atomic64_try_cmpxchg(&rx_ctx->resync_req, &resync_req, 0))
seq += TLS_HEADER_SIZE - 1;
tls_device_resync_rx(tls_ctx, sk, seq, rcd_sn); tls_device_resync_rx(tls_ctx, sk, seq, rcd_sn);
}
} }
static int tls_device_reencrypt(struct sock *sk, struct sk_buff *skb) static int tls_device_reencrypt(struct sock *sk, struct sk_buff *skb)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment