[AC_MSG_ERROR([liburcu 0.5.4 or newer is needed])], [[#include <urcu/list.h>]]
)
++<<<<<<< HEAD
+# Check liburcu
+AC_CHECK_DECL([caa_get_cycles], [],
+ [AC_MSG_ERROR([liburcu 0.5.4 or newer is needed])], [[#include <urcu/arch.h>]]
++=======
+ # Check liburcu wfqueue.h
+ AC_CHECK_DECL([cds_wfq_init], [],
+ [AC_MSG_ERROR([liburcu 0.5.4 or newer is needed])], [[#include <urcu/wfqueue.h>]]
++>>>>>>> master
)
AC_PROG_CC
#include "traceable-app.h"
#include "ust-ctl.h"
#include "utils.h"
+ #include "ust-comm.h"
+#include "benchmark.h"
+
/* Const values */
const char default_home_dir[] = DEFAULT_HOME_DIR;
const char default_tracing_group[] = LTTNG_DEFAULT_TRACING_GROUP;
{
int sock = 0, ret;
struct pollfd pollfd[2];
+ /*
+ * Get allocated in this thread, enqueued to a global queue, dequeued and
+ * freed in the manage apps thread.
+ */
+ struct ust_command *ust_cmd = NULL;
- DBG("[thread] Manage apps started");
+ tracepoint(sessiond_th_apps_start);
+
+ /* TODO: Something more elegant is needed but fine for now */
+ /* FIXME: change all types to either uint8_t, uint32_t, uint64_t
+ * for 32-bit vs 64-bit compat processes. */
+ /* replicate in ust with version number */
+ struct {
+ int reg; /* 1:register, 0:unregister */
+ pid_t pid;
+ uid_t uid;
+ } reg_msg;
+
+ DBG("[thread] Manage application registration started");
ret = lttcomm_listen_unix_sock(apps_sock);
if (ret < 0) {