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]
Message-ID: <20200922120732.GB15124@leoy-ThinkPad-X240s>
Date:   Tue, 22 Sep 2020 20:07:32 +0800
From:   Leo Yan <leo.yan@...aro.org>
To:     Arnaldo Carvalho de Melo <acme@...nel.org>,
        Peter Zijlstra <peterz@...radead.org>,
        Will Deacon <will@...nel.org>, Ingo Molnar <mingo@...hat.com>,
        Mark Rutland <mark.rutland@....com>,
        Alexander Shishkin <alexander.shishkin@...ux.intel.com>,
        Jiri Olsa <jolsa@...hat.com>,
        Namhyung Kim <namhyung@...nel.org>,
        John Garry <john.garry@...wei.com>,
        Mathieu Poirier <mathieu.poirier@...aro.org>,
        Adrian Hunter <adrian.hunter@...el.com>,
        Kemeng Shi <shikemeng@...wei.com>,
        Ian Rogers <irogers@...gle.com>,
        Remi Bernon <rbernon@...eweavers.com>,
        Nick Gasson <nick.gasson@....com>,
        Stephane Eranian <eranian@...gle.com>,
        Andi Kleen <ak@...ux.intel.com>,
        Steve MacLean <Steve.MacLean@...rosoft.com>,
        "Gustavo A. R. Silva" <gustavoars@...nel.org>,
        Zou Wei <zou_wei@...wei.com>, linux-kernel@...r.kernel.org,
        linux-arm-kernel@...ts.infradead.org
Subject: Re: [PATCH v4 0/6] Perf tool: Support TSC for Arm64

Hi Arnaldo,

On Mon, Sep 14, 2020 at 07:53:05PM +0800, Leo Yan wrote:
> This patch set is to refactor TSC implementation and move TSC code from
> x86 folder to util/tsc.c, this allows all archs to reuse the code.  And
> alse move the TSC testing from x86 folder to tests so can work as a
> common testing.
> 
> So far, for x86 it needs to support cap_user_time_zero and for Arm64
> it needs to support cap_user_time_short.  For architecture specific
> code, every arch only needs to implement its own rdtsc() to read out
> timer's counter.
> 
> This patch set has been rebased on the perf/core branch with latest
> commit b1f815c479c1 ("perf vendor events power9: Add hv_24x7 core level
> metric events") and tested on Arm64 DB410c.

Could you pick up this patch set?  Thanks!

Leo

>   $ perf test list
>     [...]
>     68: Convert perf time to TSC
>     [...]
> 
>   $ perf test 68 -v
>     68: Convert perf time to TSC
>     --- start ---
>     test child forked, pid 10961
>     mmap size 528384B
>     1st event perf time 35715036563417 tsc 686221770989
>     rdtsc          time 35715036649719 tsc 686221772647
>     2nd event perf time 35715036660448 tsc 686221772852
>     test child finished with 0
>     ---- end ----
>     Convert perf time to TSC: Ok
> 
> Changes from v3:
> * Added comments for Arm64's rdtsc() for short counter (PeterZ);
> * Rebased on latest acme/perf/core branch.
> 
> Changes from v2:
> * Refactored patch set to move TSC common code to util/tsc.c (Wei/Al);
> * Moved TSC testing to perf/tests (Wei);
> * Dropped Arm SPE timestamp patch so can have clear purpose and easier
>   reviewing; will send Arm SPE timestamp as separate patch.
> 
> 
> Leo Yan (6):
>   perf tsc: Move out common functions from x86
>   perf tsc: Add rdtsc() for Arm64
>   perf tsc: Calculate timestamp with cap_user_time_short
>   perf tsc: Support cap_user_time_short for event TIME_CONV
>   perf tests tsc: Make tsc testing as a common testing
>   perf tests tsc: Add checking helper is_supported()
> 
>  tools/lib/perf/include/perf/event.h           |  4 +
>  tools/perf/arch/arm64/util/Build              |  1 +
>  tools/perf/arch/arm64/util/tsc.c              | 21 +++++
>  tools/perf/arch/x86/include/arch-tests.h      |  1 -
>  tools/perf/arch/x86/tests/Build               |  1 -
>  tools/perf/arch/x86/tests/arch-tests.c        |  4 -
>  tools/perf/arch/x86/util/tsc.c                | 73 +----------------
>  tools/perf/tests/Build                        |  1 +
>  tools/perf/tests/builtin-test.c               |  5 ++
>  .../{arch/x86 => }/tests/perf-time-to-tsc.c   | 13 +++
>  tools/perf/tests/tests.h                      |  2 +
>  tools/perf/util/jitdump.c                     | 14 ++--
>  tools/perf/util/synthetic-events.c            |  8 --
>  tools/perf/util/tsc.c                         | 81 +++++++++++++++++++
>  tools/perf/util/tsc.h                         |  5 ++
>  15 files changed, 143 insertions(+), 91 deletions(-)
>  create mode 100644 tools/perf/arch/arm64/util/tsc.c
>  rename tools/perf/{arch/x86 => }/tests/perf-time-to-tsc.c (93%)
> 
> -- 
> 2.17.1
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ