[ltt-dev] PATCH] Make lttcrl/lttd show error when channel not exist
Mathieu Desnoyers
compudj at krystal.dyndns.org
Tue Oct 21 10:05:19 EDT 2008
* Zhaolei (zhaolei at cn.fujitsu.com) wrote:
> Hello, Mathieu
>
> When run lttctl with a no-exist debugfs's channel dir,
> it don't report error:
> # lttctl -n channel1 -d -l /no_exist -t /tmp/channel1
> Linux Trace Toolkit Trace Control 0.54-10102008
>
> Controlling trace : channel1
>
> Linux Trace Toolkit Trace Daemon 0.54-10102008
>
> Reading from debugfs directory : /no_exist/channel1
> Writing to trace directory : /tmp/channel1
>
> #
>
> It is because lttd don't return error in daemon mode:
> # lttd -d -t /tmp/channel1 -c /no_exist
> Linux Trace Toolkit Trace Daemon 0.54-10102008
>
> Reading from debugfs directory : /no_exist
> Writing to trace directory : /tmp/channel1
>
> # echo $?
> 0
> #
>
> I moved daemon() after channels_init() and make it seems fixed.
> I tested patched program and haven't found problem:
> # lttctl -n channel1 -d -l /no_exist -t /tmp/channel1
> Linux Trace Toolkit Trace Control 0.54-10102008
>
> Controlling trace : channel1
>
> Linux Trace Toolkit Trace Daemon 0.54-10102008
>
> Reading from debugfs directory : /no_exist/channel1
> Writing to trace directory : /tmp/channel1
>
> /no_exist/channel1: No such file or directory
> Trace start error
> #
> #
> # lttd -d -t /tmp/channel1 -c /no_exist
> Linux Trace Toolkit Trace Daemon 0.54-10102008
>
> Reading from debugfs directory : /no_exist
> Writing to trace directory : /tmp/channel1
>
> /no_exist: No such file or directory
> #
> #
> # lttctl -n channel1 -d -l /mnt/debugfs/ltt/ -t /tmp/channel1
> Linux Trace Toolkit Trace Control 0.54-10102008
>
> Controlling trace : channel1
>
> Linux Trace Toolkit Trace Daemon 0.54-10102008
>
> Reading from debugfs directory : /mnt/debugfs/ltt//channel1
> Writing to trace directory : /tmp/channel1
>
> Creating trace subdirectory /tmp/channel1
> Adding inotify for channel /mnt/debugfs/ltt//channel1/
> Added inotify for channel /mnt/debugfs/ltt//channel1/, wd 1
> Channel file : /mnt/debugfs/ltt//channel1/cpu_0
> Opening file.
> Channel file : /mnt/debugfs/ltt//channel1/control
> Entering channel subdirectory...
> Creating trace subdirectory /tmp/channel1/control
> Adding inotify for channel /mnt/debugfs/ltt//channel1/control/
> Added inotify for channel /mnt/debugfs/ltt//channel1/control/, wd 2
> Channel file : /mnt/debugfs/ltt//channel1/control/network_0
> Opening file.
> Channel file : /mnt/debugfs/ltt//channel1/control/modules_0
> Opening file.
> Channel file : /mnt/debugfs/ltt//channel1/control/processes_0
> Opening file.
> Channel file : /mnt/debugfs/ltt//channel1/control/interrupts_0
> Opening file.
> Channel file : /mnt/debugfs/ltt//channel1/control/metadata_0
> Opening file.
> #
>
> Cound you review it?
>
> Btw, this patch will make lttctl and lttv show more detail message, is it necessary to cut them?
>
Good idea. I think it would be good to add a "-v" (verbose) option to
lttd. Could you resubmit a patch that includes this change ?
Thanks,
Mathieu
> Signed-off-by: Zhao Lei <zhaolei at cn.fujitsu.com>
> ---
> diff -Nur ltt-control-0.54-10102008.org/lttd/lttd.c ltt-control-0.54-10102008/lttd/lttd.c
> --- ltt-control-0.54-10102008.org/lttd/lttd.c 2008-10-15 15:29:54.000000000 +0800
> +++ ltt-control-0.54-10102008/lttd/lttd.c 2008-10-21 13:15:06.000000000 +0800
> @@ -911,15 +911,6 @@
>
> show_info();
>
> - if(daemon_mode) {
> - ret = daemon(0, 0);
> -
> - if(ret == -1) {
> - perror("An error occured while daemonizing.");
> - exit(-1);
> - }
> - }
> -
> /* Connect the signal handlers */
> act.sa_handler = handler;
> act.sa_flags = 0;
> @@ -934,6 +925,15 @@
> if(ret = channels_init())
> return ret;
>
> + if(daemon_mode) {
> + ret = daemon(0, 0);
> +
> + if(ret == -1) {
> + perror("An error occured while daemonizing.");
> + exit(-1);
> + }
> + }
> +
> tids = malloc(sizeof(pthread_t) * num_threads);
> for(i=0; i<num_threads; i++) {
>
>
>
>
> _______________________________________________
> ltt-dev mailing list
> ltt-dev at lists.casi.polymtl.ca
> http://lists.casi.polymtl.ca/cgi-bin/mailman/listinfo/ltt-dev
>
--
Mathieu Desnoyers
OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68
More information about the lttng-dev
mailing list