X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=drivers%2Fnet%2Fmlx4%2Fmlx4_utils.h;h=b8769562ab16380f5cc05cdb6bed2704f70f7d8d;hb=dd8384a4f5dd7e04cd3bc7ded0f0a6d9c79d25b4;hp=a49190252fe1a169fb44a0490cd5a6f9e13b763e;hpb=11a34bf2c0f576044d362e0f550c2b4977ee9c85;p=dpdk.git diff --git a/drivers/net/mlx4/mlx4_utils.h b/drivers/net/mlx4/mlx4_utils.h index a49190252f..b8769562ab 100644 --- a/drivers/net/mlx4/mlx4_utils.h +++ b/drivers/net/mlx4/mlx4_utils.h @@ -6,7 +6,6 @@ #ifndef MLX4_UTILS_H_ #define MLX4_UTILS_H_ -#include #include #include @@ -15,12 +14,22 @@ #include "mlx4.h" +/* + * Compilation workaround for PPC64 when AltiVec is fully enabled, e.g. std=c11. + * Otherwise there would be a type conflict between stdbool and altivec. + */ +#if defined(__PPC64__) && !defined(__APPLE_ALTIVEC__) +#undef bool +/* redefine as in stdbool.h */ +#define bool _Bool +#endif + extern int mlx4_logtype; -#ifndef NDEBUG +#ifdef RTE_LIBRTE_MLX4_DEBUG /* - * When debugging is enabled (NDEBUG not defined), file, line and function + * When debugging is enabled (MLX4_DEBUG is defined), file, line and function * information replace the driver name (MLX4_DRIVER_NAME) in log messages. */ @@ -44,12 +53,13 @@ pmd_drv_log_basename(const char *s) __func__, \ RTE_FMT_TAIL(__VA_ARGS__,))) #define DEBUG(...) PMD_DRV_LOG(DEBUG, __VA_ARGS__) -#define claim_zero(...) assert((__VA_ARGS__) == 0) +#define MLX4_ASSERT(exp) RTE_VERIFY(exp) +#define claim_zero(...) MLX4_ASSERT((__VA_ARGS__) == 0) -#else /* NDEBUG */ +#else /* RTE_LIBRTE_MLX4_DEBUG */ /* - * Like assert(), DEBUG() becomes a no-op and claim_zero() does not perform + * Like MLX4_ASSERT(), DEBUG() becomes a no-op and claim_zero() does not perform * any check when debugging is disabled. */ @@ -59,9 +69,10 @@ pmd_drv_log_basename(const char *s) RTE_FMT_HEAD(__VA_ARGS__,) "\n", \ RTE_FMT_TAIL(__VA_ARGS__,))) #define DEBUG(...) (void)0 +#define MLX4_ASSERT(exp) RTE_ASSERT(exp) #define claim_zero(...) (__VA_ARGS__) -#endif /* NDEBUG */ +#endif /* RTE_LIBRTE_MLX4_DEBUG */ #define INFO(...) PMD_DRV_LOG(INFO, __VA_ARGS__) #define WARN(...) PMD_DRV_LOG(WARNING, __VA_ARGS__) @@ -69,9 +80,10 @@ pmd_drv_log_basename(const char *s) /** Allocate a buffer on the stack and fill it with a printf format string. */ #define MKSTR(name, ...) \ - char name[snprintf(NULL, 0, __VA_ARGS__) + 1]; \ + int mkstr_size_##name = snprintf(NULL, 0, "" __VA_ARGS__); \ + char name[mkstr_size_##name + 1]; \ \ - snprintf(name, sizeof(name), __VA_ARGS__) + snprintf(name, sizeof(name), "" __VA_ARGS__) /** Generate a string out of the provided arguments. */ #define MLX4_STR(...) # __VA_ARGS__