/* Skip NULL pointers */
if (!event)
continue;
+ if (event->version != SIDE_ABI_VERSION) {
+ printf("Error: event SIDE ABI version (%u) does not match the SIDE ABI version supported by the tracer (%u)\n",
+ event->version, SIDE_ABI_VERSION);
+ return;
+ }
printf("provider: %s, event: %s\n",
side_ptr_get(event->provider_name), side_ptr_get(event->event_name));
+ if (event->struct_size != side_offsetofend(struct side_event_description, side_event_description_orig_abi_last)) {
+ printf("Warning: Event %s.%s contains fields unknown to the tracer\n",
+ side_ptr_get(event->provider_name), side_ptr_get(event->event_name));
+ }
if (notif == SIDE_TRACER_NOTIFICATION_INSERT_EVENTS) {
if (event->nr_side_type_label > _NR_SIDE_TYPE_LABEL) {
printf("Warning: event %s:%s may contain unknown field types (%u unknown types)\n",