Add create session snapshot API in lttng-sessiond

This commit adds the "lttng_create_session_snapshot()" call to the API
which will create on the session daemon a session in snapshot mode
meaning that all channel will be in overwrite mode and mmap output.

Signed-off-by: David Goulet <dgoulet@efficios.com>
Implement lttng create --snapshot command

This is to ease the life of the user creating a session in snapshot
mode using the new API call.

Signed-off-by: David Goulet <dgoulet@efficios.com>
Fix: snapshot support for UST and kernel in same session

Signed-off-by: David Goulet <dgoulet@efficios.com>
Tests: per-UID UST snapshot

Signed-off-by: Julien Desfossez <jdesfossez@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Support snapshot max-size limitation

This features allows the user to specify a maximum size for the snapshot
collected. The maximum stream size is split equally by the total number
of streams active at the time of the snapshot record across all the
domains. The metadata is not limited and its size is not taken into
account in the maximum stream size computation.

Signed-off-by: Julien Desfossez <jdesfossez@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Fix: support temporary snapshot max size and name

Signed-off-by: David Goulet <dgoulet@efficios.com>
Add snapshot mode to lttng list session

Signed-off-by: David Goulet <dgoulet@efficios.com>
Bump UST ABI major version for 2.3 release

Signed-off-by: David Goulet <dgoulet@efficios.com>
New UST default buffers is now per UID

Acked-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Update man page with snapshot command

Signed-off-by: David Goulet <dgoulet@efficios.com>
Support del-output with an output name

Signed-off-by: David Goulet <dgoulet@efficios.com>
Fix: zeroed snapshot output at init

Signed-off-by: David Goulet <dgoulet@efficios.com>
Fix: RCU read side lock unbalanced

Signed-off-by: David Goulet <dgoulet@efficios.com>
Add the number of snapshot taken to the output path

This number of snapshots is per session.

Signed-off-by: David Goulet <dgoulet@efficios.com>
Fix: snapshot returned valid LTTNG_ERR code

Signed-off-by: David Goulet <dgoulet@efficios.com>