Re: [PATCH 2/2] ftrace: Unify effect of writing to trace_optionsand option/*

From: Li Zefan
Date: Thu Aug 06 2009 - 01:06:34 EST


Zhaolei wrote:
> "echo noglobal-clock > trace_options" can be used to change trace
> clock but "echo 0 > options/global-clock" can't.
>
> We can fix it by using set_tracer_flags() in trace_options_core_write().
>

Nice catch.

> Signed-off-by: Zhao Lei <zhaolei@xxxxxxxxxxxxxx>
> ---
> kernel/trace/trace.c | 5 ++---
> 1 files changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
> index 464b7bb..2fa2bac 100644
> --- a/kernel/trace/trace.c
> +++ b/kernel/trace/trace.c
> @@ -3893,12 +3893,11 @@ trace_options_core_write(struct file *filp, const char __user *ubuf, size_t cnt,
>
> switch (val) {
> case 0:
> - trace_flags &= ~(1 << index);
> + set_tracer_flags(1 << index, 0);
> break;
> case 1:
> - trace_flags |= 1 << index;
> + set_tracer_flags(1 << index, 1);
> break;
> -
> default:
> return -EINVAL;
> }

The whole switch statement can be simplied:

if (val != 0 || val != 1)
return -EINVAL;
set_tracer_flags(1 << index, val);


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/