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-next>] [day] [month] [year] [list]
Date:   Tue,  5 Mar 2019 21:05:40 +0800
From:   Jin Yao <yao.jin@...ux.intel.com>
To:     acme@...nel.org, jolsa@...nel.org, peterz@...radead.org,
        mingo@...hat.com, alexander.shishkin@...ux.intel.com
Cc:     Linux-kernel@...r.kernel.org, ak@...ux.intel.com,
        kan.liang@...el.com, yao.jin@...el.com,
        Jin Yao <yao.jin@...ux.intel.com>
Subject: [PATCH v4 0/3] perf diff: Add new filter options

This patch series creates following new filter options for perf diff.

--time:
    It supports time percent with multipe time ranges. Time string is
    'a%/n,b%/m,...' or 'a%-b%,c%-%d,...'.

    For example:

    Select the second 10% time slice to diff:
    perf diff --time 10%/2

    Select from 0% to 10% time slice to diff:
    perf diff --time 0%-10%

    Select the first and the second 10% time slices to diff:
    perf diff --time 10%/1,10%/2

    Select from 0% to 10% and 30% to 40% slices to diff:
    perf diff --time 0%-10%,30%-40%

    It also supports to analyze samples within given time window as:
    <start>,<stop>. Times have the format seconds.microseconds. If start
    is not given (i.e., time string is ',x.y') then analysis starts at
    the beginning of the file. If stop time is not given (i.e, time
    string is 'x.y,') then analysis goes to end of file. Time string is
    'a1.b1,c1.d1:a2.b2,c2.d2'. Use ':' to separate timestamps for different
    perf.data files.

    For example, we get the timestamp information from perf script.

    perf script -i perf.data.old
      mgen 13940 [000]  3946.361400: ...

    perf script -i perf.data
      mgen 13940 [000]  3971.150589 ...

    perf diff --time 3946.361400,:3971.150589,

    It analyzes the perf.data.old from the timestamp 3946.361400 to
    the end of perf.data.old and analyzes the perf.data from the
    timestamp 3971.150589 to the end of perf.data.

--cpu:
    Only diff samples for the list of CPUs provided. Multiple CPUs can
    be provided as a comma-separated list with no space: 0,1. Ranges of
    CPUs are specified with -: 0-2. Default is to report samples on all
    CPUs.

    For example:
    perf diff --cpu 0,1

    It only diff the samples for CPU0 and CPU1.

--pid:
    Only diff samples for given process ID (comma separated list).

--tid:
    Only diff samples for given thread ID (comma separated list).

    For example,
    perf diff --tid 13965

    It only diff the samples for thread 13965.

 v4:
 ---
 Update abstime_str_dup(), let it return error if strdup
 is failed, and update __cmd_diff() accordingly.

 Only the patch "perf diff: Support --time filter option" is impacted
 Others are no logical changes.

Jin Yao (3):
  perf diff: Support --time filter option
  perf diff: Support --cpu filter option
  perf diff: Support --pid/--tid filter options

 tools/perf/Documentation/perf-diff.txt |  52 ++++++++++
 tools/perf/builtin-diff.c              | 168 ++++++++++++++++++++++++++++++---
 2 files changed, 206 insertions(+), 14 deletions(-)

-- 
2.7.4

Powered by blists - more mailing lists