X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=probes%2Flttng-types.h;h=f6b4785fb77c1eb4e900e3d3fc6ab8efec41ec67;hb=369708f464bedc0682151df9308cebfa14dbdb2b;hp=cbe1dea1c4f4524624cc58ab358df3848d509589;hpb=c0edae1dda4cc03efda4790b57db0c3f9684486f;p=lttng-modules.git diff --git a/probes/lttng-types.h b/probes/lttng-types.h index cbe1dea1..f6b4785f 100644 --- a/probes/lttng-types.h +++ b/probes/lttng-types.h @@ -1,3 +1,12 @@ +/* SPDX-License-Identifier: (GPL-2.0-only or LGPL-2.1-only) + * + * probes/lttng-types.h + * + * LTTng types. + * + * Copyright (C) 2010-2012 Mathieu Desnoyers + */ + /* * Protect against multiple inclusion of structure declarations, but run the * stages below each time. @@ -6,34 +15,13 @@ #define _LTTNG_PROBES_LTTNG_TYPES_H #include -#include "lttng.h" -#include "../ltt-events.h" - -#ifdef __KERNEL__ -# include -# ifdef __BIG_ENDIAN -# define __BYTE_ORDER __BIG_ENDIAN -# elif defined(__LITTLE_ENDIAN) -# define __BYTE_ORDER __LITTLE_ENDIAN -# else -# error "unknown endianness" -# endif -#ifndef __BIG_ENDIAN -# define __BIG_ENDIAN 4321 -#endif -#ifndef __LITTLE_ENDIAN -# define __LITTLE_ENDIAN 1234 -#endif -#else -# include -#endif - -void lttng_print_event_type(struct seq_file *m, unsigned int indent, - const struct lttng_type *type); +#include +#include +#include +#include #endif /* _LTTNG_PROBES_LTTNG_TYPES_H */ - /* Export enumerations */ #ifdef STAGE_EXPORT_ENUMS @@ -63,58 +51,15 @@ void lttng_print_event_type(struct seq_file *m, unsigned int indent, #ifdef STAGE_EXPORT_TYPES -#undef TRACE_EVENT_TYPE___integer_ext -#define TRACE_EVENT_TYPE___integer_ext(_name, _byte_order) \ - { \ - .atype = atype_integer, \ - .name = #_name, \ - .u.integer.size = sizeof(_name) * 8, \ - .u.integer.alignment = __alignof__(_name) * 8,\ - .u.integer.signedness = is_signed_type(_name),\ - .u.integer.reverse_byte_order = ((_byte_order) != __BYTE_ORDER),\ - }, - -#undef TRACE_EVENT_TYPE___integer -#define TRACE_EVENT_TYPE___integer(_name, _unused) \ - TRACE_EVENT_TYPE___integer_ext(_name, __BYTE_ORDER) - #undef TRACE_EVENT_TYPE___enum -#define TRACE_EVENT_TYPE___enum(_name, _parent_type) \ - { \ - .atype = atype_enum, \ - .name = #_name, \ - .u.enumeration.parent_type = #_parent_type, \ - .u.enumeration.def.entries = __trace_event_enum_##_name, \ - .u.enumeration.def.len = ARRAY_SIZE(__trace_event_enum_##_name), \ +#define TRACE_EVENT_TYPE___enum(_name, _container_type) \ + { \ + .name = #_name, \ + .container_type = __type_integer(_container_type, 0, 0, -1, __BYTE_ORDER, 10, none), \ + .entries = __trace_event_enum_##_name, \ + .len = ARRAY_SIZE(__trace_event_enum_##_name), \ }, -#undef TRACE_EVENT_TYPE___array -#define TRACE_EVENT_TYPE___array(_name, _elem_type, _length) \ - { \ - .atype = atype_array, \ - .name = #_name, \ - .u.array.elem_type = #_elem_type, \ - .u.array.length = _length, \ - }, - -#undef TRACE_EVENT_TYPE___sequence -#define TRACE_EVENT_TYPE___sequence(_name, _elem_type, _length_type) \ - { \ - .atype = atype_sequence, \ - .name = #_name, \ - .u.sequence.elem_type = #_elem_type, \ - .u.sequence.length_type = #_length_type, \ - }, - -#undef TRACE_EVENT_TYPE___string -#define TRACE_EVENT_TYPE___string(_name, _encoding) \ - { \ - .atype = atype_string, \ - .name = #_name, \ - .u.string.encoding = lttng_encode_##_encoding,\ - }, - - /* Local declaration */ #undef TRACE_EVENT_TYPE #define TRACE_EVENT_TYPE(_name, _abstract_type, args...) \