X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=lttng-abi.h;h=51d60e5be8ce13d14f4a520cc53f16440b959e35;hb=ac7d62e6b5826dbec3fbc399531d52866ca490a0;hp=5c5d8256be55b654be4fb8fe235089ffa4b278c7;hpb=d1f652f8d4f6d1de8f6d32ae8711d6469c38892c;p=lttng-modules.git diff --git a/lttng-abi.h b/lttng-abi.h index 5c5d8256..51d60e5b 100644 --- a/lttng-abi.h +++ b/lttng-abi.h @@ -17,7 +17,7 @@ * should be increased when an incompatible ABI change is done. */ #define LTTNG_MODULES_ABI_MAJOR_VERSION 2 -#define LTTNG_MODULES_ABI_MINOR_VERSION 4 +#define LTTNG_MODULES_ABI_MINOR_VERSION 5 #define LTTNG_KERNEL_SYM_NAME_LEN 256 #define LTTNG_KERNEL_SESSION_NAME_LEN 256 @@ -90,6 +90,31 @@ struct lttng_kernel_event_callsite { } u; } __attribute__((packed)); +enum lttng_kernel_syscall_entryexit { + LTTNG_KERNEL_SYSCALL_ENTRYEXIT = 0, + LTTNG_KERNEL_SYSCALL_ENTRY = 1, /* Not implemented. */ + LTTNG_KERNEL_SYSCALL_EXIT = 2, /* Not implemented. */ +}; + +enum lttng_kernel_syscall_abi { + LTTNG_KERNEL_SYSCALL_ABI_ALL = 0, + LTTNG_KERNEL_SYSCALL_ABI_NATIVE = 1, /* Not implemented. */ + LTTNG_KERNEL_SYSCALL_ABI_COMPAT = 2, /* Not implemented. */ +}; + +enum lttng_kernel_syscall_match { + LTTNG_SYSCALL_MATCH_NAME = 0, + LTTNG_SYSCALL_MATCH_NR = 1, /* Not implemented. */ +}; + +struct lttng_kernel_syscall { + uint8_t entryexit; /* enum lttng_kernel_syscall_entryexit */ + uint8_t abi; /* enum lttng_kernel_syscall_abi */ + uint8_t match; /* enum lttng_kernel_syscall_match */ + uint8_t padding; + uint32_t nr; /* For LTTNG_SYSCALL_MATCH_NR */ +} __attribute__((packed)); + /* * For syscall tracing, name = "*" means "enable all". */ @@ -106,6 +131,7 @@ struct lttng_kernel_event { struct lttng_kernel_kprobe kprobe; struct lttng_kernel_function_tracer ftrace; struct lttng_kernel_uprobe uprobe; + struct lttng_kernel_syscall syscall; char padding[LTTNG_KERNEL_EVENT_PADDING2]; } u; } __attribute__((packed));