Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1430015

Re: [PATCH v10 07/10] perf record: Read from overwritable ring buffer

From Nilay Vaish <nilayvaish@gmail.com>
Newsgroups linux.kernel
Subject Re: [PATCH v10 07/10] perf record: Read from overwritable ring buffer
Date 2016-06-23 19:40 +0200
Message-ID <rNgLE-4Qw-27@gated-at.bofh.it> (permalink)
References <rN5nb-5t9-1@gated-at.bofh.it> <rN5nb-5t9-3@gated-at.bofh.it> <rNdNM-2OV-25@gated-at.bofh.it> <rNdXs-2Tn-37@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On 23 June 2016 at 09:31, pi3orama <pi3orama@163.com> wrote:
>
>
> 发自我的 iPhone
>
>> 在 2016年6月23日,下午10:27,Nilay Vaish <nilayvaish@gmail.com> 写道:
>>
>>> On 23 June 2016 at 00:27, Wang Nan <wangnan0@huawei.com> wrote:
>>> @@ -542,6 +568,79 @@ static struct perf_event_header finished_round_event = {
>>>        .type = PERF_RECORD_FINISHED_ROUND,
>>> };
>>>
>>> +static void
>>> +record__toggle_overwrite_evsels(struct record *rec,
>>> +                               enum overwrite_evt_state state)
>>> +{
>>> +       struct perf_evlist *evlist = rec->overwrite_evlist;
>>> +       enum overwrite_evt_state old_state = rec->overwrite_evt_state;
>>> +       enum action {
>>> +               NONE,
>>> +               PAUSE,
>>> +               RESUME,
>>> +       } action = NONE;
>>> +
>>> +       switch (old_state) {
>>> +       case OVERWRITE_EVT_RUNNING: {
>>> +               switch (state) {
>>> +               case OVERWRITE_EVT_DATA_PENDING:
>>> +                       action = PAUSE;
>>> +                       break;
>>> +               case OVERWRITE_EVT_RUNNING:
>>> +               case OVERWRITE_EVT_EMPTY:
>>> +               default:
>>> +                       goto state_err;
>>> +               }
>>> +               break;
>>> +       }
>>> +       case OVERWRITE_EVT_DATA_PENDING: {
>>> +               switch (state) {
>>> +               case OVERWRITE_EVT_EMPTY:
>>> +                       break;
>>> +               case OVERWRITE_EVT_RUNNING:
>>> +               case OVERWRITE_EVT_DATA_PENDING:
>>> +               default:
>>> +                       goto state_err;
>>> +               }
>>> +               break;
>>> +       }
>>> +       case OVERWRITE_EVT_EMPTY: {
>>> +               switch (state) {
>>> +               case OVERWRITE_EVT_RUNNING:
>>> +                       action = RESUME;
>>> +                       break;
>>> +               case OVERWRITE_EVT_EMPTY:
>>> +               case OVERWRITE_EVT_DATA_PENDING:
>>> +               default:
>>> +                       goto state_err;
>>
>>
>> Wang, thanks for making the changes I suggested.
>> The patch overall looks fine to me.  Just as a matter
>> of style, I probably would not write case labels that
>> do not have any statements associated with them.
>> I'll let default take care of those labels.
>>
>
> I don't like them either.
>
> You have to do this when you start working
> on perf code. It turns on -Wall and -Werror,
> without these case gcc will complain,
> compiling will fail.
>

Oops!  Did not realize that compiler would complain.
I guess we have to leave them as they are.  Patch is good to be committed.

Thanks
Nilay

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH v10 00/10] perf tools: Support overwritable ring buffer Wang Nan <wangnan0@huawei.com> - 2016-06-23 07:30 +0200
  [PATCH v10 07/10] perf record: Read from overwritable ring buffer Wang Nan <wangnan0@huawei.com> - 2016-06-23 07:30 +0200
    Re: [PATCH v10 07/10] perf record: Read from overwritable ring buffer Nilay Vaish <nilayvaish@gmail.com> - 2016-06-23 16:30 +0200
      Re: [PATCH v10 07/10] perf record: Read from overwritable ring buffer pi3orama <pi3orama@163.com> - 2016-06-23 16:40 +0200
        Re: [PATCH v10 07/10] perf record: Read from overwritable ring buffer Nilay Vaish <nilayvaish@gmail.com> - 2016-06-23 19:40 +0200
  [PATCH v10 04/10] perf evlist: Introduce aux evlist Wang Nan <wangnan0@huawei.com> - 2016-06-23 07:30 +0200
    Re: [PATCH v10 04/10] perf evlist: Introduce aux evlist Nilay Vaish <nilayvaish@gmail.com> - 2016-06-23 16:20 +0200
  [PATCH v10 09/10] perf tools: Don't warn about out of order event if write_backward is used Wang Nan <wangnan0@huawei.com> - 2016-06-23 07:30 +0200
  [PATCH v10 10/10] perf tools: Add --tail-synthesize option Wang Nan <wangnan0@huawei.com> - 2016-06-23 07:40 +0200
  [PATCH v10 03/10] perf record: Prepare picking perf_event_mmap_page from multiple evlists Wang Nan <wangnan0@huawei.com> - 2016-06-23 07:40 +0200
  [PATCH v10 06/10] perf record: Introduce rec->overwrite_evlist for overwritable events Wang Nan <wangnan0@huawei.com> - 2016-06-23 07:40 +0200
  [PATCH v10 08/10] perf tools: Enable overwrite settings Wang Nan <wangnan0@huawei.com> - 2016-06-23 07:40 +0200
  [PATCH v10 01/10] perf record: Prepare mmap multiple evlists Wang Nan <wangnan0@huawei.com> - 2016-06-23 07:40 +0200
  [PATCH v10 02/10] perf record: Prepare reading from multiple evlists in record__mmap_read_all() Wang Nan <wangnan0@huawei.com> - 2016-06-23 07:40 +0200
  [PATCH v10 05/10] perf tests: Add testcase for auxiliary evlist Wang Nan <wangnan0@huawei.com> - 2016-06-23 07:40 +0200

csiph-web