-----Original Message----- From: Dave Watson [mailto:davejwatson@xxxxxx] Sent: Thursday, February 15, 2018 9:22 PM To: Atul Gupta <atul.gupta@xxxxxxxxxxx> Cc: davem@xxxxxxxxxxxxx; herbert@xxxxxxxxxxxxxxxxxxx; sd@xxxxxxxxxxxxxxx; linux-crypto@xxxxxxxxxxxxxxx; netdev@xxxxxxxxxxxxxxx; Ganesh GR <ganeshgr@xxxxxxxxxxx> Subject: Re: [Crypto v5 03/12] support for inline tls On 02/15/18 12:24 PM, Atul Gupta wrote: > @@ -401,6 +430,15 @@ static int do_tls_setsockopt_tx(struct sock *sk, char __user *optval, > goto out; > } > > + rc = get_tls_offload_dev(sk); > + if (rc) { > + goto out; > + } else { > + /* Retain HW unhash for cleanup and move to SW Tx */ > + sk->sk_prot[TLS_BASE_TX].unhash = > + sk->sk_prot[TLS_FULL_HW].unhash; Isn't sk->sk_prot a pointer to a global shared struct here still? It looks like this would actually modify the global struct, and not just for this sk. Yes, its global. It require add on check to modify only when tls_offload dev list has an entry. I will revisit and correct. Can you look through other changes please? Thanks Atul