1. 11 Aug, 2021 8 commits
  2. 10 Aug, 2021 26 commits
    • Jin Yao's avatar
      perf vendor events: Update metrics for SkyLake Server · c4ad8fab
      Jin Yao authored
      Update JSON metrics for SkyLake Server.
      
      Based on TMA metrics 4.21 at 01.org.
      https://download.01.org/perfmon/
      
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Kan Liang <kan.liang@intel.com>
      Cc: Linux-kernel@vger.kernel.org
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: https //lore.kernel.org/r/20210810020508.31261-7-yao.jin@linux.intel.com
      Signed-off-by: default avatarJin Yao <yao.jin@linux.intel.com>
      c4ad8fab
    • Jin Yao's avatar
      perf vendor events intel: Update uncore event list for SkyLake Server · d5c0a8d5
      Jin Yao authored
      Update JSON uncore events for SkyLake Server.
      
      Based on JSON list v1.24:
      
      https://download.01.org/perfmon/SKX/
      
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Kan Liang <kan.liang@intel.com>
      Cc: Linux-kernel@vger.kernel.org
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: https //lore.kernel.org/r/20210810020508.31261-6-yao.jin@linux.intel.com
      Signed-off-by: default avatarJin Yao <yao.jin@linux.intel.com>
      d5c0a8d5
    • Jin Yao's avatar
      perf vendor events intel: Update core event list for SkyLake Server · 2c72404e
      Jin Yao authored
      Update JSON core events for SkyLake Server.
      
      Based on JSON list v1.24:
      
      https://download.01.org/perfmon/SKX/
      
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Kan Liang <kan.liang@intel.com>
      Cc: Linux-kernel@vger.kernel.org
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: https //lore.kernel.org/r/20210810020508.31261-5-yao.jin@linux.intel.com
      Signed-off-by: default avatarJin Yao <yao.jin@linux.intel.com>
      2c72404e
    • Jin Yao's avatar
      perf vendor events: Update metrics for CascadeLake Server · ed97cc6c
      Jin Yao authored
      Update JSON metrics for CascadeLake Server.
      
      Based on TMA metrics 4.21 at 01.org.
      https://download.01.org/perfmon/
      
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Kan Liang <kan.liang@intel.com>
      Cc: Linux-kernel@vger.kernel.org
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: https //lore.kernel.org/r/20210810020508.31261-4-yao.jin@linux.intel.com
      Signed-off-by: default avatarJin Yao <yao.jin@linux.intel.com>
      ed97cc6c
    • Jin Yao's avatar
      perf vendor events intel: Update uncore event list for CascadeLake Server · 96fe584f
      Jin Yao authored
      Update JSON uncore events for CascadeLake Server.
      
      Based on JSON list v1.11:
      
      https://download.01.org/perfmon/CLX/
      
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Kan Liang <kan.liang@intel.com>
      Cc: Linux-kernel@vger.kernel.org
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: https //lore.kernel.org/r/20210810020508.31261-3-yao.jin@linux.intel.com
      Signed-off-by: default avatarJin Yao <yao.jin@linux.intel.com>
      96fe584f
    • Jin Yao's avatar
      perf vendor events intel: Update core event list for CascadeLake Server · e0ddfd8d
      Jin Yao authored
      Update JSON core events for CascadeLake Server.
      
      Based on JSON list v1.11:
      
      https://download.01.org/perfmon/CLX/Signed-off-by: default avatarJin Yao <yao.jin@linux.intel.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Kan Liang <kan.liang@intel.com>
      Cc: Linux-kernel@vger.kernel.org
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: https //lore.kernel.org/r/20210810020508.31261-2-yao.jin@linux.intel.com
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      e0ddfd8d
    • John Garry's avatar
      perf test: Add pmu-events sys event support · 8ee465a1
      John Garry authored
      Add support for system events, along with core and uncore events.
      
      Support for a sample PMU is also added.
      Signed-off-by: default avatarJohn Garry <john.garry@huawei.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Jin Yao <yao.jin@linux.intel.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: linuxarm@huawei.com
      Link: https //lore.kernel.org/r/1627566986-30605-12-git-send-email-john.garry@huawei.com
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      8ee465a1
    • John Garry's avatar
      perf jevents: Print SoC name per system event table · 5abd3988
      John Garry authored
      Print the SoC name per system event table, which will allow the test SoC be
      identified by the pmu-events test.
      Signed-off-by: default avatarJohn Garry <john.garry@huawei.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Jin Yao <yao.jin@linux.intel.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: linuxarm@huawei.com
      Link: https //lore.kernel.org/r/1627566986-30605-11-git-send-email-john.garry@huawei.com
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      5abd3988
    • John Garry's avatar
      perf pmu: Make pmu_add_sys_aliases() public · e199f47f
      John Garry authored
      Function pmu_add_sys_aliases() will be required for the PMU events test
      for system events aliases, so make it public.
      Signed-off-by: default avatarJohn Garry <john.garry@huawei.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Jin Yao <yao.jin@linux.intel.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: linuxarm@huawei.com
      Link: https //lore.kernel.org/r/1627566986-30605-10-git-send-email-john.garry@huawei.com
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      e199f47f
    • John Garry's avatar
      perf test: Add more pmu-events uncore aliases · 6a86657f
      John Garry authored
      Add more events to cover the scenarios fixed and also inadvertently
      broken by commit c47a5599 ("perf tools: Fix pattern matching for
      same substring in different PMU type")
      Signed-off-by: default avatarJohn Garry <john.garry@huawei.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Jin Yao <yao.jin@linux.intel.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: linuxarm@huawei.com
      Link: https //lore.kernel.org/r/1627566986-30605-9-git-send-email-john.garry@huawei.com
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      6a86657f
    • John Garry's avatar
      perf test: Re-add pmu-event uncore PMU alias test · 5a65c0c8
      John Garry authored
      Add support to match aliases for uncore PMUs.
      
      Since we cannot rely on the PMUs being present on the host system, use
      fake PMUs.
      
      The following conditions in the test are ensures:
      
      - Expected count of aliases created
      
      - All aliases can be matched to an expected alias in
        perf_pmu_test_pmu.aliases
      
      This will catch the condition fixed in commit c47a5599 ("perf tools:
      Fix pattern matching for same substring in different PMU type"), where
      excess events were created for a PMU. It will also fix the scenario
      inadvertently broken there, where no aliases were created for aliases
      with multiple tokens.
      Signed-off-by: default avatarJohn Garry <john.garry@huawei.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Jin Yao <yao.jin@linux.intel.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: linuxarm@huawei.com
      Link: https //lore.kernel.org/r/1627566986-30605-8-git-send-email-john.garry@huawei.com
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      5a65c0c8
    • John Garry's avatar
      perf pmu: Check .is_uncore field in pmu_add_cpu_aliases_map() · 5806099a
      John Garry authored
      Calling pmu_is_uncore() for fake PMUs does not work, as it checks sysfs
      for the PMU details (which won't exist).
      
      Check .is_uncore field instead, which makes sense anyway.
      Signed-off-by: default avatarJohn Garry <john.garry@huawei.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Jin Yao <yao.jin@linux.intel.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: linuxarm@huawei.com
      Link: https //lore.kernel.org/r/1627566986-30605-7-git-send-email-john.garry@huawei.com
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      5806099a
    • John Garry's avatar
      perf test: Test pmu-events core aliases separately · 3bc4526b
      John Garry authored
      The current method to test uncore event aliasing is limited, as it
      relies on the uncore PMU being present in the host system to test.
      
      As such, breakages of uncore PMU aliases goes unnoticed. To make this
      more robust, a new method of testing uncore PMUs with fake PMUs will be
      used in future. This will be separate to testing core PMU aliases.
      
      So make the current test function core PMU only. Uncore PMU alias
      support will be re-added later.
      Signed-off-by: default avatarJohn Garry <john.garry@huawei.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Jin Yao <yao.jin@linux.intel.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: linuxarm@huawei.com
      Link: https //lore.kernel.org/r/1627566986-30605-6-git-send-email-john.garry@huawei.com
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      3bc4526b
    • John Garry's avatar
      perf test: Factor out pmu-events alias comparison · e386acd7
      John Garry authored
      Factor out alias test which will be used in multiple places.
      
      Also test missing fields.
      Signed-off-by: default avatarJohn Garry <john.garry@huawei.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Jin Yao <yao.jin@linux.intel.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: linuxarm@huawei.com
      Link: https //lore.kernel.org/r/1627566986-30605-5-git-send-email-john.garry@huawei.com
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      e386acd7
    • John Garry's avatar
      perf test: Declare pmu-events test events separately · c81e823f
      John Garry authored
      Currently all test events are put into arrays of test events.
      
      Create pointer arrays of test events instead, so the test events may be
      referenced later for tighter alias verification.
      Signed-off-by: default avatarJohn Garry <john.garry@huawei.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Jin Yao <yao.jin@linux.intel.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: linuxarm@huawei.com
      Link: https //lore.kernel.org/r/1627566986-30605-4-git-send-email-john.garry@huawei.com
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      c81e823f
    • Linus Torvalds's avatar
      Merge tag 'platform-drivers-x86-v5.14-3' of... · 9e723c53
      Linus Torvalds authored
      Merge tag 'platform-drivers-x86-v5.14-3' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86
      
      Pull x86 platform driver fixes from Hans de Goede:
       "Small set of pdx86 fixes for 5.14"
      
      * tag 'platform-drivers-x86-v5.14-3' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86:
        platform/x86: pcengines-apuv2: Add missing terminating entries to gpio-lookup tables
        platform/x86: Make dual_accel_detect() KIOX010A + KIOX020A detect more robust
        platform/x86: Add and use a dual_accel_detect() helper
      9e723c53
    • Linus Torvalds's avatar
      Merge tag 'ovl-fixes-5.14-rc6-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs · b3f0ccc5
      Linus Torvalds authored
      Pull overlayfs fixes from Miklos Szeredi:
       "Fix several bugs in overlayfs"
      
      * tag 'ovl-fixes-5.14-rc6-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs:
        ovl: prevent private clone if bind mount is not allowed
        ovl: fix uninitialized pointer read in ovl_lookup_real_one()
        ovl: fix deadlock in splice write
        ovl: skip stale entries in merge dir cache iteration
      b3f0ccc5
    • John Garry's avatar
      perf jevents: Relocate test events to cpu folder · 35267cea
      John Garry authored
      In future to add support for sys events, relocate the core and uncore
      events to a cpu folder.
      Signed-off-by: default avatarJohn Garry <john.garry@huawei.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Jin Yao <yao.jin@linux.intel.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: linuxarm@huawei.com
      Link: https //lore.kernel.org/r/1627566986-30605-3-git-send-email-john.garry@huawei.com
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      35267cea
    • John Garry's avatar
      perf test: Factor out pmu-events event comparison · 19ac3df3
      John Garry authored
      Factor out event comparison which will be used in multiple places.
      
      Also test "pmu" and "compat" fields.
      Signed-off-by: default avatarJohn Garry <john.garry@huawei.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Jin Yao <yao.jin@linux.intel.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: linuxarm@huawei.com
      Link: https //lore.kernel.org/r/1627566986-30605-2-git-send-email-john.garry@huawei.com
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      19ac3df3
    • John Garry's avatar
      perf jevents: Make build dependency on test JSONs · 517db3b5
      John Garry authored
      Currently all JSONs and the mapfile for an arch are dependencies for
      building pmu-events.c
      
      The test JSONs are missing as a dependency, so add them.
      Signed-off-by: default avatarJohn Garry <john.garry@huawei.com>
      Reported-by: default avatarArnaldo Carvalho de Melo <acme@kernel.org>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Jin Yao <yao.jin@linux.intel.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: linuxarm@huawei.com
      Link: http://lore.kernel.org/lkml/90094733-741c-50e5-ac7d-f5640b5f0bdd@huawei.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      517db3b5
    • Riccardo Mancini's avatar
      perf bench: Add benchmark for evlist open/close operations · 4241eabf
      Riccardo Mancini authored
      This new benchmark finds the total time that is taken to open, mmap,
      enable, disable, munmap, close an evlist (time taken for new,
      create_maps, config, delete is not counted in).
      
      The evlist can be configured as in perf-record using the
      -a,-C,-e,-u,--per-thread,-t,-p options.
      
      The events can be duplicated in the evlist to quickly test performance
      with many events using the -n options.
      
      Furthermore, also the number of iterations used to calculate the
      statistics is customizable.
      
      Examples:
      - Open one dummy event system-wide:
      
        $ sudo ./perf bench internals evlist-open-close
          Number of cpus:       4
          Number of threads:    1
          Number of events:     1 (4 fds)
          Number of iterations: 100
          Average open-close took: 613.870 usec (+- 32.852 usec)
      
      - Open the group '{cs,cycles}' on CPU 0
      
        $ sudo ./perf bench internals evlist-open-close -e '{cs,cycles}' -C 0
          Number of cpus:       1
          Number of threads:    1
          Number of events:     2 (2 fds)
          Number of iterations: 100
          Average open-close took: 8503.220 usec (+- 252.652 usec)
      
      - Open 10 'cycles' events for user 0, calculate average over 100 runs
      
        $ sudo ./perf bench internals evlist-open-close -e cycles -n 10 -u 0 -i 100
          Number of cpus:       4
          Number of threads:    328
          Number of events:     10 (13120 fds)
          Number of iterations: 100
          Average open-close took: 180043.140 usec (+- 2295.889 usec)
      
      Committer notes:
      
      Replaced a deprecated bzero() call with designated initialized zeroing.
      
      Added some missing evlist allocation checks, one noted by Riccardo on
      the mailing list.
      
      Minor cosmetic changes (sent in private).
      Signed-off-by: default avatarRiccardo Mancini <rickyman7@gmail.com>
      Tested-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: http://lore.kernel.org/lkml/20210809201101.277594-1-rickyman7@gmail.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      4241eabf
    • Alyssa Ross's avatar
      perf docs: Fix accidental em-dashes · f2c24eba
      Alyssa Ross authored
      " -- " is an em dash (—) in asciidoc, so all these examples that were
      supposed to be producing a literal two dashes were being misrendered.
      Signed-off-by: default avatarAlyssa Ross <hi@alyssa.is>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: http://lore.kernel.org/lkml/20210809153226.332545-1-hi@alyssa.isSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      f2c24eba
    • Miklos Szeredi's avatar
      ovl: prevent private clone if bind mount is not allowed · 427215d8
      Miklos Szeredi authored
      Add the following checks from __do_loopback() to clone_private_mount() as
      well:
      
       - verify that the mount is in the current namespace
      
       - verify that there are no locked children
      Reported-by: default avatarAlois Wohlschlager <alois1@gmx-topmail.de>
      Fixes: c771d683 ("vfs: introduce clone_private_mount()")
      Cc: <stable@vger.kernel.org> # v3.18
      Signed-off-by: default avatarMiklos Szeredi <mszeredi@redhat.com>
      427215d8
    • Miklos Szeredi's avatar
      ovl: fix uninitialized pointer read in ovl_lookup_real_one() · 580c6104
      Miklos Szeredi authored
      One error path can result in release_dentry_name_snapshot() being called
      before "name" was initialized by take_dentry_name_snapshot().
      
      Fix by moving the release_dentry_name_snapshot() to immediately after the
      only use.
      Reported-by: default avatarColin Ian King <colin.king@canonical.com>
      Signed-off-by: default avatarMiklos Szeredi <mszeredi@redhat.com>
      580c6104
    • Miklos Szeredi's avatar
      ovl: fix deadlock in splice write · 9b91b6b0
      Miklos Szeredi authored
      There's possibility of an ABBA deadlock in case of a splice write to an
      overlayfs file and a concurrent splice write to a corresponding real file.
      
      The call chain for splice to an overlay file:
      
       -> do_splice                     [takes sb_writers on overlay file]
         -> do_splice_from
           -> iter_file_splice_write    [takes pipe->mutex]
             -> vfs_iter_write
               ...
               -> ovl_write_iter        [takes sb_writers on real file]
      
      And the call chain for splice to a real file:
      
       -> do_splice                     [takes sb_writers on real file]
         -> do_splice_from
           -> iter_file_splice_write    [takes pipe->mutex]
      
      Syzbot successfully bisected this to commit 82a763e6 ("ovl: simplify
      file splice").
      
      Fix by reverting the write part of the above commit and by adding missing
      bits from ovl_write_iter() into ovl_splice_write().
      
      Fixes: 82a763e6 ("ovl: simplify file splice")
      Reported-and-tested-by: syzbot+579885d1a9a833336209@syzkaller.appspotmail.com
      Signed-off-by: default avatarMiklos Szeredi <mszeredi@redhat.com>
      9b91b6b0
    • Amir Goldstein's avatar
      ovl: skip stale entries in merge dir cache iteration · 9011c279
      Amir Goldstein authored
      On the first getdents call, ovl_iterate() populates the readdir cache
      with a list of entries, but for upper entries with origin lower inode,
      p->ino remains zero.
      
      Following getdents calls traverse the readdir cache list and call
      ovl_cache_update_ino() for entries with zero p->ino to lookup the entry
      in the overlay and return d_ino that is consistent with st_ino.
      
      If the upper file was unlinked between the first getdents call and the
      getdents call that lists the file entry, ovl_cache_update_ino() will not
      find the entry and fall back to setting d_ino to the upper real st_ino,
      which is inconsistent with how this object was presented to users.
      
      Instead of listing a stale entry with inconsistent d_ino, simply skip
      the stale entry, which is better for users.
      
      xfstest overlay/077 is failing without this patch.
      Signed-off-by: default avatarAmir Goldstein <amir73il@gmail.com>
      Link: https://lore.kernel.org/fstests/CAOQ4uxgR_cLnC_vdU5=seP3fwqVkuZM_-WfD6maFTMbMYq=a9w@mail.gmail.com/Signed-off-by: default avatarMiklos Szeredi <mszeredi@redhat.com>
      9011c279
  3. 09 Aug, 2021 6 commits
    • Linus Torvalds's avatar
      Merge branch 'for-5.14-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup · 9a73fa37
      Linus Torvalds authored
      Pull cgroup fix from Tejun Heo:
       "One commit to fix a possible A-A deadlock around u64_stats_sync on
        32bit machines caused by updating it without disabling IRQ when it may
        be read from IRQ context"
      
      * 'for-5.14-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:
        cgroup: rstat: fix A-A deadlock on 32bit around u64_stats_sync
      9a73fa37
    • Vineet Gupta's avatar
      MAINTAINERS: update Vineet's email address · 669d9421
      Vineet Gupta authored
      I'll be leaving Synopsys shortly, but will continue to handle maintenance
      for the transition period.
      Signed-off-by: default avatarVineet Gupta <vgupta@kernel.org>
      669d9421
    • Leo Yan's avatar
      perf env: Track kernel 64-bit mode in environment · 7c0223e1
      Leo Yan authored
      It's useful to know that the kernel is running in 32-bit or 64-bit mode.
      E.g. We can decide if perf tool is running in compat mode based on the
      info.
      
      This patch adds an item "kernel_is_64_bit" into session's environment
      structure perf_env, its value is initialized based on the architecture
      string.
      Suggested-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      Signed-off-by: default avatarLeo Yan <leo.yan@linaro.org>
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Catalin Marinas <catalin.marinas@arm.com>
      Cc: Jin Yao <yao.jin@linux.intel.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: John Garry <john.garry@huawei.com>
      Cc: Li Huafei <lihuafei1@huawei.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
      Cc: Mike Leach <mike.leach@linaro.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Riccardo Mancini <rickyman7@gmail.com>
      Cc: Suzuki Poulouse <suzuki.poulose@arm.com>
      Cc: Will Deacon <will@kernel.org>
      Cc: coresight@lists.linaro.org
      Cc: linux-arm-kernel@lists.infradead.org
      Cc: russell king <linux@armlinux.org.uk>
      Link: http://lore.kernel.org/lkml/20210809112727.596876-2-leo.yan@linaro.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      7c0223e1
    • Leo Yan's avatar
      tools: Remove feature-sync-compare-and-swap feature detection · 60fa754b
      Leo Yan authored
      Since the __sync functions have been removed from perf, it's needless
      for perf tool to test the feature sync-compare-and-swap.
      
      The feature test is not used by any other components, remove it.
      Signed-off-by: default avatarLeo Yan <leo.yan@linaro.org>
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Alexei Starovoitov <ast@kernel.org>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Andrii Nakryiko <andriin@fb.com>
      Cc: Borislav Petkov <bp@alien8.de>
      Cc: Daniel Díaz <daniel.diaz@linaro.org>
      Cc: Frank Ch. Eigler <fche@redhat.com>
      Cc: H. Peter Anvin <hpa@zytor.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
      Cc: Michael Petlan <mpetlan@redhat.com>
      Cc: Mike Leach <mike.leach@linaro.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Sedat Dilek <sedat.dilek@gmail.com>
      Cc: Song Liu <songliubraving@fb.com>
      Cc: Suzuki Poulouse <suzuki.poulose@arm.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: coresight@lists.linaro.org
      Cc: x86@kernel.org
      Link: http://lore.kernel.org/lkml/20210809111407.596077-10-leo.yan@linaro.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      60fa754b
    • Leo Yan's avatar
      perf: Cleanup for HAVE_SYNC_COMPARE_AND_SWAP_SUPPORT · 65c45afb
      Leo Yan authored
      Since the __sync functions have been dropped, This patch removes unused
      build and checking for HAVE_SYNC_COMPARE_AND_SWAP_SUPPORT in perf tool.
      Signed-off-by: default avatarLeo Yan <leo.yan@linaro.org>
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Alexei Starovoitov <ast@kernel.org>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Andrii Nakryiko <andriin@fb.com>
      Cc: Borislav Petkov <bp@alien8.de>
      Cc: Daniel Díaz <daniel.diaz@linaro.org>
      Cc: Frank Ch. Eigler <fche@redhat.com>
      Cc: H. Peter Anvin <hpa@zytor.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
      Cc: Michael Petlan <mpetlan@redhat.com>
      Cc: Mike Leach <mike.leach@linaro.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Sedat Dilek <sedat.dilek@gmail.com>
      Cc: Song Liu <songliubraving@fb.com>
      Cc: Suzuki Poulouse <suzuki.poulose@arm.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: coresight@lists.linaro.org
      Cc: x86@kernel.org
      Link: http://lore.kernel.org/lkml/20210809111407.596077-9-leo.yan@linaro.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      65c45afb
    • Leo Yan's avatar
      perf auxtrace: Remove auxtrace_mmap__read_snapshot_head() · 9d645033
      Leo Yan authored
      Since the function auxtrace_mmap__read_snapshot_head() is exactly same
      with auxtrace_mmap__read_head(), whether the session is in snapshot mode
      or not, it's unified to use function auxtrace_mmap__read_head() for
      reading AUX buffer head.
      
      And the function auxtrace_mmap__read_snapshot_head() is unused so this
      patch removes it.
      Signed-off-by: default avatarLeo Yan <leo.yan@linaro.org>
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Alexei Starovoitov <ast@kernel.org>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Andrii Nakryiko <andriin@fb.com>
      Cc: Borislav Petkov <bp@alien8.de>
      Cc: Daniel Díaz <daniel.diaz@linaro.org>
      Cc: Frank Ch. Eigler <fche@redhat.com>
      Cc: H. Peter Anvin <hpa@zytor.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
      Cc: Michael Petlan <mpetlan@redhat.com>
      Cc: Mike Leach <mike.leach@linaro.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Sedat Dilek <sedat.dilek@gmail.com>
      Cc: Song Liu <songliubraving@fb.com>
      Cc: Suzuki Poulouse <suzuki.poulose@arm.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: coresight@lists.linaro.org
      Cc: x86@kernel.org
      Link: http://lore.kernel.org/lkml/20210809111407.596077-8-leo.yan@linaro.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      9d645033