|
@@ -44,6 +44,12 @@
|
|
|
#undef __field_ext
|
|
|
#define __field_ext(type, item, filter_type) type item;
|
|
|
|
|
|
+#undef __field_struct
|
|
|
+#define __field_struct(type, item) type item;
|
|
|
+
|
|
|
+#undef __field_struct_ext
|
|
|
+#define __field_struct_ext(type, item, filter_type) type item;
|
|
|
+
|
|
|
#undef __array
|
|
|
#define __array(type, item, len) type item[len];
|
|
|
|
|
@@ -122,6 +128,12 @@
|
|
|
#undef __field_ext
|
|
|
#define __field_ext(type, item, filter_type)
|
|
|
|
|
|
+#undef __field_struct
|
|
|
+#define __field_struct(type, item)
|
|
|
+
|
|
|
+#undef __field_struct_ext
|
|
|
+#define __field_struct_ext(type, item, filter_type)
|
|
|
+
|
|
|
#undef __array
|
|
|
#define __array(type, item, len)
|
|
|
|
|
@@ -315,9 +327,21 @@ static struct trace_event_functions ftrace_event_type_funcs_##call = { \
|
|
|
if (ret) \
|
|
|
return ret;
|
|
|
|
|
|
+#undef __field_struct_ext
|
|
|
+#define __field_struct_ext(type, item, filter_type) \
|
|
|
+ ret = trace_define_field(event_call, #type, #item, \
|
|
|
+ offsetof(typeof(field), item), \
|
|
|
+ sizeof(field.item), \
|
|
|
+ 0, filter_type); \
|
|
|
+ if (ret) \
|
|
|
+ return ret;
|
|
|
+
|
|
|
#undef __field
|
|
|
#define __field(type, item) __field_ext(type, item, FILTER_OTHER)
|
|
|
|
|
|
+#undef __field_struct
|
|
|
+#define __field_struct(type, item) __field_struct_ext(type, item, FILTER_OTHER)
|
|
|
+
|
|
|
#undef __array
|
|
|
#define __array(type, item, len) \
|
|
|
do { \
|
|
@@ -379,6 +403,12 @@ ftrace_define_fields_##call(struct ftrace_event_call *event_call) \
|
|
|
#undef __field_ext
|
|
|
#define __field_ext(type, item, filter_type)
|
|
|
|
|
|
+#undef __field_struct
|
|
|
+#define __field_struct(type, item)
|
|
|
+
|
|
|
+#undef __field_struct_ext
|
|
|
+#define __field_struct_ext(type, item, filter_type)
|
|
|
+
|
|
|
#undef __array
|
|
|
#define __array(type, item, len)
|
|
|
|
|
@@ -550,6 +580,9 @@ static inline notrace int ftrace_get_offsets_##call( \
|
|
|
#undef __field
|
|
|
#define __field(type, item)
|
|
|
|
|
|
+#undef __field_struct
|
|
|
+#define __field_struct(type, item)
|
|
|
+
|
|
|
#undef __array
|
|
|
#define __array(type, item, len)
|
|
|
|