X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=tests%2Fcompile%2Ftest-app-ctx%2Fhello.c;h=26cca016df7d4c0a17f661bbac0fec34eb1c7a59;hb=e23004b595a319f5bfd6fbc9eda600edda1cfd02;hp=457dc2e1152e47c7fb8722c5a7b80ebce8c269a7;hpb=3b8bedd809f1a5b56da5fc101a90b44263b0f473;p=lttng-ust.git diff --git a/tests/compile/test-app-ctx/hello.c b/tests/compile/test-app-ctx/hello.c index 457dc2e1..26cca016 100644 --- a/tests/compile/test-app-ctx/hello.c +++ b/tests/compile/test-app-ctx/hello.c @@ -31,64 +31,65 @@ struct mmsghdr; #include #include /* Internal header. */ -#include +#include static __thread unsigned int test_count; +static void test_inc_count(void) { test_count++; } static -size_t test_get_size(struct lttng_ust_ctx_field *field, size_t offset) +size_t test_get_size(void *priv __attribute__((unused)), size_t offset) { int sel = test_count % _NR_LTTNG_UST_DYNAMIC_TYPES; size_t size = 0; - size += lttng_ust_lib_ring_buffer_align(offset, lttng_alignof(char)); + size += lttng_ust_lib_ring_buffer_align(offset, lttng_ust_rb_alignof(char)); size += sizeof(char); /* tag */ switch (sel) { case LTTNG_UST_DYNAMIC_TYPE_NONE: break; case LTTNG_UST_DYNAMIC_TYPE_S8: - size += lttng_ust_lib_ring_buffer_align(offset, lttng_alignof(int8_t)); + size += lttng_ust_lib_ring_buffer_align(offset, lttng_ust_rb_alignof(int8_t)); size += sizeof(int8_t); /* variant */ break; case LTTNG_UST_DYNAMIC_TYPE_S16: - size += lttng_ust_lib_ring_buffer_align(offset, lttng_alignof(int16_t)); + size += lttng_ust_lib_ring_buffer_align(offset, lttng_ust_rb_alignof(int16_t)); size += sizeof(int16_t); /* variant */ break; case LTTNG_UST_DYNAMIC_TYPE_S32: - size += lttng_ust_lib_ring_buffer_align(offset, lttng_alignof(int32_t)); + size += lttng_ust_lib_ring_buffer_align(offset, lttng_ust_rb_alignof(int32_t)); size += sizeof(int32_t); /* variant */ break; case LTTNG_UST_DYNAMIC_TYPE_S64: - size += lttng_ust_lib_ring_buffer_align(offset, lttng_alignof(int64_t)); + size += lttng_ust_lib_ring_buffer_align(offset, lttng_ust_rb_alignof(int64_t)); size += sizeof(int64_t); /* variant */ break; case LTTNG_UST_DYNAMIC_TYPE_U8: - size += lttng_ust_lib_ring_buffer_align(offset, lttng_alignof(uint8_t)); + size += lttng_ust_lib_ring_buffer_align(offset, lttng_ust_rb_alignof(uint8_t)); size += sizeof(uint8_t); /* variant */ break; case LTTNG_UST_DYNAMIC_TYPE_U16: - size += lttng_ust_lib_ring_buffer_align(offset, lttng_alignof(uint16_t)); + size += lttng_ust_lib_ring_buffer_align(offset, lttng_ust_rb_alignof(uint16_t)); size += sizeof(uint16_t); /* variant */ break; case LTTNG_UST_DYNAMIC_TYPE_U32: - size += lttng_ust_lib_ring_buffer_align(offset, lttng_alignof(uint32_t)); + size += lttng_ust_lib_ring_buffer_align(offset, lttng_ust_rb_alignof(uint32_t)); size += sizeof(uint32_t); /* variant */ break; case LTTNG_UST_DYNAMIC_TYPE_U64: - size += lttng_ust_lib_ring_buffer_align(offset, lttng_alignof(uint64_t)); + size += lttng_ust_lib_ring_buffer_align(offset, lttng_ust_rb_alignof(uint64_t)); size += sizeof(uint64_t); /* variant */ break; case LTTNG_UST_DYNAMIC_TYPE_FLOAT: - size += lttng_ust_lib_ring_buffer_align(offset, lttng_alignof(float)); + size += lttng_ust_lib_ring_buffer_align(offset, lttng_ust_rb_alignof(float)); size += sizeof(float); /* variant */ break; case LTTNG_UST_DYNAMIC_TYPE_DOUBLE: - size += lttng_ust_lib_ring_buffer_align(offset, lttng_alignof(double)); + size += lttng_ust_lib_ring_buffer_align(offset, lttng_ust_rb_alignof(double)); size += sizeof(double); /* variant */ break; case LTTNG_UST_DYNAMIC_TYPE_STRING: @@ -102,15 +103,14 @@ size_t test_get_size(struct lttng_ust_ctx_field *field, size_t offset) } static -void test_record(struct lttng_ust_ctx_field *field, +void test_record(void *priv __attribute__((unused)), struct lttng_ust_lib_ring_buffer_ctx *ctx, struct lttng_ust_channel_buffer *lttng_chan_buf) { int sel = test_count % _NR_LTTNG_UST_DYNAMIC_TYPES; char sel_char = (char) sel; - lttng_ust_lib_ring_buffer_align_ctx(ctx, lttng_alignof(char)); - lttng_chan_buf->ops->event_write(ctx, &sel_char, sizeof(sel_char)); + lttng_chan_buf->ops->event_write(ctx, &sel_char, sizeof(sel_char), lttng_ust_rb_alignof(char)); switch (sel) { case LTTNG_UST_DYNAMIC_TYPE_NONE: break; @@ -118,86 +118,76 @@ void test_record(struct lttng_ust_ctx_field *field, { int8_t v = -8; - lttng_ust_lib_ring_buffer_align_ctx(ctx, lttng_alignof(v)); - lttng_chan_buf->ops->event_write(ctx, &v, sizeof(v)); + lttng_chan_buf->ops->event_write(ctx, &v, sizeof(v), lttng_ust_rb_alignof(v)); break; } case LTTNG_UST_DYNAMIC_TYPE_S16: { int16_t v = -16; - lttng_ust_lib_ring_buffer_align_ctx(ctx, lttng_alignof(v)); - lttng_chan_buf->ops->event_write(ctx, &v, sizeof(v)); + lttng_chan_buf->ops->event_write(ctx, &v, sizeof(v), lttng_ust_rb_alignof(v)); break; } case LTTNG_UST_DYNAMIC_TYPE_S32: { int32_t v = -32; - lttng_ust_lib_ring_buffer_align_ctx(ctx, lttng_alignof(v)); - lttng_chan_buf->ops->event_write(ctx, &v, sizeof(v)); + lttng_chan_buf->ops->event_write(ctx, &v, sizeof(v), lttng_ust_rb_alignof(v)); break; } case LTTNG_UST_DYNAMIC_TYPE_S64: { int64_t v = -64; - lttng_ust_lib_ring_buffer_align_ctx(ctx, lttng_alignof(v)); - lttng_chan_buf->ops->event_write(ctx, &v, sizeof(v)); + lttng_chan_buf->ops->event_write(ctx, &v, sizeof(v), lttng_ust_rb_alignof(v)); break; } case LTTNG_UST_DYNAMIC_TYPE_U8: { uint8_t v = 8; - lttng_ust_lib_ring_buffer_align_ctx(ctx, lttng_alignof(v)); - lttng_chan_buf->ops->event_write(ctx, &v, sizeof(v)); + lttng_chan_buf->ops->event_write(ctx, &v, sizeof(v), lttng_ust_rb_alignof(v)); break; } case LTTNG_UST_DYNAMIC_TYPE_U16: { uint16_t v = 16; - lttng_ust_lib_ring_buffer_align_ctx(ctx, lttng_alignof(v)); - lttng_chan_buf->ops->event_write(ctx, &v, sizeof(v)); + lttng_chan_buf->ops->event_write(ctx, &v, sizeof(v), lttng_ust_rb_alignof(v)); break; } case LTTNG_UST_DYNAMIC_TYPE_U32: { uint32_t v = 32; - lttng_ust_lib_ring_buffer_align_ctx(ctx, lttng_alignof(v)); - lttng_chan_buf->ops->event_write(ctx, &v, sizeof(v)); + lttng_chan_buf->ops->event_write(ctx, &v, sizeof(v), lttng_ust_rb_alignof(v)); break; } case LTTNG_UST_DYNAMIC_TYPE_U64: { uint64_t v = 64; - lttng_ust_lib_ring_buffer_align_ctx(ctx, lttng_alignof(v)); - lttng_chan_buf->ops->event_write(ctx, &v, sizeof(v)); + lttng_chan_buf->ops->event_write(ctx, &v, sizeof(v), lttng_ust_rb_alignof(v)); break; } case LTTNG_UST_DYNAMIC_TYPE_FLOAT: { float f = 22322.0; - lttng_ust_lib_ring_buffer_align_ctx(ctx, lttng_alignof(f)); - lttng_chan_buf->ops->event_write(ctx, &f, sizeof(f)); + lttng_chan_buf->ops->event_write(ctx, &f, sizeof(f), lttng_ust_rb_alignof(f)); break; } case LTTNG_UST_DYNAMIC_TYPE_DOUBLE: { double d = 2.0; - lttng_ust_lib_ring_buffer_align_ctx(ctx, lttng_alignof(d)); - lttng_chan_buf->ops->event_write(ctx, &d, sizeof(d)); + lttng_chan_buf->ops->event_write(ctx, &d, sizeof(d), lttng_ust_rb_alignof(d)); break; } case LTTNG_UST_DYNAMIC_TYPE_STRING: { const char *str = "teststr"; - lttng_chan_buf->ops->event_write(ctx, str, strlen(str) + 1); + lttng_chan_buf->ops->event_write(ctx, str, strlen(str) + 1, 1); break; } default: @@ -206,7 +196,7 @@ void test_record(struct lttng_ust_ctx_field *field, } static -void test_get_value(struct lttng_ust_ctx_field *field, +void test_get_value(void *priv __attribute__((unused)), struct lttng_ust_ctx_value *value) { int sel = test_count % _NR_LTTNG_UST_DYNAMIC_TYPES; @@ -253,20 +243,23 @@ void test_get_value(struct lttng_ust_ctx_field *field, } } +static char myprovider_name[] = "$app.myprovider"; struct lttng_ust_context_provider myprovider = { .struct_size = sizeof(struct lttng_ust_context_provider), - .name = "$app.myprovider", + .name = myprovider_name, .get_size = test_get_size, .record = test_record, .get_value = test_get_value, }; -void inthandler(int sig) +static +void inthandler(int sig __attribute__((unused))) { printf("in SIGUSR1 handler\n"); tracepoint(ust_tests_hello, tptest_sighandler); } +static int init_int_handler(void) { int result; @@ -294,10 +287,9 @@ int init_int_handler(void) return 0; } -void test_inc_count(void); - int main(int argc, char **argv) { + struct lttng_ust_registered_context_provider *reg_provider; int i, netint; long values[] = { 1, 2, 3 }; char text[10] = "test"; @@ -311,7 +303,8 @@ int main(int argc, char **argv) if (argc == 2) delay = atoi(argv[1]); - if (lttng_ust_context_provider_register(&myprovider)) + reg_provider = lttng_ust_context_provider_register(&myprovider); + if (!reg_provider) abort(); fprintf(stderr, "Hello, World!\n"); @@ -326,7 +319,7 @@ int main(int argc, char **argv) test_inc_count(); //usleep(100000); } - lttng_ust_context_provider_unregister(&myprovider); + lttng_ust_context_provider_unregister(reg_provider); fprintf(stderr, " done.\n"); return 0; }