[lttng-dev] lttng-tools-2.10.6: Spawning consumerd failed
Jonathan Rajotte-Julien
jonathan.rajotte-julien at efficios.com
Fri May 17 15:48:26 EDT 2019
Hi,
You forgot to cc the mailing list. Adding it.
On Fri, May 17, 2019 at 04:50:02AM +0300, Zvi Vered wrote:
> Hi Janathan, All,
>
> I solved the path issue with
>
> export LTTNG_CONSUMERD32_BIN=/lib/lttng/libexec
> export LTTNG_CONSUMERD32_LIBDIR =/lib
> export LTTNG_SESSION_CONFIG_XSD_PATH=/share/lttng/...
This is a way to solve it, I would still recommend you fix it at the source
(proper cross build).
...
> ....
> DEBUG3 - 00:13:48.436226116 [1980/1980]: Looking for a kernel consumer at
> these locations: (in spawn_consumerd() at main.c:2429)
> DEBUG3 - 00:13:48.436252139 [1980/1980]: 1) NULL (in
> spawn_consumerd() at main.c:2430)
> DEBUG3 - 00:13:48.436256414 [1980/1980]: 2)
> /64_sw/git/zvi_vered/MY_PROJ/linux4.9.20/boot/rootfs/lib/lttng/libexec/lttng-consumerd
> (in spawn_consumerd() at main.c:2431)
> DEBUG3 - 00:13:48.436260543 [1980/1980]: 3) /lib/lttng/libexec (in
> spawn_consumerd() at main.c:2432)
> DEBUG3 - 00:13:48.436313492 [1980/1980]: Found location #3 (in
> spawn_consumerd() at main.c:2441)
> DEBUG1 - 00:13:48.436319027 [1980/1980]: Using kernel consumer at:
> /lib/lttng/libexec (in spawn_consumerd() at main.c:2448)
> PERROR - 00:13:48.436341261 [1980/1980]: Consumer execl(): Permission
> denied (in spawn_consumerd() at main.c:2539)
We found the consumerd in /lib/lttng/libexec/lttng-consumerd. Good.
We now try to execl the following:
/lib/lttng/libexec/lttng-consumerd -k --consumerd-cmd-sock <a_path> --consumerd-error-sock <b_path> --group root
And execl returns "Permission Denied".
Clearly, /lib/lttng/libexec/lttng-consumerd have some permissions problem.
"Permission denied" is linked to EACCES on my system.
asm-generic/errno-base.h
17:#define EACCES 13 /* Permission denied */
"man execve" list all the reasons why execl might return EACCES per "man execl":
EACCES Search permission is denied on a component of the path prefix of filename or the name of a script interpreter. (See also path_resolution(7).)
EACCES The file or a script interpreter is not a regular file.
EACCES Execute permission is denied for the file or a script or ELF interpreter.
EACCES The filesystem is mounted noexec.
One of them probably fit your current scenario.
Let us know how it goes.
Cheers
--
Jonathan Rajotte-Julien
EfficiOS
More information about the lttng-dev
mailing list