[PATCH] crypto: sa2ul - fix pointer cast warning on 32-bit

From: Geert Uytterhoeven
Date: Tue Aug 04 2020 - 05:29:41 EST


On 32-bit:

drivers/crypto/sa2ul.c: In function ‘sa_sha_init’:
drivers/crypto/sa2ul.c:1486:33: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
crypto_ahash_digestsize(tfm), (u64)rctx);
^

Fix this by casting the context pointer to "unsigned long" (which is
either 32-bit or 64-bit, just like pointers) instead of "u64", and
update the format specifier accordingly.
While at it, use "%u" to format unsigned int.

Fixes: 2dc53d0047458e28 ("crypto: sa2ul - add sha1/sha256/sha512 support")
Signed-off-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
---
Notes:
1. This (still) reveals the kernel pointer value, which would be
obfuscated by using "%p",
2. Perhaps we want to use "%px" instead? But there are no users of
"%px" in drivers/crypto/.
---
drivers/crypto/sa2ul.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/crypto/sa2ul.c b/drivers/crypto/sa2ul.c
index 5bc099052bd20b3c..4611ac20405a60cb 100644
--- a/drivers/crypto/sa2ul.c
+++ b/drivers/crypto/sa2ul.c
@@ -1482,8 +1482,8 @@ static int sa_sha_init(struct ahash_request *req)
struct sa_sha_req_ctx *rctx = ahash_request_ctx(req);
struct sa_tfm_ctx *ctx = crypto_ahash_ctx(tfm);

- dev_dbg(sa_k3_dev, "init: digest size: %d, rctx=%llx\n",
- crypto_ahash_digestsize(tfm), (u64)rctx);
+ dev_dbg(sa_k3_dev, "init: digest size: %u, rctx=%lx\n",
+ crypto_ahash_digestsize(tfm), (unsigned long)rctx);

ahash_request_set_tfm(&rctx->fallback_req, ctx->fallback.ahash);
rctx->fallback_req.base.flags =
--
2.17.1