Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4da66b75 authored by Atul Gupta's avatar Atul Gupta Committed by Herbert Xu
Browse files

crypto: chelsio - avoid using sa_entry imm



use is_eth_imm to determine immediate data than use sa_entry
field which is common for tunnel and not per skb.

Signed-off-by: default avatarAtul Gupta <atul.gupta@chelsio.com>
Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
parent 2b5ac174
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -183,7 +183,7 @@ struct chcr_ipsec_aadiv {
struct ipsec_sa_entry {
	int hmac_ctrl;
	u16 esn;
	u16 imm;
	u16 resv;
	unsigned int enckey_len;
	unsigned int kctx_len;
	unsigned int authsize;
+4 −6
Original line number Diff line number Diff line
@@ -415,12 +415,12 @@ inline void *copy_esn_pktxt(struct sk_buff *skb,
	iv = skb_transport_header(skb) + sizeof(struct ip_esp_hdr);
	memcpy(aadiv->iv, iv, 8);

	if (sa_entry->imm) {
	if (is_eth_imm(skb, sa_entry)) {
		sc_imm = (struct ulptx_idata *)(pos +
			  (DIV_ROUND_UP(sizeof(struct chcr_ipsec_aadiv),
					sizeof(__be64)) << 3));
		sc_imm->cmd_more = FILL_CMD_MORE(!sa_entry->imm);
		sc_imm->len = cpu_to_be32(sa_entry->imm);
		sc_imm->cmd_more = FILL_CMD_MORE(0);
		sc_imm->len = cpu_to_be32(skb->len);
	}
	pos += len;
	return pos;
@@ -548,10 +548,8 @@ inline void *chcr_crypto_wreq(struct sk_buff *skb,
	if (sa_entry->esn)
		ivdrop = 1;

	if (is_eth_imm(skb, sa_entry)) {
	if (is_eth_imm(skb, sa_entry))
		immdatalen = skb->len;
		sa_entry->imm = immdatalen;
	}

	if (sa_entry->esn)
		esnlen = sizeof(struct chcr_ipsec_aadiv);