From 65f88eb2842649e442e781d58a0228b3e8970e45 Mon Sep 17 00:00:00 2001 From: "Ilya V. Matveychikov" Date: Sun, 19 Nov 2017 12:18:49 +0400 Subject: [PATCH 1/1] eal: update assertion macro MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Update RTE_VERIFY macro to make it possible to use complex expressions in RTE_ASSERT. Now it’s possible to have % char inside the expression, for example: RTE_ASSERT((sizeof(some_struct) % 64) == 0) Before the patch, “%" sign acts like a conversion specification beginning character. Fixes: 148f963fb532 ("xen: core library changes") Signed-off-by: Ilya V. Matveychikov Reviewed-by: Ferruh Yigit --- lib/librte_eal/common/include/rte_debug.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/librte_eal/common/include/rte_debug.h b/lib/librte_eal/common/include/rte_debug.h index 79b67b3ec3..fbb3bb5e51 100644 --- a/lib/librte_eal/common/include/rte_debug.h +++ b/lib/librte_eal/common/include/rte_debug.h @@ -86,7 +86,7 @@ void rte_dump_registers(void); #endif #define RTE_VERIFY(exp) do { \ if (unlikely(!(exp))) \ - rte_panic("line %d\tassert \"" #exp "\" failed\n", __LINE__); \ + rte_panic("line %d\tassert \"%s\" failed\n", __LINE__, #exp); \ } while (0) /* -- 2.20.1