From: Adam Guerin <adam.gue...@intel.com>

Restrict size of field to what is required by the operation.

This issue was detected by smatch:

    drivers/crypto/qat/qat_common/qat_asym_algs.c:328 qat_dh_compute_value() 
error: dma_map_single_attrs() '&qat_req->in.dh.in.b' too small (8 vs 64)

Signed-off-by: Adam Guerin <adam.gue...@intel.com>
Reviewed-by: Giovanni Cabiddu <giovanni.cabi...@intel.com>
Signed-off-by: Giovanni Cabiddu <giovanni.cabi...@intel.com>
---
 drivers/crypto/qat/qat_common/qat_asym_algs.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/crypto/qat/qat_common/qat_asym_algs.c 
b/drivers/crypto/qat/qat_common/qat_asym_algs.c
index 2c863d25327a..b0b78445418b 100644
--- a/drivers/crypto/qat/qat_common/qat_asym_algs.c
+++ b/drivers/crypto/qat/qat_common/qat_asym_algs.c
@@ -321,13 +321,13 @@ static int qat_dh_compute_value(struct kpp_request *req)
        qat_req->out.dh.out_tab[1] = 0;
        /* Mapping in.in.b or in.in_g2.xa is the same */
        qat_req->phy_in = dma_map_single(dev, &qat_req->in.dh.in.b,
-                                        sizeof(struct qat_dh_input_params),
+                                        sizeof(qat_req->in.dh.in.b),
                                         DMA_TO_DEVICE);
        if (unlikely(dma_mapping_error(dev, qat_req->phy_in)))
                goto unmap_dst;
 
        qat_req->phy_out = dma_map_single(dev, &qat_req->out.dh.r,
-                                         sizeof(struct qat_dh_output_params),
+                                         sizeof(qat_req->out.dh.r),
                                          DMA_TO_DEVICE);
        if (unlikely(dma_mapping_error(dev, qat_req->phy_out)))
                goto unmap_in_params;
@@ -716,13 +716,13 @@ static int qat_rsa_enc(struct akcipher_request *req)
        qat_req->in.rsa.in_tab[3] = 0;
        qat_req->out.rsa.out_tab[1] = 0;
        qat_req->phy_in = dma_map_single(dev, &qat_req->in.rsa.enc.m,
-                                        sizeof(struct qat_rsa_input_params),
+                                        sizeof(qat_req->in.rsa.enc.m),
                                         DMA_TO_DEVICE);
        if (unlikely(dma_mapping_error(dev, qat_req->phy_in)))
                goto unmap_dst;
 
        qat_req->phy_out = dma_map_single(dev, &qat_req->out.rsa.enc.c,
-                                         sizeof(struct qat_rsa_output_params),
+                                         sizeof(qat_req->out.rsa.enc.c),
                                          DMA_TO_DEVICE);
        if (unlikely(dma_mapping_error(dev, qat_req->phy_out)))
                goto unmap_in_params;
@@ -864,13 +864,13 @@ static int qat_rsa_dec(struct akcipher_request *req)
                qat_req->in.rsa.in_tab[3] = 0;
        qat_req->out.rsa.out_tab[1] = 0;
        qat_req->phy_in = dma_map_single(dev, &qat_req->in.rsa.dec.c,
-                                        sizeof(struct qat_rsa_input_params),
+                                        sizeof(qat_req->in.rsa.dec.c),
                                         DMA_TO_DEVICE);
        if (unlikely(dma_mapping_error(dev, qat_req->phy_in)))
                goto unmap_dst;
 
        qat_req->phy_out = dma_map_single(dev, &qat_req->out.rsa.dec.m,
-                                         sizeof(struct qat_rsa_output_params),
+                                         sizeof(qat_req->out.rsa.dec.m),
                                          DMA_TO_DEVICE);
        if (unlikely(dma_mapping_error(dev, qat_req->phy_out)))
                goto unmap_in_params;
-- 
2.29.2

Reply via email to