lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Mon, 26 Jun 2017 12:15:18 -0700
From:   Joel Fernandes <joelaf@...gle.com>
To:     Steven Rostedt <rostedt@...dmis.org>
Cc:     LKML <linux-kernel@...r.kernel.org>,
        Michael Sartain <mikesart@...il.com>, kernel-team@...roid.com,
        Ingo Molnar <mingo@...hat.com>
Subject: Re: [PATCH v4 1/3] tracing: Add support for recording tgid of tasks

On Mon, Jun 26, 2017 at 12:12 PM, Steven Rostedt <rostedt@...dmis.org> wrote:
> On Mon, 26 Jun 2017 12:02:12 -0700
> Joel Fernandes <joelaf@...gle.com> wrote:
>
>> >> diff --git a/kernel/trace/trace_events.c b/kernel/trace/trace_events.c
>> >> index e7973e10398c..240c6df95ea6 100644
>> >> --- a/kernel/trace/trace_events.c
>> >> +++ b/kernel/trace/trace_events.c
>> >> @@ -343,6 +343,28 @@ void trace_event_enable_cmd_record(bool enable)
>> >>       mutex_unlock(&event_mutex);
>> >>  }
>> >>
>> >> +void trace_event_enable_tgid_record(bool enable)
>> >
>> > This should return a value.
>> >
>> >> +{
>> >> +     struct trace_event_file *file;
>> >> +     struct trace_array *tr;
>> >> +
>> >> +     mutex_lock(&event_mutex);
>> >> +     do_for_each_event_file(tr, file) {
>> >> +             if (!(file->flags & EVENT_FILE_FL_ENABLED))
>> >> +                     continue;
>> >> +
>> >> +             if (enable) {
>> >> +                     tracing_start_tgid_record();
>> >
>> > If we fail to start, the bit should not be set, and we should return
>> > failure. Note, it can only fail on the first try, as once it is
>> > allocated, you don't need to worry about it failing. Thus, if it fails,
>> > break out of the loop now and return failure.
>> >
>>
>> That seems Ok with me to do, I think a valid point.
>>
>> I think that I should do it in the second call to
>> tracing_start_tgid_record too then (__ftrace_event_enable_disable) to
>> error out if the allocation fails.
>>
>> While going this code I again, I noticed another potential issue in
>> __ftrace_event_enable_disable
>
> Thinking about this more. Just allocate the array as soon as the option
> is enabled, regardless if an trace event is set. That will make it a
> lot simpler. If it fails to allocate, you can simply bail out with
> -ENOMEM, and the setting of the option will return that. Then we can
> even remove the WARN_ONCE() at allocation failure, as the user will
> know what happened.

Agreed!

Thanks,
Joel

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ