projects
/
lttng-modules.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
tracepoint: Refactor representation of nested types
[lttng-modules.git]
/
lttng-filter-interpreter.c
diff --git
a/lttng-filter-interpreter.c
b/lttng-filter-interpreter.c
index 3dad6cc6650830f2990ec410f09b523dd59573d3..c7ce7d331bd2dc4eb8639751d7b38377ed451fca 100644
(file)
--- a/
lttng-filter-interpreter.c
+++ b/
lttng-filter-interpreter.c
@@
-288,7
+288,7
@@
static int context_get_index(struct lttng_probe_ctx *lttng_probe_ctx,
switch (field->type.atype) {
case atype_integer:
ctx_field->get_value(ctx_field, lttng_probe_ctx, &v);
switch (field->type.atype) {
case atype_integer:
ctx_field->get_value(ctx_field, lttng_probe_ctx, &v);
- if (field->type.u.
basic.
integer.signedness) {
+ if (field->type.u.integer.signedness) {
ptr->object_type = OBJECT_TYPE_S64;
ptr->u.s64 = v.s64;
ptr->ptr = &ptr->u.s64;
ptr->object_type = OBJECT_TYPE_S64;
ptr->u.s64 = v.s64;
ptr->ptr = &ptr->u.s64;
@@
-298,10
+298,10
@@
static int context_get_index(struct lttng_probe_ctx *lttng_probe_ctx,
ptr->ptr = &ptr->u.u64;
}
break;
ptr->ptr = &ptr->u.u64;
}
break;
- case atype_enum:
+ case atype_enum
_nestable
:
{
const struct lttng_integer_type *itype =
{
const struct lttng_integer_type *itype =
- &field->type.u.
basic.enumeration.container_type
;
+ &field->type.u.
enum_nestable.container_type->u.integer
;
ctx_field->get_value(ctx_field, lttng_probe_ctx, &v);
if (itype->signedness) {
ctx_field->get_value(ctx_field, lttng_probe_ctx, &v);
if (itype->signedness) {
@@
-315,12
+315,12
@@
static int context_get_index(struct lttng_probe_ctx *lttng_probe_ctx,
}
break;
}
}
break;
}
- case atype_array:
- if (
field->type.u.array.elem_type.atype != atype_integer
) {
+ case atype_array
_nestable
:
+ if (
!lttng_is_bytewise_integer(field->type.u.array_nestable.elem_type)
) {
printk(KERN_WARNING "Array nesting only supports integer types.\n");
return -EINVAL;
}
printk(KERN_WARNING "Array nesting only supports integer types.\n");
return -EINVAL;
}
- if (field->type.u.array
.elem_type.u.basic
.integer.encoding == lttng_encode_none) {
+ if (field->type.u.array
_nestable.elem_type->u
.integer.encoding == lttng_encode_none) {
printk(KERN_WARNING "Only string arrays are supported for contexts.\n");
return -EINVAL;
}
printk(KERN_WARNING "Only string arrays are supported for contexts.\n");
return -EINVAL;
}
@@
-328,12
+328,12
@@
static int context_get_index(struct lttng_probe_ctx *lttng_probe_ctx,
ctx_field->get_value(ctx_field, lttng_probe_ctx, &v);
ptr->ptr = v.str;
break;
ctx_field->get_value(ctx_field, lttng_probe_ctx, &v);
ptr->ptr = v.str;
break;
- case atype_sequence:
- if (
field->type.u.sequence.elem_type.atype != atype_integer
) {
+ case atype_sequence
_nestable
:
+ if (
!lttng_is_bytewise_integer(field->type.u.sequence_nestable.elem_type)
) {
printk(KERN_WARNING "Sequence nesting only supports integer types.\n");
return -EINVAL;
}
printk(KERN_WARNING "Sequence nesting only supports integer types.\n");
return -EINVAL;
}
- if (field->type.u.sequence
.elem_type.u.basic
.integer.encoding == lttng_encode_none) {
+ if (field->type.u.sequence
_nestable.elem_type->u
.integer.encoding == lttng_encode_none) {
printk(KERN_WARNING "Only string sequences are supported for contexts.\n");
return -EINVAL;
}
printk(KERN_WARNING "Only string sequences are supported for contexts.\n");
return -EINVAL;
}
@@
-341,20
+341,17
@@
static int context_get_index(struct lttng_probe_ctx *lttng_probe_ctx,
ctx_field->get_value(ctx_field, lttng_probe_ctx, &v);
ptr->ptr = v.str;
break;
ctx_field->get_value(ctx_field, lttng_probe_ctx, &v);
ptr->ptr = v.str;
break;
- case atype_array_bitfield:
- printk(KERN_WARNING "Bitfield array type is not supported.\n");
- return -EINVAL;
- case atype_sequence_bitfield:
- printk(KERN_WARNING "Bitfield sequence type is not supported.\n");
- return -EINVAL;
case atype_string:
ptr->object_type = OBJECT_TYPE_STRING;
ctx_field->get_value(ctx_field, lttng_probe_ctx, &v);
ptr->ptr = v.str;
break;
case atype_string:
ptr->object_type = OBJECT_TYPE_STRING;
ctx_field->get_value(ctx_field, lttng_probe_ctx, &v);
ptr->ptr = v.str;
break;
- case atype_struct:
+ case atype_struct
_nestable
:
printk(KERN_WARNING "Structure type cannot be loaded.\n");
return -EINVAL;
printk(KERN_WARNING "Structure type cannot be loaded.\n");
return -EINVAL;
+ case atype_variant_nestable:
+ printk(KERN_WARNING "Variant type cannot be loaded.\n");
+ return -EINVAL;
default:
printk(KERN_WARNING "Unknown type: %d", (int) field->type.atype);
return -EINVAL;
default:
printk(KERN_WARNING "Unknown type: %d", (int) field->type.atype);
return -EINVAL;
This page took
0.02485 seconds
and
4
git commands to generate.