@@ -37,10 +37,9 @@ RTE_TRACE_POINT_FP(
enum rte_dma_vchan_status __status = 0;
status = &__status;
#endif /* _RTE_TRACE_POINT_REGISTER_H_ */
- int vchan_status = *status;
rte_trace_point_emit_i16(dev_id);
rte_trace_point_emit_u16(vchan);
- rte_trace_point_emit_int(vchan_status);
+ rte_trace_point_emit_int_ptr(status);
rte_trace_point_emit_int(ret);
)
@@ -107,13 +106,11 @@ RTE_TRACE_POINT_FP(
last_idx = &__last_idx;
has_error = &__has_error;
#endif /* _RTE_TRACE_POINT_REGISTER_H_ */
- int has_error_val = *has_error;
- int last_idx_val = *last_idx;
rte_trace_point_emit_i16(dev_id);
rte_trace_point_emit_u16(vchan);
rte_trace_point_emit_u16(nb_cpls);
- rte_trace_point_emit_int(last_idx_val);
- rte_trace_point_emit_int(has_error_val);
+ rte_trace_point_emit_u16_ptr(last_idx);
+ rte_trace_point_emit_u8_ptr(has_error);
rte_trace_point_emit_u16(ret);
)
@@ -126,11 +123,10 @@ RTE_TRACE_POINT_FP(
uint16_t __last_idx = 0;
last_idx = &__last_idx;
#endif /* _RTE_TRACE_POINT_REGISTER_H_ */
- int last_idx_val = *last_idx;
rte_trace_point_emit_i16(dev_id);
rte_trace_point_emit_u16(vchan);
rte_trace_point_emit_u16(nb_cpls);
- rte_trace_point_emit_int(last_idx_val);
+ rte_trace_point_emit_u16_ptr(last_idx);
rte_trace_point_emit_ptr(status);
rte_trace_point_emit_u16(ret);
)
@@ -376,10 +376,10 @@ do { \
return; \
__rte_trace_point_emit_header_generic(t)
-#define __rte_trace_point_emit(in, type) \
+#define __rte_trace_point_emit(name, in, type) \
do { \
- memcpy(mem, &(in), sizeof(in)); \
- mem = RTE_PTR_ADD(mem, sizeof(in)); \
+ memcpy(mem, in, sizeof(*in)); \
+ mem = RTE_PTR_ADD(mem, sizeof(*in)); \
} while (0)
#define rte_trace_point_emit_string(in) \
@@ -396,7 +396,7 @@ do { \
return; \
if (len > RTE_TRACE_BLOB_LEN_MAX) \
len = RTE_TRACE_BLOB_LEN_MAX; \
- __rte_trace_point_emit(len, uint8_t); \
+ __rte_trace_point_emit(RTE_STR(len), &len, uint8_t); \
memcpy(mem, in, len); \
memset(RTE_PTR_ADD(mem, len), 0, RTE_TRACE_BLOB_LEN_MAX - len); \
mem = RTE_PTR_ADD(mem, RTE_TRACE_BLOB_LEN_MAX); \
@@ -406,7 +406,7 @@ do { \
#define __rte_trace_point_emit_header_generic(t) RTE_SET_USED(t)
#define __rte_trace_point_emit_header_fp(t) RTE_SET_USED(t)
-#define __rte_trace_point_emit(in, type) RTE_SET_USED(in)
+#define __rte_trace_point_emit(name, in, type) RTE_SET_USED(in)
#define rte_trace_point_emit_string(in) RTE_SET_USED(in)
#define rte_trace_point_emit_blob(in, len) \
do { \
@@ -418,20 +418,34 @@ do { \
#endif /* ALLOW_EXPERIMENTAL_API */
#endif /* _RTE_TRACE_POINT_REGISTER_H_ */
-#define rte_trace_point_emit_u64(in) __rte_trace_point_emit(in, uint64_t)
-#define rte_trace_point_emit_i64(in) __rte_trace_point_emit(in, int64_t)
-#define rte_trace_point_emit_u32(in) __rte_trace_point_emit(in, uint32_t)
-#define rte_trace_point_emit_i32(in) __rte_trace_point_emit(in, int32_t)
-#define rte_trace_point_emit_u16(in) __rte_trace_point_emit(in, uint16_t)
-#define rte_trace_point_emit_i16(in) __rte_trace_point_emit(in, int16_t)
-#define rte_trace_point_emit_u8(in) __rte_trace_point_emit(in, uint8_t)
-#define rte_trace_point_emit_i8(in) __rte_trace_point_emit(in, int8_t)
-#define rte_trace_point_emit_int(in) __rte_trace_point_emit(in, int32_t)
-#define rte_trace_point_emit_long(in) __rte_trace_point_emit(in, long)
-#define rte_trace_point_emit_size_t(in) __rte_trace_point_emit(in, size_t)
-#define rte_trace_point_emit_float(in) __rte_trace_point_emit(in, float)
-#define rte_trace_point_emit_double(in) __rte_trace_point_emit(in, double)
-#define rte_trace_point_emit_ptr(in) __rte_trace_point_emit(in, uintptr_t)
+#define rte_trace_point_emit_u64(in) __rte_trace_point_emit(RTE_STR(in), &in, uint64_t)
+#define rte_trace_point_emit_i64(in) __rte_trace_point_emit(RTE_STR(in), &in, int64_t)
+#define rte_trace_point_emit_u32(in) __rte_trace_point_emit(RTE_STR(in), &in, uint32_t)
+#define rte_trace_point_emit_i32(in) __rte_trace_point_emit(RTE_STR(in), &in, int32_t)
+#define rte_trace_point_emit_u16(in) __rte_trace_point_emit(RTE_STR(in), &in, uint16_t)
+#define rte_trace_point_emit_i16(in) __rte_trace_point_emit(RTE_STR(in), &in, int16_t)
+#define rte_trace_point_emit_u8(in) __rte_trace_point_emit(RTE_STR(in), &in, uint8_t)
+#define rte_trace_point_emit_i8(in) __rte_trace_point_emit(RTE_STR(in), &in, int8_t)
+#define rte_trace_point_emit_int(in) __rte_trace_point_emit(RTE_STR(in), &in, int32_t)
+#define rte_trace_point_emit_long(in) __rte_trace_point_emit(RTE_STR(in), &in, long)
+#define rte_trace_point_emit_size_t(in) __rte_trace_point_emit(RTE_STR(in), &in, size_t)
+#define rte_trace_point_emit_float(in) __rte_trace_point_emit(RTE_STR(in), &in, float)
+#define rte_trace_point_emit_double(in) __rte_trace_point_emit(RTE_STR(in), &in, double)
+#define rte_trace_point_emit_ptr(in) __rte_trace_point_emit(RTE_STR(in), &in, uintptr_t)
+
+#define rte_trace_point_emit_u64_ptr(in) __rte_trace_point_emit(RTE_STR(in)"_val", in, uint64_t)
+#define rte_trace_point_emit_i64_ptr(in) __rte_trace_point_emit(RTE_STR(in)"_val", in, int64_t)
+#define rte_trace_point_emit_u32_ptr(in) __rte_trace_point_emit(RTE_STR(in)"_val", in, uint32_t)
+#define rte_trace_point_emit_i32_ptr(in) __rte_trace_point_emit(RTE_STR(in)"_val", in, int32_t)
+#define rte_trace_point_emit_u16_ptr(in) __rte_trace_point_emit(RTE_STR(in)"_val", in, uint16_t)
+#define rte_trace_point_emit_i16_ptr(in) __rte_trace_point_emit(RTE_STR(in)"_val", in, int16_t)
+#define rte_trace_point_emit_u8_ptr(in) __rte_trace_point_emit(RTE_STR(in)"_val", in, uint8_t)
+#define rte_trace_point_emit_i8_ptr(in) __rte_trace_point_emit(RTE_STR(in)"_val", in, int8_t)
+#define rte_trace_point_emit_int_ptr(in) __rte_trace_point_emit(RTE_STR(in)"_val", in, int32_t)
+#define rte_trace_point_emit_long_ptr(in) __rte_trace_point_emit(RTE_STR(in)"_val", in, long)
+#define rte_trace_point_emit_size_t_ptr(in) __rte_trace_point_emit(RTE_STR(in)"_val", in, size_t)
+#define rte_trace_point_emit_float_ptr(in) __rte_trace_point_emit(RTE_STR(in)"_val", in, float)
+#define rte_trace_point_emit_double_ptr(in) __rte_trace_point_emit(RTE_STR(in)"_val", in, double)
#endif /* __DOXYGEN__ */
@@ -35,11 +35,10 @@ RTE_INIT(trace##_init) \
#define __rte_trace_point_emit_header_fp(t) \
__rte_trace_point_emit_header_generic(t)
-#define __rte_trace_point_emit(in, type) \
+#define __rte_trace_point_emit(name, in, type) \
do { \
- RTE_BUILD_BUG_ON(sizeof(type) != sizeof(typeof(in))); \
- __rte_trace_point_emit_field(sizeof(type), RTE_STR(in), \
- RTE_STR(type)); \
+ RTE_BUILD_BUG_ON(sizeof(type) != sizeof(typeof(*in))); \
+ __rte_trace_point_emit_field(sizeof(type), name, RTE_STR(type)); \
} while (0)
#define rte_trace_point_emit_string(in) \
@@ -52,7 +51,7 @@ do { \
#define rte_trace_point_emit_blob(in, len) \
do { \
RTE_SET_USED(in); \
- __rte_trace_point_emit(len, uint8_t); \
+ __rte_trace_point_emit(RTE_STR(len), &len, uint8_t); \
__rte_trace_point_emit_field(RTE_TRACE_BLOB_LEN_MAX, \
RTE_STR(in)"[" RTE_STR(RTE_TRACE_BLOB_LEN_MAX)"]", \
RTE_STR(uint8_t)); \