Checking a const pointer for alignment would emit a warning about the const qualifier being discarded.
No need to calculate the aligned pointer; just check the last bits of the pointer. Signed-off-by: Morten Brørup <m...@smartsharesystems.com> --- lib/eal/include/rte_common.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/eal/include/rte_common.h b/lib/eal/include/rte_common.h index 2e22c1b955..5c20d3a81a 100644 --- a/lib/eal/include/rte_common.h +++ b/lib/eal/include/rte_common.h @@ -403,10 +403,10 @@ static void __attribute__((destructor(RTE_PRIO(prio)), used)) func(void) * @return * True(1) where the pointer is correctly aligned, false(0) otherwise */ -static inline int -rte_is_aligned(void *ptr, unsigned align) +static __rte_always_inline __attribute__ ((const)) int +rte_is_aligned(const void * const __rte_restrict ptr, unsigned int align) { - return RTE_PTR_ALIGN(ptr, align) == ptr; + return ((uintptr_t)ptr & (align - 1)) == 0; } /*********** Macros for compile type checks ********/ -- 2.17.1