diff options
author | Bruce Ashfield <bruce.ashfield@gmail.com> | 2022-08-05 19:04:15 -0400 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2022-08-08 15:44:21 +0100 |
commit | b7eec1ffa14ddc0170b01526253ba059a07840b6 (patch) | |
tree | 98bfc5d393634f0123c86971e52b5f324bbd4b99 /meta/recipes-devtools/qemu/qemu | |
parent | 5eb28fc7a123f27400b8aa721dc65b30f786e6c1 (diff) | |
download | poky-b7eec1ffa14ddc0170b01526253ba059a07840b6.tar.gz |
lttng-modules: fix build against mips and v5.19 kernel
When building against a v5.19 mips kernel, the following errors
were triggered:
| lttng-modules-2.13.4/src/probes/../../include/instrumentation/events/compaction.h:105:42: note: expected 'struct compact_control *' but argument is of type 'struct compact_control *'
| 105 | TP_PROTO(struct compact_control *cc,
| | ~~~~~~~~~~~~~~~~~~~~~~~~^~
| lttng-modules-2.13.4/src/probes/../../include/lttng/tracepoint-event-impl.h:779:68: note: in definition of macro 'LTTNG_TRACEPOINT_EVENT_CLASS_CODE'
| 779 | static inline size_t __event_get_align__##_name(void *__tp_locvar, _proto) \
| | ^~~~~~
| lttng-modules-2.13.4/src/probes/../../include/lttng/tracepoint-event-impl.h:106:50: note: in expansion of macro 'PARAMS'
| 106 | LTTNG_TRACEPOINT_EVENT_CLASS_CODE(_name, PARAMS(_proto), PARAMS(_args), , , \
| | ^~~~~~
| lttng-modules-2.13.4/src/probes/../../include/lttng/tracepoint-event-impl.h:41:9: note: in expansion of macro 'LTTNG_TRACEPOINT_EVENT_CLASS'
| 41 | LTTNG_TRACEPOINT_EVENT_CLASS(map, \
| | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
| lttng-modules-2.13.4/src/probes/../../include/lttng/tracepoint-event-impl.h:42:30: note: in expansion of macro 'PARAMS'
| 42 | PARAMS(proto), \
| | ^~~~~~
| lttng-modules-2.13.4/src/probes/../../include/instrumentation/events/compaction.h:101:1: note: in expansion of macro 'LTTNG_TRACEPOINT_EVENT_MAP'
| 101 | LTTNG_TRACEPOINT_EVENT_MAP(mm_compaction_migratepages,
| | ^~~~~~~~~~~~~~~~~~~~~~~~~~
| lttng-modules-2.13.4/src/probes/../../include/instrumentation/events/compaction.h:105:9: note: in expansion of macro 'TP_PROTO'
| 105 | TP_PROTO(struct compact_control *cc,
| | ^~~~~~~~
| lttng-modules-2.13.4/src/probes/../../include/instrumentation/events/compaction.h:112:57: error: invalid use of undefined type 'struct compact_control'
...
| lttng-modules-2.13.4/src/probes/../../include/instrumentation/events/compaction.h:108:25: warning: 'struct compact_control' declared inside parameter list will not be visible outside of this definition or declaration
| 108 | TP_PROTO(struct compact_control *cc,
| | ^~~~~~~~~~~~~~~
| lttng-modules-2.13.4/src/probes/../../include/lttng/tracepoint-event-impl.h:159:43: note: in definition of macro 'LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP'
| 159 | void __event_template_proto___##_template(_proto);
| | ^~~~~~
| lttng-modules-2.13.4/src/probes/../../include/lttng/tracepoint-event-impl.h:45:61: note: in expansion of macro 'PARAMS'
| 45 | LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(map, name, map, PARAMS(proto), PARAMS(args))
| | ^~~~~~
| lttng-modules-2.13.4/src/probes/../../include/instrumentation/events/compaction.h:104:1: note: in expansion of macro 'LTTNG_TRACEPOINT_EVENT_MAP'
| 104 | LTTNG_TRACEPOINT_EVENT_MAP(mm_compaction_migratepages,
| | ^~~~~~~~~~~~~~~~~~~~~~~~~~
| lttng-modules-2.13.4/src/probes/../../include/instrumentation/events/compaction.h:108:9: note: in expansion of macro 'TP_PROTO'
| 108 | TP_PROTO(struct compact_control *cc,
| | ^~~~~~~~
| lttng-modules-2.13.4/src/probes/../../include/lttng/tracepoint-event-impl.h:159:6: error: conflicting types for '__event_template_proto___compaction_migratepages'; have 'void(struct compact_control *, unsigned int)'
| 159 | void __event_template_proto___##_template(_proto);
| | ^~~~~~~~~~~~~~~~~~~~~~~~~
| lttng-modules-2.13.4/src/probes/../../include/lttng/tracepoint-event-impl.h:45:9: note: in expansion of macro 'LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP'
| 45 | LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(map, name, map, PARAMS(proto), PARAMS(args))
| | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The root cause appears to be that this particular mips kernel does not
have CONFIG_COMPACTION avaiable, and hence we end up with the struct
declaration within this tracepoint, and then conflicting types.
While putting the conditional around only compaction_migratepages seemed
sufficient to get the build working, it doesn't look like any of the
tracepoints should be valid, so we extend it to all definitions.
Upstream-Status: Submitted [https://lists.lttng.org/pipermail/lttng-dev/2022-August/030246.html]
(From OE-Core rev: e25f7b5ca83d3f025ef2235f2ebd8233013eb406)
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/qemu/qemu')
0 files changed, 0 insertions, 0 deletions