SEC_DUMP_DESC() grew a FILE * argument when the NXP drivers were
converted to fprintf(), but the only caller was never updated, so
building with RTE_LIBRTE_PMD_CAAM_JR_DEBUG failed with a macro
arity error.

Compiling the macro body for the first time then exposed two
further problems in it: the log format string ended in a newline,
which RTE_LOG_LINE() rejects, and descriptor pointers were cast to uint32_t,
truncating them on 64-bit builds.

Fixes: a8794e398279 ("drivers: use fprintf for debug dumps in NXP drivers")
Cc: [email protected]

Signed-off-by: Stephen Hemminger <[email protected]>
---
 drivers/crypto/caam_jr/caam_jr.c      | 2 +-
 drivers/crypto/caam_jr/caam_jr_desc.h | 6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/crypto/caam_jr/caam_jr.c b/drivers/crypto/caam_jr/caam_jr.c
index a57dc56b80..104ce52d11 100644
--- a/drivers/crypto/caam_jr/caam_jr.c
+++ b/drivers/crypto/caam_jr/caam_jr.c
@@ -462,7 +462,7 @@ caam_jr_prep_cdb(struct caam_jr_session *ses)
        }
 
 #if CAAM_JR_DBG
-       SEC_DUMP_DESC(cdb->sh_desc);
+       SEC_DUMP_DESC(cdb->sh_desc, stdout);
 #endif
 
        cdb->sh_hdr.hi.field.idlen = shared_desc_len;
diff --git a/drivers/crypto/caam_jr/caam_jr_desc.h 
b/drivers/crypto/caam_jr/caam_jr_desc.h
index eb4e68578a..845facec26 100644
--- a/drivers/crypto/caam_jr/caam_jr_desc.h
+++ b/drivers/crypto/caam_jr/caam_jr_desc.h
@@ -112,12 +112,12 @@
 /* Helper macro for dumping the hex representation of a descriptor */
 #define SEC_DUMP_DESC(descriptor, f) {                                 \
        int __i;                                                        \
-       CAAM_JR_INFO("Des@ 0x%08x\n", (uint32_t)((uint32_t *)(descriptor)));\
+       CAAM_JR_INFO("Des@ %p", (const void *)(descriptor));            \
        for (__i = 0;                                           \
                __i < SEC_GET_DESC_LEN(descriptor);                     \
                __i++) {                                                \
-               fprintf(f, "0x%08x: 0x%08x\n",                  \
-                       (uint32_t)(((uint32_t *)(descriptor)) + __i),   \
+               fprintf(f, "%p: 0x%08x\n",                      \
+                       (const void *)(((uint32_t *)(descriptor)) + __i), \
                        *(((uint32_t *)(descriptor)) + __i));           \
        }                                                               \
 }
-- 
2.53.0

Reply via email to