All of lore.kernel.org
 help / color / mirror / Atom feed
From: Joel Fernandes <joelaf@google.com>
To: Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>
Cc: Joel Fernandes <joel@joelfernandes.org>,
	Steven Rostedt <rostedt@goodmis.org>,
	Ingo Molnar <mingo@redhat.com>, Laura Abbott <labbott@redhat.com>,
	Kees Cook <keescook@chromium.org>,
	Anton Vorontsov <anton@enomsg.org>,
	Rob Herring <robh+dt@kernel.org>,
	devicetree@vger.kernel.org, Colin Cross <ccross@android.com>,
	Jason Baron <jbaron@akamai.com>, Tony Luck <tony.luck@intel.com>,
	Arnd Bergmann <arnd@arndb.de>,
	Catalin Marinas <catalin.marinas@arm.com>,
	Will Deacon <will.deacon@arm.com>,
	Masami Hiramatsu <mhiramat@kernel.org>,
	Joe Perches <joe@perches.com>, Jim Cromie <jim.cromie@gmail.com>,
	Rajendra Nayak <rnayak@codeaurora.org>,
	Vivek Gautam <vivek.gautam@codeaurora.org>,
	Sibi Sankar <sibis@codeaurora.org>,
	moderated list:ARM64 PORT (AARCH64 AR
Subject: Re: [PATCH 2/6] pstore: Add event tracing support
Date: Tue, 25 Sep 2018 13:40:03 -0700	[thread overview]
Message-ID: <CAJWu+orL63-qfDL7B_Fs_Vx_rUr4fwn+DXK1mosmyM4jhj_BSw@mail.gmail.com> (raw)
In-Reply-To: <CAJWu+oorTRschpgLODgVv50S57U6Su9SM57WVrVKiQBSXEVC9w@mail.gmail.com>

On Tue, Sep 25, 2018 at 1:39 PM, Joel Fernandes <joelaf@google.com> wrote:
> On Tue, Sep 25, 2018 at 1:37 PM, Joel Fernandes <joelaf@google.com> wrote:
>> On Sun, Sep 23, 2018 at 8:33 AM, Sai Prakash Ranjan
>> <saiprakash.ranjan@codeaurora.org> wrote:
>>> On 9/22/2018 10:07 PM, Sai Prakash Ranjan wrote:
>>>>
>>>> On 9/22/2018 2:35 PM, Joel Fernandes wrote:
>>>>>
>>>>> On Sat, Sep 8, 2018 at 4:28 PM Sai Prakash Ranjan
>>>>> <saiprakash.ranjan@codeaurora.org> wrote:
>>>>>>
>>>>>>
>>>>>> +
>>>>>> +       trace_seq_init(&iter->seq);
>>>>>> +       iter->ent = fbuffer->entry;
>>>>>> +       event_call->event.funcs->trace(iter, 0, event);
>>>>>> +       trace_seq_putc(&iter->seq, 0);
>>>>>
>>>>>
>>>>> Would it be possible to store the binary trace record in the pstore
>>>>> buffer instead of outputting text? I suspect that will both be faster
>>>>> and less space.
>>>>>
>>>>
>>>> I will try this and come back.
>>>>
>>>
>>> Hi Joel,
>>>
>>> I removed trace_seq_putc and there is some improvement seen: 203 MB/s
>>>
>>> # dd if=/dev/zero of=/dev/null status=progress
>>> 12207371264 bytes (12 GB, 11 GiB) copied, 60 s, 203 MB/s^C
>>> 24171926+0 records in
>>> 24171926+0 records out
>>> 12376026112 bytes (12 GB, 12 GiB) copied, 60.8282 s, 203 MB/s
>>>
>>> This seems good when compared to 190 MB/s seen previously.
>>> If this is Ok, then I will spin v2 with changes suggested.
>>
>> Sorry for slow reply, yes that sounds good and a worthwhile perf improvement.
>>
>
> Well so I think you should still not use spinlock to synchronize and
> split the buffer. You could expand pstore_record to have a ts field or
> introduce a new API like ->write_percpu instead of write, or
> something. But I strongly feel you should lock. For ftrace function

Aargh, I meant you should *not* lock :-)

WARNING: multiple messages have this Message-ID (diff)
From: Joel Fernandes <joelaf@google.com>
To: Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>
Cc: Joel Fernandes <joel@joelfernandes.org>,
	Steven Rostedt <rostedt@goodmis.org>,
	Ingo Molnar <mingo@redhat.com>, Laura Abbott <labbott@redhat.com>,
	Kees Cook <keescook@chromium.org>,
	Anton Vorontsov <anton@enomsg.org>,
	Rob Herring <robh+dt@kernel.org>,
	devicetree@vger.kernel.org, Colin Cross <ccross@android.com>,
	Jason Baron <jbaron@akamai.com>, Tony Luck <tony.luck@intel.com>,
	Arnd Bergmann <arnd@arndb.de>,
	Catalin Marinas <catalin.marinas@arm.com>,
	Will Deacon <will.deacon@arm.com>,
	Masami Hiramatsu <mhiramat@kernel.org>,
	Joe Perches <joe@perches.com>, Jim Cromie <jim.cromie@gmail.com>,
	Rajendra Nayak <rnayak@codeaurora.org>,
	Vivek Gautam <vivek.gautam@codeaurora.org>,
	Sibi Sankar <sibis@codeaurora.org>,
	"moderated list:ARM64 PORT (AARCH64 ARCHITECTURE)" 
	<linux-arm-kernel@lists.infradead.org>,
	LKML <linux-kernel@vger.kernel.org>,
	linux-arm-msm@vger.kernel.org,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Ingo Molnar <mingo@kernel.org>,
	Tom Zanussi <tom.zanussi@linux.intel.com>,
	Prasad Sodagudi <psodagud@codeaurora.org>,
	tsoni@codeaurora.org, Bryan Huntsman <bryanh@codeaurora.org>,
	Tingwei Zhang <tingwei@codeaurora.org>,
	kernel-team <kernel-team@android.com>
Subject: Re: [PATCH 2/6] pstore: Add event tracing support
Date: Tue, 25 Sep 2018 13:40:03 -0700	[thread overview]
Message-ID: <CAJWu+orL63-qfDL7B_Fs_Vx_rUr4fwn+DXK1mosmyM4jhj_BSw@mail.gmail.com> (raw)
In-Reply-To: <CAJWu+oorTRschpgLODgVv50S57U6Su9SM57WVrVKiQBSXEVC9w@mail.gmail.com>

On Tue, Sep 25, 2018 at 1:39 PM, Joel Fernandes <joelaf@google.com> wrote:
> On Tue, Sep 25, 2018 at 1:37 PM, Joel Fernandes <joelaf@google.com> wrote:
>> On Sun, Sep 23, 2018 at 8:33 AM, Sai Prakash Ranjan
>> <saiprakash.ranjan@codeaurora.org> wrote:
>>> On 9/22/2018 10:07 PM, Sai Prakash Ranjan wrote:
>>>>
>>>> On 9/22/2018 2:35 PM, Joel Fernandes wrote:
>>>>>
>>>>> On Sat, Sep 8, 2018 at 4:28 PM Sai Prakash Ranjan
>>>>> <saiprakash.ranjan@codeaurora.org> wrote:
>>>>>>
>>>>>>
>>>>>> +
>>>>>> +       trace_seq_init(&iter->seq);
>>>>>> +       iter->ent = fbuffer->entry;
>>>>>> +       event_call->event.funcs->trace(iter, 0, event);
>>>>>> +       trace_seq_putc(&iter->seq, 0);
>>>>>
>>>>>
>>>>> Would it be possible to store the binary trace record in the pstore
>>>>> buffer instead of outputting text? I suspect that will both be faster
>>>>> and less space.
>>>>>
>>>>
>>>> I will try this and come back.
>>>>
>>>
>>> Hi Joel,
>>>
>>> I removed trace_seq_putc and there is some improvement seen: 203 MB/s
>>>
>>> # dd if=/dev/zero of=/dev/null status=progress
>>> 12207371264 bytes (12 GB, 11 GiB) copied, 60 s, 203 MB/s^C
>>> 24171926+0 records in
>>> 24171926+0 records out
>>> 12376026112 bytes (12 GB, 12 GiB) copied, 60.8282 s, 203 MB/s
>>>
>>> This seems good when compared to 190 MB/s seen previously.
>>> If this is Ok, then I will spin v2 with changes suggested.
>>
>> Sorry for slow reply, yes that sounds good and a worthwhile perf improvement.
>>
>
> Well so I think you should still not use spinlock to synchronize and
> split the buffer. You could expand pstore_record to have a ts field or
> introduce a new API like ->write_percpu instead of write, or
> something. But I strongly feel you should lock. For ftrace function

Aargh, I meant you should *not* lock :-)

WARNING: multiple messages have this Message-ID (diff)
From: joelaf@google.com (Joel Fernandes)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 2/6] pstore: Add event tracing support
Date: Tue, 25 Sep 2018 13:40:03 -0700	[thread overview]
Message-ID: <CAJWu+orL63-qfDL7B_Fs_Vx_rUr4fwn+DXK1mosmyM4jhj_BSw@mail.gmail.com> (raw)
In-Reply-To: <CAJWu+oorTRschpgLODgVv50S57U6Su9SM57WVrVKiQBSXEVC9w@mail.gmail.com>

On Tue, Sep 25, 2018 at 1:39 PM, Joel Fernandes <joelaf@google.com> wrote:
> On Tue, Sep 25, 2018 at 1:37 PM, Joel Fernandes <joelaf@google.com> wrote:
>> On Sun, Sep 23, 2018 at 8:33 AM, Sai Prakash Ranjan
>> <saiprakash.ranjan@codeaurora.org> wrote:
>>> On 9/22/2018 10:07 PM, Sai Prakash Ranjan wrote:
>>>>
>>>> On 9/22/2018 2:35 PM, Joel Fernandes wrote:
>>>>>
>>>>> On Sat, Sep 8, 2018 at 4:28 PM Sai Prakash Ranjan
>>>>> <saiprakash.ranjan@codeaurora.org> wrote:
>>>>>>
>>>>>>
>>>>>> +
>>>>>> +       trace_seq_init(&iter->seq);
>>>>>> +       iter->ent = fbuffer->entry;
>>>>>> +       event_call->event.funcs->trace(iter, 0, event);
>>>>>> +       trace_seq_putc(&iter->seq, 0);
>>>>>
>>>>>
>>>>> Would it be possible to store the binary trace record in the pstore
>>>>> buffer instead of outputting text? I suspect that will both be faster
>>>>> and less space.
>>>>>
>>>>
>>>> I will try this and come back.
>>>>
>>>
>>> Hi Joel,
>>>
>>> I removed trace_seq_putc and there is some improvement seen: 203 MB/s
>>>
>>> # dd if=/dev/zero of=/dev/null status=progress
>>> 12207371264 bytes (12 GB, 11 GiB) copied, 60 s, 203 MB/s^C
>>> 24171926+0 records in
>>> 24171926+0 records out
>>> 12376026112 bytes (12 GB, 12 GiB) copied, 60.8282 s, 203 MB/s
>>>
>>> This seems good when compared to 190 MB/s seen previously.
>>> If this is Ok, then I will spin v2 with changes suggested.
>>
>> Sorry for slow reply, yes that sounds good and a worthwhile perf improvement.
>>
>
> Well so I think you should still not use spinlock to synchronize and
> split the buffer. You could expand pstore_record to have a ts field or
> introduce a new API like ->write_percpu instead of write, or
> something. But I strongly feel you should lock. For ftrace function

Aargh, I meant you should *not* lock :-)

  reply	other threads:[~2018-09-25 20:40 UTC|newest]

Thread overview: 141+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-09-08 20:27 [PATCH 0/6] Tracing register accesses with pstore and dynamic debug Sai Prakash Ranjan
2018-09-08 20:27 ` Sai Prakash Ranjan
2018-09-08 20:27 ` [PATCH 1/6] dt-bindings: ramoops: Add event-size property Sai Prakash Ranjan
2018-09-08 20:27   ` Sai Prakash Ranjan
2018-09-17  5:45   ` Rob Herring
2018-09-17  5:45     ` Rob Herring
2018-09-17 17:15     ` Sai Prakash Ranjan
2018-09-17 17:15       ` Sai Prakash Ranjan
2018-09-08 20:27 ` [PATCH 2/6] pstore: Add event tracing support Sai Prakash Ranjan
2018-09-08 20:27   ` Sai Prakash Ranjan
2018-09-11 10:46   ` Sai Prakash Ranjan
2018-09-11 10:46     ` Sai Prakash Ranjan
2018-09-17 17:38     ` Stephen Boyd
2018-09-17 17:38       ` Stephen Boyd
2018-09-17 19:43       ` Sai Prakash Ranjan
2018-09-17 19:43         ` Sai Prakash Ranjan
2018-09-16  7:07   ` Sai Prakash Ranjan
2018-09-16  7:07     ` Sai Prakash Ranjan
2018-09-16 13:55     ` Joel Fernandes
2018-09-17 14:54       ` Kees Cook
2018-09-17 14:54         ` Kees Cook
2018-09-17 14:54         ` Kees Cook
2018-09-17 17:17         ` Sai Prakash Ranjan
2018-09-17 17:17           ` Sai Prakash Ranjan
2018-09-17 17:17           ` Sai Prakash Ranjan
2018-09-17 17:13       ` Sai Prakash Ranjan
2018-09-17 17:13         ` Sai Prakash Ranjan
2018-09-17 17:13         ` Sai Prakash Ranjan
2018-09-17 23:04     ` Steven Rostedt
2018-09-17 23:04       ` Steven Rostedt
2018-09-17 23:04       ` Steven Rostedt
2018-09-18  6:24       ` Sai Prakash Ranjan
2018-09-18  6:24         ` Sai Prakash Ranjan
2018-09-18  6:24         ` Sai Prakash Ranjan
2018-09-17 23:34   ` Steven Rostedt
2018-09-17 23:34     ` Steven Rostedt
2018-09-17 23:34     ` Steven Rostedt
2018-09-18 17:52     ` Sai Prakash Ranjan
2018-09-18 17:52       ` Sai Prakash Ranjan
2018-09-18 17:52       ` Sai Prakash Ranjan
2018-09-18 20:44       ` Steven Rostedt
2018-09-18 20:44         ` Steven Rostedt
2018-09-18 20:44         ` Steven Rostedt
2018-09-18 21:13         ` Sai Prakash Ranjan
2018-09-18 21:13           ` Sai Prakash Ranjan
2018-09-18 21:13           ` Sai Prakash Ranjan
2018-09-22  6:48           ` Sai Prakash Ranjan
2018-09-22  6:48             ` Sai Prakash Ranjan
2018-09-22  6:48             ` Sai Prakash Ranjan
2018-09-22  9:05   ` Joel Fernandes
2018-09-22  9:05     ` Joel Fernandes
2018-09-22  9:05     ` Joel Fernandes
2018-09-22 16:37     ` Sai Prakash Ranjan
2018-09-22 16:37       ` Sai Prakash Ranjan
2018-09-22 16:37       ` Sai Prakash Ranjan
2018-09-22 17:32       ` Sai Prakash Ranjan
2018-09-22 17:32         ` Sai Prakash Ranjan
2018-09-22 17:32         ` Sai Prakash Ranjan
2018-09-22 17:45       ` Sai Prakash Ranjan
2018-09-22 17:45         ` Sai Prakash Ranjan
2018-09-22 17:45         ` Sai Prakash Ranjan
2018-09-23 15:33       ` Sai Prakash Ranjan
2018-09-23 15:33         ` Sai Prakash Ranjan
2018-09-23 15:33         ` Sai Prakash Ranjan
2018-09-25 20:37         ` Joel Fernandes
2018-09-25 20:37           ` Joel Fernandes
2018-09-25 20:37           ` Joel Fernandes
2018-09-25 20:39           ` Joel Fernandes
2018-09-25 20:39             ` Joel Fernandes
2018-09-25 20:39             ` Joel Fernandes
2018-09-25 20:40             ` Joel Fernandes [this message]
2018-09-25 20:40               ` Joel Fernandes
2018-09-25 20:40               ` Joel Fernandes
2018-09-26  9:52               ` Sai Prakash Ranjan
2018-09-26  9:52                 ` Sai Prakash Ranjan
2018-09-26  9:52                 ` Sai Prakash Ranjan
2018-09-08 20:27 ` [PATCH 3/6] tracing: Add tp_pstore cmdline to have tracepoints go to pstore Sai Prakash Ranjan
2018-09-08 20:27   ` Sai Prakash Ranjan
2018-09-25 21:25   ` Joel Fernandes
2018-09-25 21:25     ` Joel Fernandes
2018-09-25 21:25     ` Joel Fernandes
2018-09-26  9:46     ` Sai Prakash Ranjan
2018-09-26  9:46       ` Sai Prakash Ranjan
2018-09-26  9:46       ` Sai Prakash Ranjan
2018-10-08 14:16       ` Sai Prakash Ranjan
2018-10-08 14:16         ` Sai Prakash Ranjan
2018-10-08 14:16         ` Sai Prakash Ranjan
2018-10-08 14:36         ` Steven Rostedt
2018-10-08 14:36           ` Steven Rostedt
2018-10-08 14:36           ` Steven Rostedt
2018-10-08 22:40           ` Joel Fernandes
2018-10-08 22:40             ` Joel Fernandes
2018-10-08 22:40             ` Joel Fernandes
2018-10-09 18:22             ` Sai Prakash Ranjan
2018-10-09 18:22               ` Sai Prakash Ranjan
2018-10-09 18:22               ` Sai Prakash Ranjan
2018-10-10 19:37               ` Steven Rostedt
2018-10-10 19:37                 ` Steven Rostedt
2018-10-10 19:37                 ` Steven Rostedt
2018-09-08 20:27 ` [PATCH 4/6] arm64/io: Add tracepoint for register accesses Sai Prakash Ranjan
2018-09-08 20:27   ` Sai Prakash Ranjan
2018-09-08 20:27 ` [PATCH 5/6] arm64/io: Add header for instrumentation of io operations Sai Prakash Ranjan
2018-09-08 20:27   ` Sai Prakash Ranjan
2018-09-17 23:39   ` Steven Rostedt
2018-09-17 23:39     ` Steven Rostedt
2018-09-17 23:39     ` Steven Rostedt
2018-09-18  7:10     ` Sai Prakash Ranjan
2018-09-18  7:10       ` Sai Prakash Ranjan
2018-09-18  7:10       ` Sai Prakash Ranjan
2018-09-18 11:47       ` Will Deacon
2018-09-18 11:47         ` Will Deacon
2018-09-18 11:47         ` Will Deacon
2018-09-18 12:43         ` Sai Prakash Ranjan
2018-09-18 12:43           ` Sai Prakash Ranjan
2018-09-18 12:43           ` Sai Prakash Ranjan
2018-09-08 20:27 ` [PATCH 6/6] dynamic_debug: Add flag for dynamic event tracing Sai Prakash Ranjan
2018-09-08 20:27   ` Sai Prakash Ranjan
2018-09-11 15:11 ` [PATCH 0/6] Tracing register accesses with pstore and dynamic debug Will Deacon
2018-09-11 15:11   ` Will Deacon
2018-09-11 15:11   ` Will Deacon
2018-09-11 16:11   ` Sai Prakash Ranjan
2018-09-11 16:11     ` Sai Prakash Ranjan
2018-09-11 16:11     ` Sai Prakash Ranjan
2018-10-20  5:25 ` Joel Fernandes
2018-10-20  5:25   ` Joel Fernandes
2018-10-20  5:25   ` Joel Fernandes
2018-10-20  6:32   ` Sai Prakash Ranjan
2018-10-20  6:32     ` Sai Prakash Ranjan
2018-10-20  6:32     ` Sai Prakash Ranjan
2018-10-20 16:27     ` Joel Fernandes
2018-10-20 16:27       ` Joel Fernandes
2018-10-20 16:27       ` Joel Fernandes
2018-10-21  3:46       ` Sai Prakash Ranjan
2018-10-21  3:46         ` Sai Prakash Ranjan
2018-10-21  3:46         ` Sai Prakash Ranjan
2018-10-21  4:59         ` Sai Prakash Ranjan
2018-10-21  4:59           ` Sai Prakash Ranjan
2018-10-21  4:59           ` Sai Prakash Ranjan
2018-10-21  5:09         ` Joel Fernandes
2018-10-21  5:09           ` Joel Fernandes
2018-10-21  5:09           ` Joel Fernandes

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAJWu+orL63-qfDL7B_Fs_Vx_rUr4fwn+DXK1mosmyM4jhj_BSw@mail.gmail.com \
    --to=joelaf@google.com \
    --cc=anton@enomsg.org \
    --cc=arnd@arndb.de \
    --cc=catalin.marinas@arm.com \
    --cc=ccross@android.com \
    --cc=devicetree@vger.kernel.org \
    --cc=jbaron@akamai.com \
    --cc=jim.cromie@gmail.com \
    --cc=joe@perches.com \
    --cc=joel@joelfernandes.org \
    --cc=keescook@chromium.org \
    --cc=labbott@redhat.com \
    --cc=mhiramat@kernel.org \
    --cc=mingo@redhat.com \
    --cc=rnayak@codeaurora.org \
    --cc=robh+dt@kernel.org \
    --cc=rostedt@goodmis.org \
    --cc=saiprakash.ranjan@codeaurora.org \
    --cc=sibis@codeaurora.org \
    --cc=tony.luck@intel.com \
    --cc=vivek.gautam@codeaurora.org \
    --cc=will.deacon@arm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.