X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=lib%2Flibrte_eal%2Fcommon%2Finclude%2Frte_log.h;h=f5403a9d4dcb94342470f81575c47a48f73cc8d2;hb=f2e7592c474cf096266b02c71b292a696d19099e;hp=fc6c9b8a00f39445e6948245a39f296dbb7987f8;hpb=0100a515b5631b5a598e75bdf838870caab50470;p=dpdk.git diff --git a/lib/librte_eal/common/include/rte_log.h b/lib/librte_eal/common/include/rte_log.h index fc6c9b8a00..f5403a9d4d 100644 --- a/lib/librte_eal/common/include/rte_log.h +++ b/lib/librte_eal/common/include/rte_log.h @@ -1,7 +1,7 @@ /*- * BSD LICENSE * - * Copyright(c) 2010-2012 Intel Corporation. All rights reserved. + * Copyright(c) 2010-2013 Intel Corporation. All rights reserved. * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -70,8 +70,11 @@ extern struct rte_logs rte_logs; #define RTE_LOGTYPE_PMD 0x00000020 /**< Log related to poll mode driver. */ #define RTE_LOGTYPE_HASH 0x00000040 /**< Log related to hash table. */ #define RTE_LOGTYPE_LPM 0x00000080 /**< Log related to LPM. */ -#define RTE_LOGTYPE_KNI 0X00000100 /**< Log related to KNI. */ +#define RTE_LOGTYPE_KNI 0x00000100 /**< Log related to KNI. */ #define RTE_LOGTYPE_PMAC 0x00000200 /**< Log related to PMAC. */ +#define RTE_LOGTYPE_POWER 0x00000400 /**< Log related to power. */ +#define RTE_LOGTYPE_METER 0x00000800 /**< Log related to QoS meter. */ +#define RTE_LOGTYPE_SCHED 0x00001000 /**< Log related to QoS port scheduler. */ /* these log types can be used in an application */ #define RTE_LOGTYPE_USER1 0x01000000 /**< User-defined log type 1. */ @@ -217,6 +220,7 @@ int rte_log_add_in_history(const char *buf, size_t size); * - Negative on error. */ int rte_log(uint32_t level, uint32_t logtype, const char *format, ...) + __attribute__((cold)) __attribute__((format(printf, 3, 4))); /** @@ -275,14 +279,13 @@ int rte_vlog(uint32_t level, uint32_t logtype, const char *format, va_list ap); * - 0: Success. * - Negative on error. */ -#define RTE_LOG(l, t, fmt, args...) ({ \ - if ((RTE_LOG_##l <= RTE_LOG_LEVEL) && \ - (RTE_LOG_##l <= rte_logs.level) && \ - (RTE_LOGTYPE_##t & rte_logs.type)) { \ - rte_log(RTE_LOG_##l, RTE_LOGTYPE_##t, \ - #t ": " fmt, ## args); \ - } \ -}) +#define RTE_LOG(l, t, ...) \ + (void)(((RTE_LOG_ ## l <= RTE_LOG_LEVEL) && \ + (RTE_LOG_ ## l <= rte_logs.level) && \ + (RTE_LOGTYPE_ ## t & rte_logs.type)) ? \ + rte_log(RTE_LOG_ ## l, \ + RTE_LOGTYPE_ ## t, # t ": " __VA_ARGS__) : \ + 0) #ifdef __cplusplus }