1. 29 7月, 2022 17 次提交
  2. 28 7月, 2022 3 次提交
  3. 27 7月, 2022 5 次提交
    • I
      perf bpf: Remove undefined behavior from bpf_perf_object__next() · 9a241805
      Ian Rogers 提交于
      bpf_perf_object__next() folded the last element in the list test with the
      empty list test. However, this meant that offsets were computed against
      null and that a struct list_head was compared against a 'struct
      bpf_perf_object'.
      
      Working around this with clang's undefined behavior sanitizer required
      -fno-sanitize=null and -fno-sanitize=object-size.
      
      Remove the undefined behavior by using the regular Linux list APIs and
      handling the starting case separately from the end testing case.
      
      Looking at uses like bpf_perf_object__for_each(), as the constant NULL
      or non-NULL argument can be constant propagated, the code is no less
      efficient.
      Signed-off-by: NIan Rogers <irogers@google.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Alexei Starovoitov <ast@kernel.org>
      Cc: Andrii Nakryiko <andrii@kernel.org>
      Cc: Christy Lee <christylee@fb.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Miaoqian Lin <linmq006@gmail.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Nathan Chancellor <nathan@kernel.org>
      Cc: Nick Desaulniers <ndesaulniers@google.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Tom Rix <trix@redhat.com>
      Cc: bpf@vger.kernel.org
      Cc: llvm@lists.linux.dev
      Link: https://lore.kernel.org/r/20220726220921.2567761-1-irogers@google.comSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      9a241805
    • L
      perf symbol: Skip symbols if SHF_ALLOC flag is not set · 882528d2
      Leo Yan 提交于
      Some symbols are observed with the 'st_value' field zeroed.  E.g.
      libc.so.6 in Ubuntu contains a symbol '__evoke_link_warning_getwd' which
      resides in the '.gnu.warning.getwd' section.
      
      Unlike normal sections, such kind of sections are used for linker
      warning when a file calls deprecated functions, but they are not part of
      memory images, the symbols in these sections should be dropped.
      
      This patch checks the section attribute SHF_ALLOC bit, if the bit is not
      set, it skips symbols to avoid spurious ones.
      Suggested-by: NFangrui Song <maskray@google.com>
      Signed-off-by: NLeo Yan <leo.yan@linaro.org>
      Acked-by: NNamhyung Kim <namhyung@kernel.org>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Chang Rui <changruinj@gmail.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: https://lore.kernel.org/r/20220724060013.171050-3-leo.yan@linaro.orgSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      882528d2
    • L
      perf symbol: Correct address for bss symbols · 2d86612a
      Leo Yan 提交于
      When using 'perf mem' and 'perf c2c', an issue is observed that tool
      reports the wrong offset for global data symbols.  This is a common
      issue on both x86 and Arm64 platforms.
      
      Let's see an example, for a test program, below is the disassembly for
      its .bss section which is dumped with objdump:
      
        ...
      
        Disassembly of section .bss:
      
        0000000000004040 <completed.0>:
        	...
      
        0000000000004080 <buf1>:
        	...
      
        00000000000040c0 <buf2>:
        	...
      
        0000000000004100 <thread>:
        	...
      
      First we used 'perf mem record' to run the test program and then used
      'perf --debug verbose=4 mem report' to observe what's the symbol info
      for 'buf1' and 'buf2' structures.
      
        # ./perf mem record -e ldlat-loads,ldlat-stores -- false_sharing.exe 8
        # ./perf --debug verbose=4 mem report
          ...
          dso__load_sym_internal: adjusting symbol: st_value: 0x40c0 sh_addr: 0x4040 sh_offset: 0x3028
          symbol__new: buf2 0x30a8-0x30e8
          ...
          dso__load_sym_internal: adjusting symbol: st_value: 0x4080 sh_addr: 0x4040 sh_offset: 0x3028
          symbol__new: buf1 0x3068-0x30a8
          ...
      
      The perf tool relies on libelf to parse symbols, in executable and
      shared object files, 'st_value' holds a virtual address; 'sh_addr' is
      the address at which section's first byte should reside in memory, and
      'sh_offset' is the byte offset from the beginning of the file to the
      first byte in the section.  The perf tool uses below formula to convert
      a symbol's memory address to a file address:
      
        file_address = st_value - sh_addr + sh_offset
                          ^
                          ` Memory address
      
      We can see the final adjusted address ranges for buf1 and buf2 are
      [0x30a8-0x30e8) and [0x3068-0x30a8) respectively, apparently this is
      incorrect, in the code, the structure for 'buf1' and 'buf2' specifies
      compiler attribute with 64-byte alignment.
      
      The problem happens for 'sh_offset', libelf returns it as 0x3028 which
      is not 64-byte aligned, combining with disassembly, it's likely libelf
      doesn't respect the alignment for .bss section, therefore, it doesn't
      return the aligned value for 'sh_offset'.
      
      Suggested by Fangrui Song, ELF file contains program header which
      contains PT_LOAD segments, the fields p_vaddr and p_offset in PT_LOAD
      segments contain the execution info.  A better choice for converting
      memory address to file address is using the formula:
      
        file_address = st_value - p_vaddr + p_offset
      
      This patch introduces elf_read_program_header() which returns the
      program header based on the passed 'st_value', then it uses the formula
      above to calculate the symbol file address; and the debugging log is
      updated respectively.
      
      After applying the change:
      
        # ./perf --debug verbose=4 mem report
          ...
          dso__load_sym_internal: adjusting symbol: st_value: 0x40c0 p_vaddr: 0x3d28 p_offset: 0x2d28
          symbol__new: buf2 0x30c0-0x3100
          ...
          dso__load_sym_internal: adjusting symbol: st_value: 0x4080 p_vaddr: 0x3d28 p_offset: 0x2d28
          symbol__new: buf1 0x3080-0x30c0
          ...
      
      Fixes: f17e04af ("perf report: Fix ELF symbol parsing")
      Reported-by: NChang Rui <changruinj@gmail.com>
      Suggested-by: NFangrui Song <maskray@google.com>
      Signed-off-by: NLeo Yan <leo.yan@linaro.org>
      Acked-by: NNamhyung Kim <namhyung@kernel.org>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: https://lore.kernel.org/r/20220724060013.171050-2-leo.yan@linaro.orgSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      2d86612a
    • L
      perf scripts python: Let script to be python2 compliant · b2265219
      Leo Yan 提交于
      The mainline kernel can be used for relative old distros, e.g. RHEL 7.
      The distro doesn't upgrade from python2 to python3, this causes the
      building error that the python script is not python2 compliant.
      
      To fix the building failure, this patch changes from the python f-string
      format to traditional string format.
      
      Fixes: 12fdd6c0 ("perf scripts python: Support Arm CoreSight trace data disassembly")
      Reported-by: NAkemi Yagi <toracat@elrepo.org>
      Signed-off-by: NLeo Yan <leo.yan@linaro.org>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: ElRepo <contact@elrepo.org>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Leo Yan <leo.yan@linaro.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/20220725104220.1106663-1-leo.yan@linaro.orgSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      b2265219
    • A
      tools headers cpufeatures: Sync with the kernel sources · 553de6e1
      Arnaldo Carvalho de Melo 提交于
      To pick the changes from:
      
        28a99e95 ("x86/amd: Use IBPB for firmware calls")
      
      This only causes these perf files to be rebuilt:
      
        CC       /tmp/build/perf/bench/mem-memcpy-x86-64-asm.o
        CC       /tmp/build/perf/bench/mem-memset-x86-64-asm.o
      
      And addresses this perf build warning:
      
        Warning: Kernel ABI header at 'tools/arch/x86/include/asm/cpufeatures.h' differs from latest version at 'arch/x86/include/asm/cpufeatures.h'
        diff -u tools/arch/x86/include/asm/cpufeatures.h arch/x86/include/asm/cpufeatures.h
      
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Borislav Petkov <bp@suse.de>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org
      Link: https://lore.kernel.org/lkml/Yt6oWce9UDAmBAtX@kernel.orgSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      553de6e1
  4. 25 7月, 2022 1 次提交
  5. 20 7月, 2022 2 次提交
    • K
      selftests: gpio: fix include path to kernel headers for out of tree builds · f63731e1
      Kent Gibson 提交于
      When building selftests out of the kernel tree the gpio.h the include
      path is incorrect and the build falls back to the system includes
      which may be outdated.
      
      Add the KHDR_INCLUDES to the CFLAGS to include the gpio.h from the
      build tree.
      
      Fixes: 4f4d0af7 ("selftests: gpio: restore CFLAGS options")
      Reported-by: Nkernel test robot <lkp@intel.com>
      Signed-off-by: NKent Gibson <warthog618@gmail.com>
      Signed-off-by: NBartosz Golaszewski <brgl@bgdev.pl>
      f63731e1
    • F
      tools: Fixed MIPS builds due to struct flock re-definition · 9b31e608
      Florian Fainelli 提交于
      Building perf for MIPS failed after 9f79b8b7 ("uapi: simplify
      __ARCH_FLOCK{,64}_PAD a little") with the following error:
      
        CC
      /home/fainelli/work/buildroot/output/bmips/build/linux-custom/tools/perf/trace/beauty/fcntl.o
      In file included from
      ../../../../host/mipsel-buildroot-linux-gnu/sysroot/usr/include/asm/fcntl.h:77,
                       from ../include/uapi/linux/fcntl.h:5,
                       from trace/beauty/fcntl.c:10:
      ../include/uapi/asm-generic/fcntl.h:188:8: error: redefinition of
      'struct flock'
       struct flock {
              ^~~~~
      In file included from ../include/uapi/linux/fcntl.h:5,
                       from trace/beauty/fcntl.c:10:
      ../../../../host/mipsel-buildroot-linux-gnu/sysroot/usr/include/asm/fcntl.h:63:8:
      note: originally defined here
       struct flock {
              ^~~~~
      
      This is due to the local copy under
      tools/include/uapi/asm-generic/fcntl.h including the toolchain's kernel
      headers which already define 'struct flock' and define
      HAVE_ARCH_STRUCT_FLOCK to future inclusions make a decision as to
      whether re-defining 'struct flock' is appropriate or not.
      
      Make sure what do not re-define 'struct flock'
      when HAVE_ARCH_STRUCT_FLOCK is already defined.
      
      Fixes: 9f79b8b7 ("uapi: simplify __ARCH_FLOCK{,64}_PAD a little")
      Signed-off-by: NFlorian Fainelli <f.fainelli@gmail.com>
      Reviewed-by: NChristoph Hellwig <hch@lst.de>
      [arnd: sync with include/uapi/asm-generic/fcntl.h as well]
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      9b31e608
  6. 19 7月, 2022 2 次提交
    • P
      tools headers UAPI: Sync linux/kvm.h with the kernel sources · dc951e22
      Paolo Bonzini 提交于
      Silence this perf build warning:
      
        Warning: Kernel ABI header at 'tools/include/uapi/linux/kvm.h' differs from latest version at 'include/uapi/linux/kvm.h'
        diff -u tools/include/uapi/linux/kvm.h include/uapi/linux/kvm.h
      Reported-by: NArnaldo Carvalho de Melo <acme@redhat.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>
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      dc951e22
    • G
      KVM: selftests: Fix target thread to be migrated in rseq_test · e923b053
      Gavin Shan 提交于
      In rseq_test, there are two threads, which are vCPU thread and migration
      worker separately. Unfortunately, the test has the wrong PID passed to
      sched_setaffinity() in the migration worker. It forces migration on the
      migration worker because zeroed PID represents the calling thread, which
      is the migration worker itself. It means the vCPU thread is never enforced
      to migration and it can migrate at any time, which eventually leads to
      failure as the following logs show.
      
        host# uname -r
        5.19.0-rc6-gavin+
        host# # cat /proc/cpuinfo | grep processor | tail -n 1
        processor    : 223
        host# pwd
        /home/gavin/sandbox/linux.main/tools/testing/selftests/kvm
        host# for i in `seq 1 100`; do \
              echo "--------> $i"; ./rseq_test; done
        --------> 1
        --------> 2
        --------> 3
        --------> 4
        --------> 5
        --------> 6
        ==== Test Assertion Failure ====
          rseq_test.c:265: rseq_cpu == cpu
          pid=3925 tid=3925 errno=4 - Interrupted system call
             1  0x0000000000401963: main at rseq_test.c:265 (discriminator 2)
             2  0x0000ffffb044affb: ?? ??:0
             3  0x0000ffffb044b0c7: ?? ??:0
             4  0x0000000000401a6f: _start at ??:?
          rseq CPU = 4, sched CPU = 27
      
      Fix the issue by passing correct parameter, TID of the vCPU thread, to
      sched_setaffinity() in the migration worker.
      
      Fixes: 61e52f16 ("KVM: selftests: Add a test for KVM_RUN+rseq to detect task migration bugs")
      Suggested-by: NSean Christopherson <seanjc@google.com>
      Signed-off-by: NGavin Shan <gshan@redhat.com>
      Reviewed-by: NOliver Upton <oliver.upton@linux.dev>
      Message-Id: <20220719020830.3479482-1-gshan@redhat.com>
      Reviewed-by: NAndrew Jones <andrew.jones@linux.dev>
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      e923b053
  7. 18 7月, 2022 1 次提交
    • J
      random: remove CONFIG_ARCH_RANDOM · 9592eef7
      Jason A. Donenfeld 提交于
      When RDRAND was introduced, there was much discussion on whether it
      should be trusted and how the kernel should handle that. Initially, two
      mechanisms cropped up, CONFIG_ARCH_RANDOM, a compile time switch, and
      "nordrand", a boot-time switch.
      
      Later the thinking evolved. With a properly designed RNG, using RDRAND
      values alone won't harm anything, even if the outputs are malicious.
      Rather, the issue is whether those values are being *trusted* to be good
      or not. And so a new set of options were introduced as the real
      ones that people use -- CONFIG_RANDOM_TRUST_CPU and "random.trust_cpu".
      With these options, RDRAND is used, but it's not always credited. So in
      the worst case, it does nothing, and in the best case, maybe it helps.
      
      Along the way, CONFIG_ARCH_RANDOM's meaning got sort of pulled into the
      center and became something certain platforms force-select.
      
      The old options don't really help with much, and it's a bit odd to have
      special handling for these instructions when the kernel can deal fine
      with the existence or untrusted existence or broken existence or
      non-existence of that CPU capability.
      
      Simplify the situation by removing CONFIG_ARCH_RANDOM and using the
      ordinary asm-generic fallback pattern instead, keeping the two options
      that are actually used. For now it leaves "nordrand" for now, as the
      removal of that will take a different route.
      Acked-by: NMichael Ellerman <mpe@ellerman.id.au>
      Acked-by: NCatalin Marinas <catalin.marinas@arm.com>
      Acked-by: NBorislav Petkov <bp@suse.de>
      Acked-by: NHeiko Carstens <hca@linux.ibm.com>
      Acked-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      Signed-off-by: NJason A. Donenfeld <Jason@zx2c4.com>
      9592eef7
  8. 17 7月, 2022 6 次提交
    • N
      perf trace: Fix SIGSEGV when processing syscall args · 4b335e1e
      Naveen N. Rao 提交于
      On powerpc, 'perf trace' is crashing with a SIGSEGV when trying to
      process a perf.data file created with 'perf trace record -p':
      
        #0  0x00000001225b8988 in syscall_arg__scnprintf_augmented_string <snip> at builtin-trace.c:1492
        #1  syscall_arg__scnprintf_filename <snip> at builtin-trace.c:1492
        #2  syscall_arg__scnprintf_filename <snip> at builtin-trace.c:1486
        #3  0x00000001225bdd9c in syscall_arg_fmt__scnprintf_val <snip> at builtin-trace.c:1973
        #4  syscall__scnprintf_args <snip> at builtin-trace.c:2041
        #5  0x00000001225bff04 in trace__sys_enter <snip> at builtin-trace.c:2319
      
      That points to the below code in tools/perf/builtin-trace.c:
      	/*
      	 * If this is raw_syscalls.sys_enter, then it always comes with the 6 possible
      	 * arguments, even if the syscall being handled, say "openat", uses only 4 arguments
      	 * this breaks syscall__augmented_args() check for augmented args, as we calculate
      	 * syscall->args_size using each syscalls:sys_enter_NAME tracefs format file,
      	 * so when handling, say the openat syscall, we end up getting 6 args for the
      	 * raw_syscalls:sys_enter event, when we expected just 4, we end up mistakenly
      	 * thinking that the extra 2 u64 args are the augmented filename, so just check
      	 * here and avoid using augmented syscalls when the evsel is the raw_syscalls one.
      	 */
      	if (evsel != trace->syscalls.events.sys_enter)
      		augmented_args = syscall__augmented_args(sc, sample, &augmented_args_size, trace->raw_augmented_syscalls_args_size);
      
      As the comment points out, we should not be trying to augment the args
      for raw_syscalls. However, when processing a perf.data file, we are not
      initializing those properly. Fix the same.
      Reported-by: NClaudio Carvalho <cclaudio@linux.ibm.com>
      Signed-off-by: NNaveen N. Rao <naveen.n.rao@linux.vnet.ibm.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Link: http://lore.kernel.org/lkml/20220707090900.572584-1-naveen.n.rao@linux.vnet.ibm.comSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      4b335e1e
    • A
      perf tests: Fix Convert perf time to TSC test for hybrid · deb44a62
      Adrian Hunter 提交于
      The test does not always correctly determine the number of events for
      hybrids, nor allow for more than 1 evsel when parsing.
      
      Fix by iterating the events actually created and getting the correct
      evsel for the events processed.
      
      Fixes: d9da6f70 ("perf tests: Support 'Convert perf time to TSC' test for hybrid")
      Reviewed-by: NKan Liang <kan.liang@linux.intel.com>
      Signed-off-by: NAdrian Hunter <adrian.hunter@intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Jin Yao <yao.jin@linux.intel.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Thomas Richter <tmricht@linux.ibm.com>
      Link: https://lore.kernel.org/r/20220713123459.24145-3-adrian.hunter@intel.comSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      deb44a62
    • A
      perf tests: Stop Convert perf time to TSC test opening events twice · 498c7a54
      Adrian Hunter 提交于
      Do not call evlist__open() twice.
      
      Fixes: 5bb017d4 ("perf test: Fix error message for test case 71 on s390, where it is not supported")
      Reviewed-by: NKan Liang <kan.liang@linux.intel.com>
      Signed-off-by: NAdrian Hunter <adrian.hunter@intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Thomas Richter <tmricht@linux.ibm.com>
      Link: https://lore.kernel.org/r/20220713123459.24145-2-adrian.hunter@intel.comSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      498c7a54
    • A
      tools arch x86: Sync the msr-index.h copy with the kernel sources · 91d248c3
      Arnaldo Carvalho de Melo 提交于
      To pick up the changes from these csets:
      
        4ad3278d ("x86/speculation: Disable RRSBA behavior")
        d7caac99 ("x86/cpu/amd: Add Spectral Chicken")
      
      That cause no changes to tooling:
      
        $ 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
        $
      
      Just silences this perf build warning:
      
        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'
        diff -u tools/arch/x86/include/asm/msr-index.h arch/x86/include/asm/msr-index.h
      
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Borislav Petkov <bp@suse.de>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Pawan Gupta <pawan.kumar.gupta@linux.intel.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: https://lore.kernel.org/lkml/YtQTm9wsB3hxQWvy@kernel.orgSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      91d248c3
    • A
      tools headers cpufeatures: Sync with the kernel sources · f098addb
      Arnaldo Carvalho de Melo 提交于
      To pick the changes from:
      
        f43b9876 ("x86/retbleed: Add fine grained Kconfig knobs")
        a149180f ("x86: Add magic AMD return-thunk")
        15e67227 ("x86: Undo return-thunk damage")
        369ae6ff ("x86/retpoline: Cleanup some #ifdefery")
        4ad3278d x86/speculation: Disable RRSBA behavior
        26aae8cc x86/cpu/amd: Enumerate BTC_NO
        9756bba2 x86/speculation: Fill RSB on vmexit for IBRS
        3ebc1700 x86/bugs: Add retbleed=ibpb
        2dbb887e x86/entry: Add kernel IBRS implementation
        6b80b59b x86/bugs: Report AMD retbleed vulnerability
        a149180f x86: Add magic AMD return-thunk
        15e67227 x86: Undo return-thunk damage
        a883d624 x86/cpufeatures: Move RETPOLINE flags to word 11
        51802186 x86/speculation/mmio: Enumerate Processor MMIO Stale Data bug
      
      This only causes these perf files to be rebuilt:
      
        CC       /tmp/build/perf/bench/mem-memcpy-x86-64-asm.o
        CC       /tmp/build/perf/bench/mem-memset-x86-64-asm.o
      
      And addresses this perf build warning:
      
        Warning: Kernel ABI header at 'tools/arch/x86/include/asm/cpufeatures.h' differs from latest version at 'arch/x86/include/asm/cpufeatures.h'
        diff -u tools/arch/x86/include/asm/cpufeatures.h arch/x86/include/asm/cpufeatures.h
        Warning: Kernel ABI header at 'tools/arch/x86/include/asm/disabled-features.h' differs from latest version at 'arch/x86/include/asm/disabled-features.h'
        diff -u tools/arch/x86/include/asm/disabled-features.h arch/x86/include/asm/disabled-features.h
      
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Borislav Petkov <bp@suse.de>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org
      Link: https://lore.kernel.org/lkml/YtQM40VmiLTkPND2@kernel.orgSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      f098addb
    • A
      tools headers UAPI: Sync linux/kvm.h with the kernel sources · eee51fe3
      Arnaldo Carvalho de Melo 提交于
      To pick the changes in:
      
        1b870fa5 ("kvm: stats: tell userspace which values are boolean")
      
      That just rebuilds perf, as these patches don't add any new KVM ioctl to
      be harvested for the the 'perf trace' ioctl syscall argument
      beautifiers.
      
      This is also by now used by tools/testing/selftests/kvm/, a simple test
      build succeeded.
      
      This silences this perf build warning:
      
        Warning: Kernel ABI header at 'tools/include/uapi/linux/kvm.h' differs from latest version at 'include/uapi/linux/kvm.h'
        diff -u tools/include/uapi/linux/kvm.h include/uapi/linux/kvm.h
      
      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>
      Cc: Paolo Bonzini <pbonzini@redhat.com>
      Link: http://lore.kernel.org/lkml/YtQLDvQrBhJNl3n5@kernel.orgSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      eee51fe3
  9. 16 7月, 2022 3 次提交