Commit a56772dc authored by David S. Miller's avatar David S. Miller
Browse files

Merge branch 'chelsio-crypto-fixes'



Ayush Sawal says:

====================
Fixing compilation warnings and errors

Patch 1: Fixes the warnings seen when compiling using sparse tool.

Patch 2: Fixes a cocci check error introduced after commit
567be3a5 ("crypto: chelsio -
Use multiple txq/rxq per tfm to process the requests").

V1->V2

patch1: Avoid type casting by using get_unaligned_be32() and
    	put_unaligned_be16/32() functions.

patch2: Modified subject of the patch.
====================

Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parents 76d7728d 055be686
Loading
Loading
Loading
Loading
+5 −6
Original line number Diff line number Diff line
@@ -256,7 +256,7 @@ static void get_aes_decrypt_key(unsigned char *dec_key,
		return;
	}
	for (i = 0; i < nk; i++)
		w_ring[i] = be32_to_cpu(*(u32 *)&key[4 * i]);
		w_ring[i] = get_unaligned_be32(&key[i * 4]);

	i = 0;
	temp = w_ring[nk - 1];
@@ -275,7 +275,7 @@ static void get_aes_decrypt_key(unsigned char *dec_key,
	}
	i--;
	for (k = 0, j = i % nk; k < nk; k++) {
		*((u32 *)dec_key + k) = htonl(w_ring[j]);
		put_unaligned_be32(w_ring[j], &dec_key[k * 4]);
		j--;
		if (j < 0)
			j += nk;
@@ -1464,6 +1464,7 @@ static int chcr_device_init(struct chcr_context *ctx)
	if (!ctx->dev) {
		u_ctx = assign_chcr_device();
		if (!u_ctx) {
			err = -ENXIO;
			pr_err("chcr device assignment fails\n");
			goto out;
		}
@@ -2926,8 +2927,7 @@ static int ccm_format_packet(struct aead_request *req,
		memcpy(ivptr, req->iv, 16);
	}
	if (assoclen)
		*((unsigned short *)(reqctx->scratch_pad + 16)) =
				htons(assoclen);
		put_unaligned_be16(assoclen, &reqctx->scratch_pad[16]);

	rc = generate_b0(req, ivptr, op_type);
	/* zero the ctr value */
@@ -3201,8 +3201,7 @@ static struct sk_buff *create_gcm_wr(struct aead_request *req,
	} else {
		memcpy(ivptr, req->iv, GCM_AES_IV_SIZE);
	}
	*((unsigned int *)(ivptr + 12)) = htonl(0x01);

	put_unaligned_be32(0x01, &ivptr[12]);
	ulptx = (struct ulptx_sgl *)(ivptr + 16);

	chcr_add_aead_dst_ent(req, phys_cpl, qid);
+1 −1
Original line number Diff line number Diff line
@@ -403,7 +403,7 @@ inline void *copy_esn_pktxt(struct sk_buff *skb,
	xo = xfrm_offload(skb);

	aadiv->spi = (esphdr->spi);
	seqlo = htonl(esphdr->seq_no);
	seqlo = ntohl(esphdr->seq_no);
	seqno = cpu_to_be64(seqlo + ((u64)xo->seq.hi << 32));
	memcpy(aadiv->seq_no, &seqno, 8);
	iv = skb_transport_header(skb) + sizeof(struct ip_esp_hdr);