Merge tag 'trace-v6.0' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux...
[linux-2.6-microblaze.git] / include / trace / stages / stage6_event_callback.h
index e1724f7..3c554a5 100644 (file)
@@ -24,6 +24,9 @@
 #undef __string_len
 #define __string_len(item, src, len) __dynamic_array(char, item, -1)
 
 #undef __string_len
 #define __string_len(item, src, len) __dynamic_array(char, item, -1)
 
+#undef __vstring
+#define __vstring(item, fmt, ap) __dynamic_array(char, item, -1)
+
 #undef __assign_str
 #define __assign_str(dst, src)                                         \
        strcpy(__get_str(dst), (src) ? (const char *)(src) : "(null)");
 #undef __assign_str
 #define __assign_str(dst, src)                                         \
        strcpy(__get_str(dst), (src) ? (const char *)(src) : "(null)");
                __get_str(dst)[len] = '\0';                             \
        } while(0)
 
                __get_str(dst)[len] = '\0';                             \
        } while(0)
 
+#undef __assign_vstr
+#define __assign_vstr(dst, fmt, va)                                    \
+       do {                                                            \
+               va_list __cp_va;                                        \
+               va_copy(__cp_va, *(va));                                \
+               vsnprintf(__get_str(dst), TRACE_EVENT_STR_MAX, fmt, __cp_va); \
+               va_end(__cp_va);                                        \
+       } while (0)
+
 #undef __bitmask
 #define __bitmask(item, nr_bits) __dynamic_array(unsigned long, item, -1)
 
 #undef __bitmask
 #define __bitmask(item, nr_bits) __dynamic_array(unsigned long, item, -1)