X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=src%2Flib%2Flttng-ust-ctl%2Fustctl.c;h=137bf43347d16f0c7dd81776b29590cfdfd72282;hb=baa8acf3af23bc5d9373144bef8147744b5ae01f;hp=817f89e426da57f5f91408b076b84eb543928c8a;hpb=74cc1f594e05b5a3524529f018d85efaad53f9a3;p=lttng-ust.git diff --git a/src/lib/lttng-ust-ctl/ustctl.c b/src/lib/lttng-ust-ctl/ustctl.c index 817f89e4..137bf433 100644 --- a/src/lib/lttng-ust-ctl/ustctl.c +++ b/src/lib/lttng-ust-ctl/ustctl.c @@ -16,6 +16,7 @@ #include #include #include +#include #include "common/logging.h" #include "common/ustcomm.h" @@ -2124,11 +2125,11 @@ int ustctl_recv_reg_msg(int sock, return len; if (reg_msg.magic == LTTNG_UST_ABI_COMM_MAGIC) { - *byte_order = BYTE_ORDER == BIG_ENDIAN ? - BIG_ENDIAN : LITTLE_ENDIAN; - } else if (reg_msg.magic == bswap_32(LTTNG_UST_ABI_COMM_MAGIC)) { - *byte_order = BYTE_ORDER == BIG_ENDIAN ? - LITTLE_ENDIAN : BIG_ENDIAN; + *byte_order = LTTNG_UST_BYTE_ORDER == LTTNG_UST_BIG_ENDIAN ? + LTTNG_UST_BIG_ENDIAN : LTTNG_UST_LITTLE_ENDIAN; + } else if (reg_msg.magic == lttng_ust_bswap_32(LTTNG_UST_ABI_COMM_MAGIC)) { + *byte_order = LTTNG_UST_BYTE_ORDER == LTTNG_UST_BIG_ENDIAN ? + LTTNG_UST_LITTLE_ENDIAN : LTTNG_UST_BIG_ENDIAN; } else { return -LTTNG_UST_ERR_INVAL_MAGIC; } @@ -2901,13 +2902,16 @@ int ustctl_counter_clear(struct ustctl_daemon_counter *counter, } static -void ustctl_init(void) +void lttng_ust_ctl_ctor(void) __attribute__((constructor)); static -void ustctl_init(void) +void lttng_ust_ctl_ctor(void) { - lttng_ust_logging_init(); - lttng_ust_getenv_init(); /* Needs lttng_ust_logging_init() to be completed. */ + /* + * Call the liblttng-ust-common constructor to ensure it runs first. + */ + lttng_ust_common_ctor(); + lttng_ust_clock_init(); lttng_ust_ring_buffer_clients_init(); lttng_ust_counter_clients_init();