Skip to content

Commit 4c147bc

Browse files
arndbherbertx
authored andcommitted
crypto: atmel - fix 64-bit build warnings
When we enable COMPILE_TEST building for the Atmel sha and tdes implementations, we run into a couple of warnings about incorrect format strings, e.g. In file included from include/linux/platform_device.h:14:0, from drivers/crypto/atmel-sha.c:24: drivers/crypto/atmel-sha.c: In function 'atmel_sha_xmit_cpu': drivers/crypto/atmel-sha.c:571:19: error: format '%d' expects argument of type 'int', but argument 6 has type 'size_t {aka long unsigned int}' [-Werror=format=] In file included from include/linux/printk.h:6:0, from include/linux/kernel.h:13, from drivers/crypto/atmel-tdes.c:17: drivers/crypto/atmel-tdes.c: In function 'atmel_tdes_crypt_dma_stop': include/linux/kern_levels.h:4:18: error: format '%u' expects argument of type 'unsigned int', but argument 2 has type 'size_t {aka long unsigned int}' [-Werror=format=] These are all fixed by using the "%z" modifier for size_t data. There are also a few uses of min()/max() with incompatible types: drivers/crypto/atmel-tdes.c: In function 'atmel_tdes_crypt_start': drivers/crypto/atmel-tdes.c:528:181: error: comparison of distinct pointer types lacks a cast [-Werror] Where possible, we should use consistent types here, otherwise we can use min_t()/max_t() to get well-defined behavior without a warning. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
1 parent ceb4afb commit 4c147bc

File tree

2 files changed

+15
-15
lines changed

2 files changed

+15
-15
lines changed

drivers/crypto/atmel-sha.c

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -568,7 +568,7 @@ static int atmel_sha_xmit_cpu(struct atmel_sha_dev *dd, const u8 *buf,
568568
int count, len32;
569569
const u32 *buffer = (const u32 *)buf;
570570

571-
dev_dbg(dd->dev, "xmit_cpu: digcnt: 0x%llx 0x%llx, length: %d, final: %d\n",
571+
dev_dbg(dd->dev, "xmit_cpu: digcnt: 0x%llx 0x%llx, length: %zd, final: %d\n",
572572
ctx->digcnt[1], ctx->digcnt[0], length, final);
573573

574574
atmel_sha_write_ctrl(dd, 0);
@@ -597,7 +597,7 @@ static int atmel_sha_xmit_pdc(struct atmel_sha_dev *dd, dma_addr_t dma_addr1,
597597
struct atmel_sha_reqctx *ctx = ahash_request_ctx(dd->req);
598598
int len32;
599599

600-
dev_dbg(dd->dev, "xmit_pdc: digcnt: 0x%llx 0x%llx, length: %d, final: %d\n",
600+
dev_dbg(dd->dev, "xmit_pdc: digcnt: 0x%llx 0x%llx, length: %zd, final: %d\n",
601601
ctx->digcnt[1], ctx->digcnt[0], length1, final);
602602

603603
len32 = DIV_ROUND_UP(length1, sizeof(u32));
@@ -644,7 +644,7 @@ static int atmel_sha_xmit_dma(struct atmel_sha_dev *dd, dma_addr_t dma_addr1,
644644
struct dma_async_tx_descriptor *in_desc;
645645
struct scatterlist sg[2];
646646

647-
dev_dbg(dd->dev, "xmit_dma: digcnt: 0x%llx 0x%llx, length: %d, final: %d\n",
647+
dev_dbg(dd->dev, "xmit_dma: digcnt: 0x%llx 0x%llx, length: %zd, final: %d\n",
648648
ctx->digcnt[1], ctx->digcnt[0], length1, final);
649649

650650
dd->dma_lch_in.dma_conf.src_maxburst = 16;
@@ -723,7 +723,7 @@ static int atmel_sha_xmit_dma_map(struct atmel_sha_dev *dd,
723723
ctx->dma_addr = dma_map_single(dd->dev, ctx->buffer,
724724
ctx->buflen + ctx->block_size, DMA_TO_DEVICE);
725725
if (dma_mapping_error(dd->dev, ctx->dma_addr)) {
726-
dev_err(dd->dev, "dma %u bytes error\n", ctx->buflen +
726+
dev_err(dd->dev, "dma %zu bytes error\n", ctx->buflen +
727727
ctx->block_size);
728728
atmel_sha_complete(dd, -EINVAL);
729729
}
@@ -744,7 +744,7 @@ static int atmel_sha_update_dma_slow(struct atmel_sha_dev *dd)
744744

745745
final = (ctx->flags & SHA_FLAGS_FINUP) && !ctx->total;
746746

747-
dev_dbg(dd->dev, "slow: bufcnt: %u, digcnt: 0x%llx 0x%llx, final: %d\n",
747+
dev_dbg(dd->dev, "slow: bufcnt: %zu, digcnt: 0x%llx 0x%llx, final: %d\n",
748748
ctx->bufcnt, ctx->digcnt[1], ctx->digcnt[0], final);
749749

750750
if (final)
@@ -772,7 +772,7 @@ static int atmel_sha_update_dma_start(struct atmel_sha_dev *dd)
772772
if (ctx->bufcnt || ctx->offset)
773773
return atmel_sha_update_dma_slow(dd);
774774

775-
dev_dbg(dd->dev, "fast: digcnt: 0x%llx 0x%llx, bufcnt: %u, total: %u\n",
775+
dev_dbg(dd->dev, "fast: digcnt: 0x%llx 0x%llx, bufcnt: %zd, total: %u\n",
776776
ctx->digcnt[1], ctx->digcnt[0], ctx->bufcnt, ctx->total);
777777

778778
sg = ctx->sg;
@@ -814,7 +814,7 @@ static int atmel_sha_update_dma_start(struct atmel_sha_dev *dd)
814814
ctx->dma_addr = dma_map_single(dd->dev, ctx->buffer,
815815
ctx->buflen + ctx->block_size, DMA_TO_DEVICE);
816816
if (dma_mapping_error(dd->dev, ctx->dma_addr)) {
817-
dev_err(dd->dev, "dma %u bytes error\n",
817+
dev_err(dd->dev, "dma %zu bytes error\n",
818818
ctx->buflen + ctx->block_size);
819819
atmel_sha_complete(dd, -EINVAL);
820820
}
@@ -994,7 +994,7 @@ static int atmel_sha_finish(struct ahash_request *req)
994994
if (ctx->digcnt[0] || ctx->digcnt[1])
995995
atmel_sha_copy_ready_hash(req);
996996

997-
dev_dbg(dd->dev, "digcnt: 0x%llx 0x%llx, bufcnt: %d\n", ctx->digcnt[1],
997+
dev_dbg(dd->dev, "digcnt: 0x%llx 0x%llx, bufcnt: %zd\n", ctx->digcnt[1],
998998
ctx->digcnt[0], ctx->bufcnt);
999999

10001000
return 0;

drivers/crypto/atmel-tdes.c

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,7 @@ static struct atmel_tdes_drv atmel_tdes = {
150150
static int atmel_tdes_sg_copy(struct scatterlist **sg, size_t *offset,
151151
void *buf, size_t buflen, size_t total, int out)
152152
{
153-
unsigned int count, off = 0;
153+
size_t count, off = 0;
154154

155155
while (buflen && total) {
156156
count = min((*sg)->length - *offset, total);
@@ -336,7 +336,7 @@ static int atmel_tdes_crypt_pdc_stop(struct atmel_tdes_dev *dd)
336336
dd->buf_out, dd->buflen, dd->dma_size, 1);
337337
if (count != dd->dma_size) {
338338
err = -EINVAL;
339-
pr_err("not all data converted: %u\n", count);
339+
pr_err("not all data converted: %zu\n", count);
340340
}
341341
}
342342

@@ -361,15 +361,15 @@ static int atmel_tdes_buff_init(struct atmel_tdes_dev *dd)
361361
dd->dma_addr_in = dma_map_single(dd->dev, dd->buf_in,
362362
dd->buflen, DMA_TO_DEVICE);
363363
if (dma_mapping_error(dd->dev, dd->dma_addr_in)) {
364-
dev_err(dd->dev, "dma %d bytes error\n", dd->buflen);
364+
dev_err(dd->dev, "dma %zd bytes error\n", dd->buflen);
365365
err = -EINVAL;
366366
goto err_map_in;
367367
}
368368

369369
dd->dma_addr_out = dma_map_single(dd->dev, dd->buf_out,
370370
dd->buflen, DMA_FROM_DEVICE);
371371
if (dma_mapping_error(dd->dev, dd->dma_addr_out)) {
372-
dev_err(dd->dev, "dma %d bytes error\n", dd->buflen);
372+
dev_err(dd->dev, "dma %zd bytes error\n", dd->buflen);
373373
err = -EINVAL;
374374
goto err_map_out;
375375
}
@@ -525,8 +525,8 @@ static int atmel_tdes_crypt_start(struct atmel_tdes_dev *dd)
525525

526526

527527
if (fast) {
528-
count = min(dd->total, sg_dma_len(dd->in_sg));
529-
count = min(count, sg_dma_len(dd->out_sg));
528+
count = min_t(size_t, dd->total, sg_dma_len(dd->in_sg));
529+
count = min_t(size_t, count, sg_dma_len(dd->out_sg));
530530

531531
err = dma_map_sg(dd->dev, dd->in_sg, 1, DMA_TO_DEVICE);
532532
if (!err) {
@@ -661,7 +661,7 @@ static int atmel_tdes_crypt_dma_stop(struct atmel_tdes_dev *dd)
661661
dd->buf_out, dd->buflen, dd->dma_size, 1);
662662
if (count != dd->dma_size) {
663663
err = -EINVAL;
664-
pr_err("not all data converted: %u\n", count);
664+
pr_err("not all data converted: %zu\n", count);
665665
}
666666
}
667667
}

0 commit comments

Comments
 (0)