1. 15 Oct, 2022 16 commits
    • Arnaldo Carvalho de Melo's avatar
      tools arch x86: Sync the msr-index.h copy with the kernel sources · a3a36565
      Arnaldo Carvalho de Melo authored
      To pick up the changes in:
      
        b8d1d163 ("x86/apic: Don't disable x2APIC if locked")
        ca5b7c0d ("perf/x86/amd/lbr: Add LbrExtV2 branch record support")
      
      Addressing these tools/perf build warnings:
      
          diff -u tools/arch/x86/include/asm/msr-index.h arch/x86/include/asm/msr-index.h
          Warning: Kernel ABI header at 'tools/arch/x86/include/asm/msr-index.h' differs from latest version at 'arch/x86/include/asm/msr-index.h'
      
      That makes the beautification scripts to pick some new entries:
      
        $ tools/perf/trace/beauty/tracepoints/x86_msr.sh > before
        $ cp arch/x86/include/asm/msr-index.h tools/arch/x86/include/asm/msr-index.h
        $ tools/perf/trace/beauty/tracepoints/x86_msr.sh > after
        $ diff -u before after
        --- before	2022-10-14 18:06:34.294561729 -0300
        +++ after	2022-10-14 18:06:41.285744044 -0300
        @@ -264,6 +264,7 @@
         	[0xc0000102 - x86_64_specific_MSRs_offset] = "KERNEL_GS_BASE",
         	[0xc0000103 - x86_64_specific_MSRs_offset] = "TSC_AUX",
         	[0xc0000104 - x86_64_specific_MSRs_offset] = "AMD64_TSC_RATIO",
        +	[0xc000010e - x86_64_specific_MSRs_offset] = "AMD64_LBR_SELECT",
         	[0xc000010f - x86_64_specific_MSRs_offset] = "AMD_DBG_EXTN_CFG",
         	[0xc0000300 - x86_64_specific_MSRs_offset] = "AMD64_PERF_CNTR_GLOBAL_STATUS",
         	[0xc0000301 - x86_64_specific_MSRs_offset] = "AMD64_PERF_CNTR_GLOBAL_CTL",
        $
      
      Now one can trace systemwide asking to see backtraces to where that MSR
      is being read/written, see this example with a previous update:
      
        # perf trace -e msr:*_msr/max-stack=32/ --filter="msr>=IA32_U_CET && msr<=IA32_INT_SSP_TAB"
        ^C#
      
      If we use -v (verbose mode) we can see what it does behind the scenes:
      
        # perf trace -v -e msr:*_msr/max-stack=32/ --filter="msr>=IA32_U_CET && msr<=IA32_INT_SSP_TAB"
        Using CPUID AuthenticAMD-25-21-0
        0x6a0
        0x6a8
        New filter for msr:read_msr: (msr>=0x6a0 && msr<=0x6a8) && (common_pid != 597499 && common_pid != 3313)
        0x6a0
        0x6a8
        New filter for msr:write_msr: (msr>=0x6a0 && msr<=0x6a8) && (common_pid != 597499 && common_pid != 3313)
        mmap size 528384B
        ^C#
      
      Example with a frequent msr:
      
        # perf trace -v -e msr:*_msr/max-stack=32/ --filter="msr==IA32_SPEC_CTRL" --max-events 2
        Using CPUID AuthenticAMD-25-21-0
        0x48
        New filter for msr:read_msr: (msr==0x48) && (common_pid != 2612129 && common_pid != 3841)
        0x48
        New filter for msr:write_msr: (msr==0x48) && (common_pid != 2612129 && common_pid != 3841)
        mmap size 528384B
        Looking at the vmlinux_path (8 entries long)
        symsrc__init: build id mismatch for vmlinux.
        Using /proc/kcore for kernel data
        Using /proc/kallsyms for symbols
           0.000 Timer/2525383 msr:write_msr(msr: IA32_SPEC_CTRL, val: 6)
                                             do_trace_write_msr ([kernel.kallsyms])
                                             do_trace_write_msr ([kernel.kallsyms])
                                             __switch_to_xtra ([kernel.kallsyms])
                                             __switch_to ([kernel.kallsyms])
                                             __schedule ([kernel.kallsyms])
                                             schedule ([kernel.kallsyms])
                                             futex_wait_queue_me ([kernel.kallsyms])
                                             futex_wait ([kernel.kallsyms])
                                             do_futex ([kernel.kallsyms])
                                             __x64_sys_futex ([kernel.kallsyms])
                                             do_syscall_64 ([kernel.kallsyms])
                                             entry_SYSCALL_64_after_hwframe ([kernel.kallsyms])
                                             __futex_abstimed_wait_common64 (/usr/lib64/libpthread-2.33.so)
           0.030 :0/0 msr:write_msr(msr: IA32_SPEC_CTRL, val: 2)
                                             do_trace_write_msr ([kernel.kallsyms])
                                             do_trace_write_msr ([kernel.kallsyms])
                                             __switch_to_xtra ([kernel.kallsyms])
                                             __switch_to ([kernel.kallsyms])
                                             __schedule ([kernel.kallsyms])
                                             schedule_idle ([kernel.kallsyms])
                                             do_idle ([kernel.kallsyms])
                                             cpu_startup_entry ([kernel.kallsyms])
                                             secondary_startup_64_no_verify ([kernel.kallsyms])
        #
      
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Daniel Sneddon <daniel.sneddon@linux.intel.com>
      Cc: Dave Hansen <dave.hansen@linux.intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Sandipan Das <sandipan.das@amd.com>
      Link: https://lore.kernel.org/lkml/Y0nQkz2TUJxwfXJd@kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      a3a36565
    • Qi Liu's avatar
      perf auxtrace arm64: Add support for parsing HiSilicon PCIe Trace packet · 5e91e57e
      Qi Liu authored
      Add support for using 'perf report --dump-raw-trace' to parse PTT packet.
      
      Example usage:
      
      Output will contain raw PTT data and its textual representation, such
      as (8DW format):
      
      0 0 0x5810 [0x30]: PERF_RECORD_AUXTRACE size: 0x400000  offset: 0
      ref: 0xa5d50c725  idx: 0  tid: -1  cpu: 0
      .
      . ... HISI PTT data: size 4194304 bytes
      .  00000000: 00 00 00 00                                 Prefix
      .  00000004: 08 20 00 60                                 Header DW0
      .  00000008: ff 02 00 01                                 Header DW1
      .  0000000c: 20 08 00 00                                 Header DW2
      .  00000010: 10 e7 44 ab                                 Header DW3
      .  00000014: 2a a8 1e 01                                 Time
      .  00000020: 00 00 00 00                                 Prefix
      .  00000024: 01 00 00 60                                 Header DW0
      .  00000028: 0f 1e 00 01                                 Header DW1
      .  0000002c: 04 00 00 00                                 Header DW2
      .  00000030: 40 00 81 02                                 Header DW3
      .  00000034: ee 02 00 00                                 Time
      ....
      
      This patch only add basic parsing support according to the definition of
      the PTT packet described in Documentation/trace/hisi-ptt.rst. And the
      fields of each packet can be further decoded following the PCIe Spec's
      definition of TLP packet.
      Signed-off-by: default avatarQi Liu <liuqi115@huawei.com>
      Signed-off-by: default avatarYicong Yang <yangyicong@hisilicon.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Bjorn Helgaas <helgaas@kernel.org>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: James Clark <james.clark@arm.com>
      Cc: John Garry <john.garry@huawei.com>
      Cc: Jonathan Cameron <jonathan.cameron@huawei.com>
      Cc: Leo Yan <leo.yan@linaro.org>
      Cc: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
      Cc: Mike Leach <mike.leach@linaro.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Qi Liu <liuqi6124@gmail.com>
      Cc: Shameerali Kolothum Thodi <shameerali.kolothum.thodi@huawei.com>
      Cc: Shaokun Zhang <zhangshaokun@hisilicon.com>
      Cc: Suzuki Poulouse <suzuki.poulose@arm.com>
      Cc: Will Deacon <will@kernel.org>
      Cc: Zeng Prime <prime.zeng@huawei.com>
      Cc: linux-arm-kernel@lists.infradead.org
      Cc: linux-pci@vger.kernel.org
      Cc: linuxarm@huawei.com
      Link: https://lore.kernel.org/r/20220927081400.14364-4-yangyicong@huawei.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      5e91e57e
    • Qi Liu's avatar
      perf auxtrace arm64: Add support for HiSilicon PCIe Tune and Trace device driver · 057381a7
      Qi Liu authored
      HiSilicon PCIe tune and trace device (PTT) could dynamically tune the
      PCIe link's events, and trace the TLP headers).
      
      This patch add support for PTT device in perf tool, so users could use
      'perf record' to get TLP headers trace data.
      Reviewed-by: default avatarLeo Yan <leo.yan@linaro.org>
      Signed-off-by: default avatarQi Liu <liuqi115@huawei.com>
      Signed-off-by: default avatarYicong Yang <yangyicong@hisilicon.com>
      Acked-by: default avatarJohn Garry <john.garry@huawei.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Bjorn Helgaas <helgaas@kernel.org>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: James Clark <james.clark@arm.com>
      Cc: Jonathan Cameron <jonathan.cameron@huawei.com>
      Cc: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
      Cc: Mike Leach <mike.leach@linaro.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Qi Liu <liuqi6124@gmail.com>
      Cc: Shameerali Kolothum Thodi <shameerali.kolothum.thodi@huawei.com>
      Cc: Shaokun Zhang <zhangshaokun@hisilicon.com>
      Cc: Suzuki Poulouse <suzuki.poulose@arm.com>
      Cc: Will Deacon <will@kernel.org>
      Cc: Zeng Prime <prime.zeng@huawei.com>
      Cc: linux-arm-kernel@lists.infradead.org
      Cc: linux-pci@vger.kernel.org
      Cc: linuxarm@huawei.com
      Link: https://lore.kernel.org/r/20220927081400.14364-3-yangyicong@huawei.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      057381a7
    • Qi Liu's avatar
      perf auxtrace arm: Refactor event list iteration in auxtrace_record__init() · 45a3975f
      Qi Liu authored
      Add find_pmu_for_event() and use to simplify logic in
      auxtrace_record_init(). find_pmu_for_event() will be reused in
      subsequent patches.
      Reviewed-by: default avatarJohn Garry <john.garry@huawei.com>
      Reviewed-by: default avatarJonathan Cameron <Jonathan.Cameron@huawei.com>
      Reviewed-by: default avatarLeo Yan <leo.yan@linaro.org>
      Signed-off-by: default avatarQi Liu <liuqi115@huawei.com>
      Signed-off-by: default avatarYicong Yang <yangyicong@hisilicon.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Bjorn Helgaas <helgaas@kernel.org>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: James Clark <james.clark@arm.com>
      Cc: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
      Cc: Mike Leach <mike.leach@linaro.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Qi Liu <liuqi6124@gmail.com>
      Cc: Shameerali Kolothum Thodi <shameerali.kolothum.thodi@huawei.com>
      Cc: Shaokun Zhang <zhangshaokun@hisilicon.com>
      Cc: Suzuki Poulouse <suzuki.poulose@arm.com>
      Cc: Will Deacon <will@kernel.org>
      Cc: Zeng Prime <prime.zeng@huawei.com>
      Cc: linux-arm-kernel@lists.infradead.org
      Cc: linux-pci@vger.kernel.org
      Cc: linuxarm@huawei.com
      Link: https://lore.kernel.org/r/20220927081400.14364-2-yangyicong@huawei.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      45a3975f
    • Athira Rajeev's avatar
      perf tests stat+json_output: Include sanity check for topology · 58d4802a
      Athira Rajeev authored
      Testcase stat+json_output.sh fails in powerpc:
      
      	86: perf stat JSON output linter : FAILED!
      
      The testcase "stat+json_output.sh" verifies perf stat JSON output. The
      test covers aggregation modes like per-socket, per-core, per-die, -A
      (no_aggr mode) along with few other tests. It counts expected fields for
      various commands. For example say -A (i.e, AGGR_NONE mode), expects 7
      fields in the output having "CPU" as first field. Same way, for
      per-socket, it expects the first field in result to point to socket id.
      The testcases compares the result with expected count.
      
      The values for socket, die, core and cpu are fetched from topology
      directory:
      
        /sys/devices/system/cpu/cpu*/topology.
      
      For example, socket value is fetched from "physical_package_id" file of
      topology directory.  (cpu__get_topology_int() in util/cpumap.c)
      
      If a platform fails to fetch the topology information, values will be
      set to -1. For example, incase of pSeries platform of powerpc, value for
      "physical_package_id" is restricted and not exposed. So, -1 will be
      assigned.
      
      Perf code has a checks for valid cpu id in "aggr_printout"
      (stat-display.c), which displays the fields. So, in cases where topology
      values not exposed, first field of the output displaying will be empty.
      This cause the testcase to fail, as it counts  number of fields in the
      output.
      
      Incase of -A (AGGR_NONE mode,), testcase expects 7 fields in the output,
      becos of -1 value obtained from topology files for some, only 6 fields
      are printed. Hence a testcase failure reported due to mismatch in number
      of fields in the output.
      
      Patch here adds a sanity check in the testcase for topology.  Check will
      help to skip the test if -1 value found.
      
      Fixes: 0c343af2 ("perf test: JSON format checking")
      Reported-by: default avatarDisha Goel <disgoel@linux.vnet.ibm.com>
      Suggested-by: default avatarIan Rogers <irogers@google.com>
      Suggested-by: default avatarJames Clark <james.clark@arm.com>
      Signed-off-by: default avatarAthira Jajeev <atrajeev@linux.vnet.ibm.com>
      Cc: Claire Jensen <cjense@google.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Kajol Jain <kjain@linux.ibm.com>
      Cc: linuxppc-dev@lists.ozlabs.org
      Cc: Madhavan Srinivasan <maddy@linux.vnet.ibm.com>
      Cc: Michael Ellerman <mpe@ellerman.id.au>
      Cc: Nageswara R Sastry <rnsastry@linux.ibm.com>
      Link: https://lore.kernel.org/r/20221006155149.67205-2-atrajeev@linux.vnet.ibm.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      58d4802a
    • Athira Rajeev's avatar
      perf tests stat+csv_output: Include sanity check for topology · cd400f6f
      Athira Rajeev authored
      Testcase stat+csv_output.sh fails in powerpc:
      
      	84: perf stat CSV output linter: FAILED!
      
      The testcase "stat+csv_output.sh" verifies perf stat CSV output. The
      test covers aggregation modes like per-socket, per-core, per-die, -A
      (no_aggr mode) along with few other tests. It counts expected fields for
      various commands. For example say -A (i.e, AGGR_NONE mode), expects 7
      fields in the output having "CPU" as first field. Same way, for
      per-socket, it expects the first field in result to point to socket id.
      The testcases compares the result with expected count.
      
      The values for socket, die, core and cpu are fetched from topology
      directory:
      
        /sys/devices/system/cpu/cpu*/topology.
      
      For example, socket value is fetched from "physical_package_id" file of
      topology directory.  (cpu__get_topology_int() in util/cpumap.c)
      
      If a platform fails to fetch the topology information, values will be
      set to -1. For example, incase of pSeries platform of powerpc, value for
      "physical_package_id" is restricted and not exposed. So, -1 will be
      assigned.
      
      Perf code has a checks for valid cpu id in "aggr_printout"
      (stat-display.c), which displays the fields. So, in cases where topology
      values not exposed, first field of the output displaying will be empty.
      This cause the testcase to fail, as it counts  number of fields in the
      output.
      
      Incase of -A (AGGR_NONE mode,), testcase expects 7 fields in the output,
      becos of -1 value obtained from topology files for some, only 6 fields
      are printed. Hence a testcase failure reported due to mismatch in number
      of fields in the output.
      
      Patch here adds a sanity check in the testcase for topology.  Check will
      help to skip the test if -1 value found.
      
      Fixes: 7473ee56 ("perf test: Add checking for perf stat CSV output.")
      Reported-by: default avatarDisha Goel <disgoel@linux.vnet.ibm.com>
      Suggested-by: default avatarIan Rogers <irogers@google.com>
      Suggested-by: default avatarJames Clark <james.clark@arm.com>
      Signed-off-by: default avatarAthira Jajeev <atrajeev@linux.vnet.ibm.com>
      Cc: Claire Jensen <cjense@google.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Kajol Jain <kjain@linux.ibm.com>
      Cc: linuxppc-dev@lists.ozlabs.org
      Cc: Madhavan Srinivasan <maddy@linux.vnet.ibm.com>
      Cc: Michael Ellerman <mpe@ellerman.id.au>
      Cc: Nageswara R Sastry <rnsastry@linux.ibm.com>
      Link: https://lore.kernel.org/r/20221006155149.67205-1-atrajeev@linux.vnet.ibm.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      cd400f6f
    • Adrian Hunter's avatar
      perf intel-pt: Fix system_wide dummy event for hybrid · 6cef7dab
      Adrian Hunter authored
      User space tasks can migrate between CPUs, so when tracing selected CPUs,
      system-wide sideband is still needed, however evlist->core.has_user_cpus
      is not set in the hybrid case, so check the target cpu_list instead.
      
      Fixes: 7d189cad ("perf intel-pt: Track sideband system-wide when needed")
      Signed-off-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Acked-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: stable@vger.kernel.org
      Link: https://lore.kernel.org/r/20221012082259.22394-3-adrian.hunter@intel.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      6cef7dab
    • Adrian Hunter's avatar
      perf intel-pt: Fix segfault in intel_pt_print_info() with uClibc · 5a3d4707
      Adrian Hunter authored
      uClibc segfaulted because NULL was passed as the format to fprintf().
      
      That happened because one of the format strings was missing and
      intel_pt_print_info() didn't check that before calling fprintf().
      
      Add the missing format string, and check format is not NULL before calling
      fprintf().
      
      Fixes: 11fa7cb8 ("perf tools: Pass Intel PT information for decoding MTC and CYC")
      Signed-off-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Acked-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: stable@vger.kernel.org
      Link: https://lore.kernel.org/r/20221012082259.22394-2-adrian.hunter@intel.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      5a3d4707
    • James Clark's avatar
      perf test: Fix attr tests for PERF_FORMAT_LOST · e2803966
      James Clark authored
      Since PERF_FORMAT_LOST was added, the default read format has that bit
      set, so add it to the tests. Keep the old value as well so that the test
      still passes on older kernels.
      
      This fixes the following failure:
      
        expected read_format=0|4, got 20
        FAILED './tests/attr/test-record-C0' - match failure
      
      Fixes: 85b425f31c8866e0 ("perf record: Set PERF_FORMAT_LOST by default")
      Signed-off-by: default avatarJames Clark <james.clark@arm.com>
      Acked-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: https://lore.kernel.org/r/20221012094633.21669-2-james.clark@arm.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      e2803966
    • Ammy Yi's avatar
      perf test: test_intel_pt.sh: Add 9 tests · f77811a0
      Ammy Yi authored
      Add tests:
      	Test with MTC and TSC disabled
      	Test with branches disabled
      	Test with/without CYC
      	Test recording with sample mode
      	Test with kernel trace
      	Test virtual LBR
      	Test power events
      	Test with TNT packets disabled
      	Test with event_trace
      
      These tests mostly check that perf record works with the corresponding
      Intel PT config terms, sometimes also checking that certain packets do or
      do not appear in the resulting trace as appropriate.
      
      The "Test virtual LBR" is slightly trickier, using a Python script to
      check that branch stacks are actually synthesized.
      Signed-off-by: default avatarAmmy Yi <ammy.yi@intel.com>
      Tested-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Link: https://lore.kernel.org/r/20221014170905.64069-8-adrian.hunter@intel.comSigned-off-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      f77811a0
    • Adrian Hunter's avatar
      perf inject: Fix GEN_ELF_TEXT_OFFSET for jit · 89b15d00
      Adrian Hunter authored
      When a program header was added, it moved the text section but
      GEN_ELF_TEXT_OFFSET was not updated.
      
      Fix by adding the program header size and aligning.
      
      Fixes: babd0438 ("perf jit: Include program header in ELF files")
      Signed-off-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Tested-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Lieven Hey <lieven.hey@kdab.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Link: https://lore.kernel.org/r/20221014170905.64069-7-adrian.hunter@intel.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      89b15d00
    • Adrian Hunter's avatar
      perf test: test_intel_pt.sh: Add jitdump test · 973db240
      Adrian Hunter authored
      Add a test for decoding self-modifying code using a jitdump file.
      
      The test creates a workload that uses self-modifying code and generates its
      own jitdump file.  The result is processed with perf inject --jit and
      checked for decoding errors.
      
      Note the test will fail without patch "perf inject: Fix GEN_ELF_TEXT_OFFSET
      for jit" applied.
      Signed-off-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Tested-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Link: https://lore.kernel.org/r/20221014170905.64069-6-adrian.hunter@intel.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      973db240
    • Adrian Hunter's avatar
      perf test: test_intel_pt.sh: Tidy some alignment · 40053a4b
      Adrian Hunter authored
      Tidy alignment of test function lines to make them more readable.
      Signed-off-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Link: https://lore.kernel.org/r/20221014170905.64069-5-adrian.hunter@intel.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      40053a4b
    • Adrian Hunter's avatar
      perf test: test_intel_pt.sh: Print a message when skipping kernel tracing · 9637bf8f
      Adrian Hunter authored
      Messages display with the perf test -v option. Add a message to show when
      skipping a test because the user cannot do kernel tracing.
      Signed-off-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Tested-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Link: https://lore.kernel.org/r/20221014170905.64069-4-adrian.hunter@intel.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      9637bf8f
    • Adrian Hunter's avatar
      perf test: test_intel_pt.sh: Tidy some perf record options · 5021d82b
      Adrian Hunter authored
      When not decoding, the options "-B -N --no-bpf-event" speed up perf record.
      Make a common function for them.
      Signed-off-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Tested-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Link: https://lore.kernel.org/r/20221014170905.64069-3-adrian.hunter@intel.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      5021d82b
    • Adrian Hunter's avatar
      perf test: test_intel_pt.sh: Fix return checking again · e4080492
      Adrian Hunter authored
      count_result() does not always reset ret=0 which means the value can spill
      into the next test result.
      
      Fix by explicitly setting it to zero between tests.
      
      Committer testing:
      
        # perf test "Miscellaneous Intel PT testing"
        110: Miscellaneous Intel PT testing               : Ok
        #
      
      Tested as well with:
      
        # perf test -v "Miscellaneous Intel PT testing"
      
      Fixes: fd9b45e3 ("perf test: test_intel_pt.sh: Fix return checking")
      Tested-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      Signed-off-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Link: https://lore.kernel.org/r/20221014170905.64069-2-adrian.hunter@intel.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      e4080492
  2. 14 Oct, 2022 10 commits
    • Rob Herring's avatar
      perf: Skip and warn on unknown format 'configN' attrs · e552b7be
      Rob Herring authored
      If the kernel exposes a new perf_event_attr field in a format attr, perf
      will return an error stating the specified PMU can't be found. For
      example, a format attr with 'config3:0-63' causes an error as config3 is
      unknown to perf. This causes a compatibility issue between a newer
      kernel with older perf tool.
      
      Before this change with a kernel adding 'config3' I get:
      
        $ perf record -e arm_spe// -- true
        event syntax error: 'arm_spe//'
                             \___ Cannot find PMU `arm_spe'. Missing kernel support?
        Run 'perf list' for a list of valid events
      
         Usage: perf record [<options>] [<command>]
            or: perf record [<options>] -- <command> [<options>]
      
            -e, --event <event>   event selector. use 'perf list' to list
        available events
      
      After this change, I get:
      
        $ perf record -e arm_spe// -- true
        WARNING: 'arm_spe_0' format 'inv_event_filter' requires 'perf_event_attr::config3' which is not supported by this version of perf!
        [ perf record: Woken up 2 times to write data ]
        [ perf record: Captured and wrote 0.091 MB perf.data ]
      
      To support unknown configN formats, rework the YACC implementation to
      pass any config[0-9]+ format to perf_pmu__new_format() to handle with a
      warning.
      Reviewed-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Signed-off-by: default avatarRob Herring <robh@kernel.org>
      Tested-by: default avatarLeo Yan <leo.yan@linaro.org>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: James Clark <james.clark@arm.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: stable@vger.kernel.org
      Link: https://lore.kernel.org/r/20220914-arm-perf-tool-spe1-2-v2-v4-1-83c098e6212e@kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      e552b7be
    • Andi Kleen's avatar
      perf list: Fix metricgroups title message · 0cef141e
      Andi Kleen authored
        $ perf list metricgroups
      
      gives
      
        List of pre-defined events (to be used in -e):
      
        Metric Groups:
      
        Backend
        Bad
        BadSpec
      
      But that's incorrect of course because metric groups or metrics can only
      be specified with -M. So fix the message to say -e or -M
      Signed-off-by: default avatarAndi Kleen <ak@linux.intel.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Link: https://lore.kernel.org/r/20221004192634.998984-1-ak@linux.intel.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      0cef141e
    • Namhyung Kim's avatar
      perf mem: Fix -C option behavior for perf mem record · 7d60fa2c
      Namhyung Kim authored
      The -C/--cpu option was maily for report but it also affected record as
      it ate the option.  So users needed to use "--" after perf mem record to
      pass the info to the perf record properly.
      
      Check if this option is set for record, and pass it to the actual perf
      record.
      
      Before)
        $ sudo perf --debug perf-event-open mem record -C 0 2>&1 | grep -a sys_perf_event_open
        ...
        sys_perf_event_open: pid -1  cpu 0  group_fd -1  flags 0x8 = 4
        sys_perf_event_open: pid -1  cpu 1  group_fd -1  flags 0x8 = 5
        sys_perf_event_open: pid -1  cpu 2  group_fd -1  flags 0x8 = 6
        sys_perf_event_open: pid -1  cpu 3  group_fd -1  flags 0x8 = 7
        sys_perf_event_open: pid -1  cpu 0  group_fd -1  flags 0x8 = 8
        sys_perf_event_open: pid -1  cpu 1  group_fd -1  flags 0x8 = 9
        sys_perf_event_open: pid -1  cpu 2  group_fd -1  flags 0x8 = 10
        sys_perf_event_open: pid -1  cpu 3  group_fd -1  flags 0x8 = 11
        ...
      
      After)
        $ sudo perf --debug perf-event-open mem record -C 0 2>&1 | grep -a sys_perf_event_open
        ...
        sys_perf_event_open: pid -1  cpu 0  group_fd -1  flags 0x8 = 4
        sys_perf_event_open: pid -1  cpu 0  group_fd -1  flags 0x8 = 5
        sys_perf_event_open: pid -1  cpu 0  group_fd -1  flags 0x8 = 6
        sys_perf_event_open: pid -1  cpu 0  group_fd -1  flags 0x8 = 7
      Reported-by: default avatarRavi Bangoria <ravi.bangoria@amd.com>
      Reviewed-by: default avatarLeo Yan <leo.yan@linaro.org>
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Tested-by: default avatarLeo Yan <leo.yan@linaro.org>
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Leo Yan <leo.yan@linaro.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: https://lore.kernel.org/r/20221004200211.1444521-1-namhyung@kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      7d60fa2c
    • Namhyung Kim's avatar
      perf annotate: Add missing condition flags for arm64 · 531778b1
      Namhyung Kim authored
      According to the document [1], it can also have 'hs', 'lo', 'vc', 'vs' as a
      condition code.  Let's add them too.
      
      [1] https://community.arm.com/arm-community-blogs/b/architectures-and-processors-blog/posts/condition-codes-1-condition-flags-and-codesReported-by: default avatarKevin Nomura <nomurak@google.com>
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: James Clark <james.clark@arm.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: John Garry <john.garry@huawei.com>
      Cc: Leo Yan <leo.yan@linaro.org>
      Cc: Mike Leach <mike.leach@linaro.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Will Deacon <will@kernel.org>
      Cc: linux-arm-kernel@lists.infradead.org
      Link: https://lore.kernel.org/r/20221006222232.266416-1-namhyung@kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      531778b1
    • Arnaldo Carvalho de Melo's avatar
      libperf: Do not include non-UAPI linux/compiler.h header · d5e57375
      Arnaldo Carvalho de Melo authored
      Its just for that __packed define, so use it expanded as __attribute__((packed)),
      like the other files in /usr/include do.
      
      This was problem was preventing building the libperf examples on ALT
      Linux and Fedora 35, fix it.
      Reported-by: default avatarVitaly Chikunov <vt@altlinux.org>
      Acked-by: default avatarIan Rogers <irogers@google.com>
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Dmitry Levin <ldv@altlinux.org
      Cc: Ian Rogers <irogers@google.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Link: http://lore.kernel.org/lkml/Y0lnpl2Ix7VljVDc@kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      d5e57375
    • James Clark's avatar
      perf test: Fix test_arm_coresight.sh failures on Juno · fe180a52
      James Clark authored
      This test commonly fails on Arm Juno because the instruction interval
      is large enough to miss generating any samples for Perf in system-wide
      mode.
      
      Fix this by lowering the interval until a comfortable number of Perf
      instructions are generated. The test is still quick to run because only
      a small amount of trace is gathered.
      
      Before:
      
        sudo ./perf test coresight -vvv
        ...
        Recording trace with system wide mode
        Looking at perf.data file for dumping branch samples:
        Looking at perf.data file for reporting branch samples:
        Looking at perf.data file for instruction samples:
        CoreSight system wide testing: FAIL
        ...
      
      After:
      
        sudo ./perf test coresight -vvv
        ...
        Recording trace with system wide mode
        Looking at perf.data file for dumping branch samples:
        Looking at perf.data file for reporting branch samples:
        Looking at perf.data file for instruction samples:
        CoreSight system wide testing: PASS
        ...
      Reviewed-by: default avatarLeo Yan <leo.yan@linaro.org>
      Signed-off-by: default avatarJames Clark <james.clark@arm.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      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: Suzuki Poulouse <suzuki.poulose@arm.com>
      Cc: coresight@lists.linaro.org
      Link: https://lore.kernel.org/r/20221005140508.1537277-1-james.clark@arm.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      fe180a52
    • Namhyung Kim's avatar
      perf stat: Support old kernels for bperf cgroup counting · f21cb520
      Namhyung Kim authored
      The recent change in the cgroup will break the backward compatiblity in
      the BPF program.  It should support both old and new kernels using BPF
      CO-RE technique.
      
      Like the task_struct->__state handling in the offcpu analysis, we can
      check the field name in the cgroup struct.
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Acked-by: default avatarAndrii Nakryiko <andrii@kernel.org>
      Acked-by: default avatarJiri Olsa <jolsa@kernel.org>
      Cc: Johannes Weiner <hannes@cmpxchg.org>
      Cc: Song Liu <songliubraving@fb.com>
      Cc: Tejun Heo <tj@kernel.org>
      Cc: bpf@vger.kernel.org
      Cc: cgroups@vger.kernel.org
      Cc: zefan li <lizefan.x@bytedance.com>
      Link: http://lore.kernel.org/lkml/20221011052808.282394-1-namhyung@kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      f21cb520
    • Linus Torvalds's avatar
      Merge tag 'drm-next-2022-10-14' of git://anongit.freedesktop.org/drm/drm · 9c9155a3
      Linus Torvalds authored
      Pull more drm updates from Dave Airlie:
       "Round of fixes for the merge window stuff, bunch of amdgpu and i915
        changes, this should have the gcc11 warning fix, amongst other
        changes.
      
        amdgpu:
         - DC mutex fix
         - DC SubVP fixes
         - DCN 3.2.x fixes
         - DCN 3.1.x fixes
         - SDMA 6.x fixes
         - Enable DPIA for 3.1.4
         - VRR fixes
         - VRAM BO swapping fix
         - Revert dirty fb helper change
         - SR-IOV suspend/resume fixes
         - Work around GCC array bounds check fail warning
         - UMC 8.10 fixes
         - Misc fixes and cleanups
      
        i915:
         - Round to closest in g4x+ HDMI clock readout
         - Update MOCS table for EHL
         - Fix PSR_IMR/IIR field handling
         - Fix watermark calculations for gen12+/DG2 modifiers
         - Reject excessive dotclocks early
         - Fix revocation of non-persistent contexts
         - Handle migration for dpt
         - Fix display problems after resume
         - Allow control over the flags when migrating
         - Consider DG2_RC_CCS_CC when migrating buffers"
      
      * tag 'drm-next-2022-10-14' of git://anongit.freedesktop.org/drm/drm: (110 commits)
        drm/amd/display: Add HUBP surface flip interrupt handler
        drm/i915/display: consider DG2_RC_CCS_CC when migrating buffers
        drm/i915: allow control over the flags when migrating
        drm/amd/display: Simplify bool conversion
        drm/amd/display: fix transfer function passed to build_coefficients()
        drm/amd/display: add a license to cursor_reg_cache.h
        drm/amd/display: make virtual_disable_link_output static
        drm/amd/display: fix indentation in dc.c
        drm/amd/display: make dcn32_split_stream_for_mpc_or_odm static
        drm/amd/display: fix build error on arm64
        drm/amd/display: 3.2.207
        drm/amd/display: Clean some DCN32 macros
        drm/amdgpu: Add poison mode query for umc v8_10_0
        drm/amdgpu: Update umc v8_10_0 headers
        drm/amdgpu: fix coding style issue for mca notifier
        drm/amdgpu: define convert_error_address for umc v8.7
        drm/amdgpu: define RAS convert_error_address API
        drm/amdgpu: remove check for CE in RAS error address query
        drm/i915: Fix display problems after resume
        drm/amd/display: fix array-bounds error in dc_stream_remove_writeback() [take 2]
        ...
      9c9155a3
    • Linus Torvalds's avatar
      Merge tag 'block-6.1-2022-10-13' of git://git.kernel.dk/linux · a521fc3c
      Linus Torvalds authored
      Pull more block updates from Jens Axboe:
       "Fixes that ended up landing later than the initial block pull request.
        Nothing really major in here:
      
         - NVMe pull request via Christoph:
              - add NVME_QUIRK_BOGUS_NID for Lexar NM760 (Abhijit)
              - add NVME_QUIRK_NO_DEEPEST_PS to avoid the deepest sleep state
                on ZHITAI TiPro5000 SSDs (Xi Ruoyao)
              - fix possible hang caused during ctrl deletion (Sagi Grimberg)
              - fix possible hang in live ns resize with ANA access (Sagi
                Grimberg)
      
         - Proactively avoid a sign extension issue with the queue flags
           (Brian)
      
         - Regression fix for hidden disks (Christoph)
      
         - Update OPAL maintainers entry (Jonathan)
      
         - blk-wbt regression initialization fix (Yu)"
      
      * tag 'block-6.1-2022-10-13' of git://git.kernel.dk/linux:
        nvme-multipath: fix possible hang in live ns resize with ANA access
        nvme-pci: avoid the deepest sleep state on ZHITAI TiPro5000 SSDs
        nvme-pci: add NVME_QUIRK_BOGUS_NID for Lexar NM760
        nvme-tcp: fix possible hang caused during ctrl deletion
        nvme-rdma: fix possible hang caused during ctrl deletion
        block: fix leaking minors of hidden disks
        block: avoid sign extend problem with default queue flags mask
        blk-wbt: fix that 'rwb->wc' is always set to 1 in wbt_init()
        block: Remove the repeat word 'can'
        MAINTAINERS: Update SED-Opal Maintainers
      a521fc3c
    • Linus Torvalds's avatar
      Merge tag 'io_uring-6.1-2022-10-13' of git://git.kernel.dk/linux · c98c70ed
      Linus Torvalds authored
      Pull more io_uring updates from Jens Axboe:
       "A collection of fixes that ended up either being later than the
        initial pull, or dependent on multiple branches (6.0-late being one of
        them) and hence deferred purposely. This contains:
      
         - Cleanup fixes for the single submitter late 6.0 change, which we
           pushed to 6.1 to keep the 6.0 changes small (Dylan, Pavel)
      
         - Fix for IORING_OP_CONNECT not handling -EINPROGRESS correctly (me)
      
         - Ensure that the zc sendmsg variant gets audited correctly (me)
      
         - Regression fix from this merge window where kiocb_end_write()
           doesn't always gets called, which can cause issues with fs freezing
           (me)
      
         - Registered files SCM handling fix (Pavel)
      
         - Regression fix for big sqe dumping in fdinfo (Pavel)
      
         - Registered buffers accounting fix (Pavel)
      
         - Remove leftover notification structures, we killed them off late in
           6.0 (Pavel)
      
         - Minor optimizations (Pavel)
      
         - Cosmetic variable shadowing fix (Stefan)"
      
      * tag 'io_uring-6.1-2022-10-13' of git://git.kernel.dk/linux:
        io_uring/rw: ensure kiocb_end_write() is always called
        io_uring: fix fdinfo sqe offsets calculation
        io_uring: local variable rw shadows outer variable in io_write
        io_uring/opdef: remove 'audit_skip' from SENDMSG_ZC
        io_uring: optimise locking for local tw with submit_wait
        io_uring: remove redundant memory barrier in io_req_local_work_add
        io_uring/net: handle -EINPROGRESS correct for IORING_OP_CONNECT
        io_uring: remove notif leftovers
        io_uring: correct pinned_vm accounting
        io_uring/af_unix: defer registered files gc to io_uring release
        io_uring: limit registration w/ SINGLE_ISSUER
        io_uring: remove io_register_submitter
        io_uring: simplify __io_uring_add_tctx_node
      c98c70ed
  3. 13 Oct, 2022 14 commits
    • Dave Airlie's avatar
      Merge tag 'amd-drm-fixes-6.1-2022-10-12' of... · fc3523a8
      Dave Airlie authored
      Merge tag 'amd-drm-fixes-6.1-2022-10-12' of https://gitlab.freedesktop.org/agd5f/linux into drm-next
      
      amd-drm-fixes-6.1-2022-10-12:
      
      amdgpu:
      - DC mutex fix
      - DC SubVP fixes
      - DCN 3.2.x fixes
      - DCN 3.1.x fixes
      - SDMA 6.x fixes
      - Enable DPIA for 3.1.4
      - VRR fixes
      - VRAM BO swapping fix
      - Revert dirty fb helper change
      - SR-IOV suspend/resume fixes
      - Work around GCC array bounds check fail warning
      - UMC 8.10 fixes
      - Misc fixes and cleanups
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      From: Alex Deucher <alexander.deucher@amd.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20221012162650.8810-1-alexander.deucher@amd.com
      fc3523a8
    • Dave Airlie's avatar
      Merge tag 'drm-intel-next-fixes-2022-10-13' of... · e55978a4
      Dave Airlie authored
      Merge tag 'drm-intel-next-fixes-2022-10-13' of git://anongit.freedesktop.org/drm/drm-intel into drm-next
      
      - Fix revocation of non-persistent contexts (Tvrtko Ursulin)
      - Handle migration for dpt (Matthew Auld)
      - Fix display problems after resume (Thomas Hellström)
      - Allow control over the flags when migrating (Matthew Auld)
      - Consider DG2_RC_CCS_CC when migrating buffers (Matthew Auld)
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      From: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/Y0gK9QmCmktLLzqp@tursulin-desk
      e55978a4
    • Linus Torvalds's avatar
      Merge tag 'devicetree-fixes-for-6.1-1' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux · 6d84c258
      Linus Torvalds authored
      Pull devicetree fixes from Rob Herring:
      
       - Fixes for Mediatek MT6370 binding
      
       - Merge the DT overlay maintainer entry to the main entry as Pantelis
         is not active and Frank is taking a step back
      
      * tag 'devicetree-fixes-for-6.1-1' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux:
        MAINTAINERS: of: collapse overlay entry into main device tree entry
        dt-bindings: mfd: mt6370: fix the interrupt order of the charger in the example
        dt-bindings: leds: mt6370: Fix MT6370 LED indicator DT warning
      6d84c258
    • Linus Torvalds's avatar
      Merge tag 'mmc-v6.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc · 09817941
      Linus Torvalds authored
      Pull MMC fixes from Ulf Hansson:
       "MMC core:
         - Add SD card quirk for broken discard
      
        MMC host:
         - renesas_sdhi: Fix clock rounding errors
         - sdhci-sprd: Fix minimum clock limit to detect cards
         - sdhci-tegra: Use actual clock rate for SW tuning correction"
      
      * tag 'mmc-v6.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc:
        mmc: sdhci-sprd: Fix minimum clock limit
        mmc: sdhci-tegra: Use actual clock rate for SW tuning correction
        mmc: renesas_sdhi: Fix rounding errors
        mmc: core: Add SD card quirk for broken discard
      09817941
    • Linus Torvalds's avatar
      Merge tag 'docs-6.1-2' of git://git.lwn.net/linux · f2b220ef
      Linus Torvalds authored
      Pull documentation fixes from Jonathan Corbet:
       "A handful of relatively simple documentation fixes, plus a set of
        patches catching the Chinese translation up with the front-page
        rework"
      
      * tag 'docs-6.1-2' of git://git.lwn.net/linux:
        Documentation: rtla: Correct command line example
        docs/zh_CN: add a man-pages link to zh_CN/index.rst
        docs/zh_CN: Rewrite the Chinese translation front page
        docs/zh_CN: add zh_CN/arch.rst
        docs/zh_CN: promote the title of zh_CN/process/index.rst
        docs/zh_CN: Update the translation of page_owner to 6.0-rc7
        docs/zh_CN: Update the translation of ksm to 6.0-rc7
        docs/howto: Replace abundoned URL of gmane.org
        Documentation: ubifs: Fix compression idiom
        Documentation/mm/page_owner.rst: delete frequently changing experimental data
        docs/zh_CN: Fix build warning
        docs: ftrace: Correct access mode
      f2b220ef
    • Linus Torvalds's avatar
      Merge tag 'net-6.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net · 66ae0436
      Linus Torvalds authored
      Pull networking fixes from Jakub Kicinski:
       "Including fixes from netfilter, and wifi.
      
      Current release - regressions:
      
         - Revert "net/sched: taprio: make qdisc_leaf() see the
           per-netdev-queue pfifo child qdiscs", it may cause crashes when the
           qdisc is reconfigured
      
         - inet: ping: fix splat due to packet allocation refactoring in inet
      
         - tcp: clean up kernel listener's reqsk in inet_twsk_purge(), fix UAF
           due to races when per-netns hash table is used
      
        Current release - new code bugs:
      
         - eth: adin1110: check in netdev_event that netdev belongs to driver
      
         - fixes for PTR_ERR() vs NULL bugs in driver code, from Dan and co.
      
        Previous releases - regressions:
      
         - ipv4: handle attempt to delete multipath route when fib_info
           contains an nh reference, avoid oob access
      
         - wifi: fix handful of bugs in the new Multi-BSSID code
      
         - wifi: mt76: fix rate reporting / throughput regression on mt7915
           and newer, fix checksum offload
      
         - wifi: iwlwifi: mvm: fix double list_add at
           iwl_mvm_mac_wake_tx_queue (other cases)
      
         - wifi: mac80211: do not drop packets smaller than the LLC-SNAP
           header on fast-rx
      
        Previous releases - always broken:
      
         - ieee802154: don't warn zero-sized raw_sendmsg()
      
         - ipv6: ping: fix wrong checksum for large frames
      
         - mctp: prevent double key removal and unref
      
         - tcp/udp: fix memory leaks and races around IPV6_ADDRFORM
      
         - hv_netvsc: fix race between VF offering and VF association message
      
        Misc:
      
         - remove -Warray-bounds silencing in the drivers, compilers fixed"
      
      * tag 'net-6.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (73 commits)
        sunhme: fix an IS_ERR() vs NULL check in probe
        net: marvell: prestera: fix a couple NULL vs IS_ERR() checks
        kcm: avoid potential race in kcm_tx_work
        tcp: Clean up kernel listener's reqsk in inet_twsk_purge()
        net: phy: micrel: Fixes FIELD_GET assertion
        openvswitch: add nf_ct_is_confirmed check before assigning the helper
        tcp: Fix data races around icsk->icsk_af_ops.
        ipv6: Fix data races around sk->sk_prot.
        tcp/udp: Call inet6_destroy_sock() in IPv6 sk->sk_destruct().
        udp: Call inet6_destroy_sock() in setsockopt(IPV6_ADDRFORM).
        tcp/udp: Fix memory leak in ipv6_renew_options().
        mctp: prevent double key removal and unref
        selftests: netfilter: Fix nft_fib.sh for all.rp_filter=1
        netfilter: rpfilter/fib: Populate flowic_l3mdev field
        selftests: netfilter: Test reverse path filtering
        net/mlx5: Make ASO poll CQ usable in atomic context
        tcp: cdg: allow tcp_cdg_release() to be called multiple times
        inet: ping: fix recent breakage
        ipv6: ping: fix wrong checksum for large frames
        net: ethernet: ti: am65-cpsw: set correct devlink flavour for unused ports
        ...
      66ae0436
    • Linus Torvalds's avatar
      Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost · d6f04f26
      Linus Torvalds authored
      Pull virtio fixes from Michael Tsirkin:
      
       - Fix a regression in virtio pci on power
      
       - Add a reviewer for ifcvf
      
      * tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost:
        vdpa/ifcvf: add reviewer
        virtio_pci: use irq to detect interrupt support
      d6f04f26
    • Linus Torvalds's avatar
      Merge tag 'trace-v6.1-1' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace · aa41478a
      Linus Torvalds authored
      Pull tracing fixes from Steven Rostedt:
      
       - Found that the synthetic events were using strlen/strscpy() on values
         that could have come from userspace, and that is bad.
      
         Consolidate the string logic of kprobe and eprobe and extend it to
         the synthetic events to safely process string addresses.
      
       - Clean up content of text dump in ftrace_bug() where the output does
         not make char reads into signed and sign extending the byte output.
      
       - Fix some kernel docs in the ring buffer code.
      
      * tag 'trace-v6.1-1' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace:
        tracing: Fix reading strings from synthetic events
        tracing: Add "(fault)" name injection to kernel probes
        tracing: Move duplicate code of trace_kprobe/eprobe.c into header
        ring-buffer: Fix kernel-doc
        ftrace: Fix char print issue in print_ip_ins()
      aa41478a
    • Linus Torvalds's avatar
      Merge tag 'linux-watchdog-6.1-rc1' of git://www.linux-watchdog.org/linux-watchdog · 3d33e6dd
      Linus Torvalds authored
      Pull watchdog updates from Wim Van Sebroeck:
      
       - new driver for Exar/MaxLinear XR28V38x
      
       - support for exynosautov9 SoC
      
       - support for Renesas R-Car V5H (R8A779G0) and RZ/V2M (r9a09g011) SoC
      
       - support for imx93
      
       - several other fixes and improvements
      
      * tag 'linux-watchdog-6.1-rc1' of git://www.linux-watchdog.org/linux-watchdog: (36 commits)
        watchdog: twl4030_wdt: add missing mod_devicetable.h include
        dt-bindings: watchdog: migrate mt7621 text bindings to YAML
        watchdog: sp5100_tco: Add "action" module parameter
        watchdog: imx93: add watchdog timer on imx93
        watchdog: imx7ulp_wdt: init wdog when it was active
        watchdog: imx7ulp_wdt: Handle wdog reconfigure failure
        watchdog: imx7ulp_wdt: Fix RCS timeout issue
        watchdog: imx7ulp_wdt: Check CMD32EN in wdog init
        watchdog: imx7ulp: Add explict memory barrier for unlock sequence
        watchdog: imx7ulp: Move suspend/resume to noirq phase
        watchdog: rti-wdt:using the pm_runtime_resume_and_get to simplify the code
        dt-bindings: watchdog: rockchip: add rockchip,rk3128-wdt
        watchdog: s3c2410_wdt: support exynosautov9 watchdog
        dt-bindings: watchdog: add exynosautov9 compatible
        watchdog: npcm: Enable clock if provided
        watchdog: meson: keep running if already active
        watchdog: dt-bindings: atmel,at91sam9-wdt: convert to json-schema
        watchdog: armada_37xx_wdt: Fix .set_timeout callback
        watchdog: sa1100: make variable sa1100dog_driver static
        watchdog: w83977f_wdt: Fix comment typo
        ...
      3d33e6dd
    • Linus Torvalds's avatar
      Merge tag 'ceph-for-6.1-rc1' of https://github.com/ceph/ceph-client · 524d0c68
      Linus Torvalds authored
      Pull ceph updates from Ilya Dryomov:
       "A quiet round this time: several assorted filesystem fixes, the most
        noteworthy one being some additional wakeups in cap handling code, and
        a messenger cleanup"
      
      * tag 'ceph-for-6.1-rc1' of https://github.com/ceph/ceph-client:
        ceph: remove Sage's git tree from documentation
        ceph: fix incorrectly showing the .snap size for stat
        ceph: fail the open_by_handle_at() if the dentry is being unlinked
        ceph: increment i_version when doing a setattr with caps
        ceph: Use kcalloc for allocating multiple elements
        ceph: no need to wait for transition RDCACHE|RD -> RD
        ceph: fail the request if the peer MDS doesn't support getvxattr op
        ceph: wake up the waiters if any new caps comes
        libceph: drop last_piece flag from ceph_msg_data_cursor
      524d0c68
    • Linus Torvalds's avatar
      Merge tag 'nfs-for-6.1-1' of git://git.linux-nfs.org/projects/anna/linux-nfs · 66b83455
      Linus Torvalds authored
      Pull NFS client updates from Anna Schumaker:
       "New Features:
         - Add NFSv4.2 xattr tracepoints
         - Replace xprtiod WQ in rpcrdma
         - Flexfiles cancels I/O on layout recall or revoke
      
        Bugfixes and Cleanups:
         - Directly use ida_alloc() / ida_free()
         - Don't open-code max_t()
         - Prefer using strscpy over strlcpy
         - Remove unused forward declarations
         - Always return layout states on flexfiles layout return
         - Have LISTXATTR treat NFS4ERR_NOXATTR as an empty reply instead of
           error
         - Allow more xprtrdma memory allocations to fail without triggering a
           reclaim
         - Various other xprtrdma clean ups
         - Fix rpc_killall_tasks() races"
      
      * tag 'nfs-for-6.1-1' of git://git.linux-nfs.org/projects/anna/linux-nfs: (27 commits)
        NFSv4/flexfiles: Cancel I/O if the layout is recalled or revoked
        SUNRPC: Add API to force the client to disconnect
        SUNRPC: Add a helper to allow pNFS drivers to selectively cancel RPC calls
        SUNRPC: Fix races with rpc_killall_tasks()
        xprtrdma: Fix uninitialized variable
        xprtrdma: Prevent memory allocations from driving a reclaim
        xprtrdma: Memory allocation should be allowed to fail during connect
        xprtrdma: MR-related memory allocation should be allowed to fail
        xprtrdma: Clean up synopsis of rpcrdma_regbuf_alloc()
        xprtrdma: Clean up synopsis of rpcrdma_req_create()
        svcrdma: Clean up RPCRDMA_DEF_GFP
        SUNRPC: Replace the use of the xprtiod WQ in rpcrdma
        NFSv4.2: Add a tracepoint for listxattr
        NFSv4.2: Add tracepoints for getxattr, setxattr, and removexattr
        NFSv4.2: Move TRACE_DEFINE_ENUM(NFS4_CONTENT_*) under CONFIG_NFS_V4_2
        NFSv4.2: Add special handling for LISTXATTR receiving NFS4ERR_NOXATTR
        nfs: remove nfs_wait_atomic_killable() and nfs_write_prepare() declaration
        NFSv4: remove nfs4_renewd_prepare_shutdown() declaration
        fs/nfs/pnfs_nfs.c: fix spelling typo and syntax error in comment
        NFSv4/pNFS: Always return layout stats on layout return for flexfiles
        ...
      66b83455
    • Linus Torvalds's avatar
      Merge tag 'for-linus-6.1-ofs1' of git://git.kernel.org/pub/scm/linux/kernel/git/hubcap/linux · 531d3b5f
      Linus Torvalds authored
      Pull orangefs update from Mike Marshall:
       "Change iterate to iterate_shared"
      
      * tag 'for-linus-6.1-ofs1' of git://git.kernel.org/pub/scm/linux/kernel/git/hubcap/linux:
        Orangefs: change iterate to iterate_shared
      531d3b5f
    • Pierre Gondois's avatar
      Documentation: rtla: Correct command line example · 877d95dc
      Pierre Gondois authored
      The '-t/-T' parameters seem to have been swapped:
      -t/--trace[=file]: save the stopped trace
      to [file|timerlat_trace.txt]
      -T/--thread us: stop trace if the thread latency
      is higher than the argument in us
      
      Swap them back.
      Signed-off-by: default avatarPierre Gondois <pierre.gondois@arm.com>
      Acked-by: default avatarDaniel Bristot de Oliveira <bristot@kernel.org>
      Link: https://lore.kernel.org/r/20221006084409.3882542-1-pierre.gondois@arm.comSigned-off-by: default avatarJonathan Corbet <corbet@lwn.net>
      877d95dc
    • Dan Carpenter's avatar
      sunhme: fix an IS_ERR() vs NULL check in probe · 99df45c9
      Dan Carpenter authored
      The devm_request_region() function does not return error pointers, it
      returns NULL on error.
      
      Fixes: 914d9b27 ("sunhme: switch to devres")
      Signed-off-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
      Reviewed-by: default avatarSean Anderson <seanga2@gmail.com>
      Reviewed-by: default avatarRolf Eike Beer <eike-kernel@sf-tec.de>
      Link: https://lore.kernel.org/r/Y0bWzJL8JknX8MUf@kiliSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      99df45c9