1. 16 Nov, 2020 2 commits
    • Ian Rogers's avatar
      perf test: Avoid an msan warning in a copied stack. · 568beb27
      Ian Rogers authored
      This fix is for a failure that occurred in the DWARF unwind perf test.
      
      Stack unwinders may probe memory when looking for frames.
      
      Memory sanitizer will poison and track uninitialized memory on the
      stack, and on the heap if the value is copied to the heap.
      
      This can lead to false memory sanitizer failures for the use of an
      uninitialized value.
      
      Avoid this problem by removing the poison on the copied stack.
      
      The full msan failure with track origins looks like:
      
      ==2168==WARNING: MemorySanitizer: use-of-uninitialized-value
          #0 0x559ceb10755b in handle_cfi elfutils/libdwfl/frame_unwind.c:648:8
          #1 0x559ceb105448 in __libdwfl_frame_unwind elfutils/libdwfl/frame_unwind.c:741:4
          #2 0x559ceb0ece90 in dwfl_thread_getframes elfutils/libdwfl/dwfl_frame.c:435:7
          #3 0x559ceb0ec6b7 in get_one_thread_frames_cb elfutils/libdwfl/dwfl_frame.c:379:10
          #4 0x559ceb0ec6b7 in get_one_thread_cb elfutils/libdwfl/dwfl_frame.c:308:17
          #5 0x559ceb0ec6b7 in dwfl_getthreads elfutils/libdwfl/dwfl_frame.c:283:17
          #6 0x559ceb0ec6b7 in getthread elfutils/libdwfl/dwfl_frame.c:354:14
          #7 0x559ceb0ec6b7 in dwfl_getthread_frames elfutils/libdwfl/dwfl_frame.c:388:10
          #8 0x559ceaff6ae6 in unwind__get_entries tools/perf/util/unwind-libdw.c:236:8
          #9 0x559ceabc9dbc in test_dwarf_unwind__thread tools/perf/tests/dwarf-unwind.c:111:8
          #10 0x559ceabca5cf in test_dwarf_unwind__compare tools/perf/tests/dwarf-unwind.c:138:26
          #11 0x7f812a6865b0 in bsearch (libc.so.6+0x4e5b0)
          #12 0x559ceabca871 in test_dwarf_unwind__krava_3 tools/perf/tests/dwarf-unwind.c:162:2
          #13 0x559ceabca926 in test_dwarf_unwind__krava_2 tools/perf/tests/dwarf-unwind.c:169:9
          #14 0x559ceabca946 in test_dwarf_unwind__krava_1 tools/perf/tests/dwarf-unwind.c:174:9
          #15 0x559ceabcae12 in test__dwarf_unwind tools/perf/tests/dwarf-unwind.c:211:8
          #16 0x559ceabbc4ab in run_test tools/perf/tests/builtin-test.c:418:9
          #17 0x559ceabbc4ab in test_and_print tools/perf/tests/builtin-test.c:448:9
          #18 0x559ceabbac70 in __cmd_test tools/perf/tests/builtin-test.c:669:4
          #19 0x559ceabbac70 in cmd_test tools/perf/tests/builtin-test.c:815:9
          #20 0x559cea960e30 in run_builtin tools/perf/perf.c:313:11
          #21 0x559cea95fbce in handle_internal_command tools/perf/perf.c:365:8
          #22 0x559cea95fbce in run_argv tools/perf/perf.c:409:2
          #23 0x559cea95fbce in main tools/perf/perf.c:539:3
      
        Uninitialized value was stored to memory at
          #0 0x559ceb106acf in __libdwfl_frame_reg_set elfutils/libdwfl/frame_unwind.c:77:22
          #1 0x559ceb106acf in handle_cfi elfutils/libdwfl/frame_unwind.c:627:13
          #2 0x559ceb105448 in __libdwfl_frame_unwind elfutils/libdwfl/frame_unwind.c:741:4
          #3 0x559ceb0ece90 in dwfl_thread_getframes elfutils/libdwfl/dwfl_frame.c:435:7
          #4 0x559ceb0ec6b7 in get_one_thread_frames_cb elfutils/libdwfl/dwfl_frame.c:379:10
          #5 0x559ceb0ec6b7 in get_one_thread_cb elfutils/libdwfl/dwfl_frame.c:308:17
          #6 0x559ceb0ec6b7 in dwfl_getthreads elfutils/libdwfl/dwfl_frame.c:283:17
          #7 0x559ceb0ec6b7 in getthread elfutils/libdwfl/dwfl_frame.c:354:14
          #8 0x559ceb0ec6b7 in dwfl_getthread_frames elfutils/libdwfl/dwfl_frame.c:388:10
          #9 0x559ceaff6ae6 in unwind__get_entries tools/perf/util/unwind-libdw.c:236:8
          #10 0x559ceabc9dbc in test_dwarf_unwind__thread tools/perf/tests/dwarf-unwind.c:111:8
          #11 0x559ceabca5cf in test_dwarf_unwind__compare tools/perf/tests/dwarf-unwind.c:138:26
          #12 0x7f812a6865b0 in bsearch (libc.so.6+0x4e5b0)
          #13 0x559ceabca871 in test_dwarf_unwind__krava_3 tools/perf/tests/dwarf-unwind.c:162:2
          #14 0x559ceabca926 in test_dwarf_unwind__krava_2 tools/perf/tests/dwarf-unwind.c:169:9
          #15 0x559ceabca946 in test_dwarf_unwind__krava_1 tools/perf/tests/dwarf-unwind.c:174:9
          #16 0x559ceabcae12 in test__dwarf_unwind tools/perf/tests/dwarf-unwind.c:211:8
          #17 0x559ceabbc4ab in run_test tools/perf/tests/builtin-test.c:418:9
          #18 0x559ceabbc4ab in test_and_print tools/perf/tests/builtin-test.c:448:9
          #19 0x559ceabbac70 in __cmd_test tools/perf/tests/builtin-test.c:669:4
          #20 0x559ceabbac70 in cmd_test tools/perf/tests/builtin-test.c:815:9
          #21 0x559cea960e30 in run_builtin tools/perf/perf.c:313:11
          #22 0x559cea95fbce in handle_internal_command tools/perf/perf.c:365:8
          #23 0x559cea95fbce in run_argv tools/perf/perf.c:409:2
          #24 0x559cea95fbce in main tools/perf/perf.c:539:3
      
        Uninitialized value was stored to memory at
          #0 0x559ceb106a54 in handle_cfi elfutils/libdwfl/frame_unwind.c:613:9
          #1 0x559ceb105448 in __libdwfl_frame_unwind elfutils/libdwfl/frame_unwind.c:741:4
          #2 0x559ceb0ece90 in dwfl_thread_getframes elfutils/libdwfl/dwfl_frame.c:435:7
          #3 0x559ceb0ec6b7 in get_one_thread_frames_cb elfutils/libdwfl/dwfl_frame.c:379:10
          #4 0x559ceb0ec6b7 in get_one_thread_cb elfutils/libdwfl/dwfl_frame.c:308:17
          #5 0x559ceb0ec6b7 in dwfl_getthreads elfutils/libdwfl/dwfl_frame.c:283:17
          #6 0x559ceb0ec6b7 in getthread elfutils/libdwfl/dwfl_frame.c:354:14
          #7 0x559ceb0ec6b7 in dwfl_getthread_frames elfutils/libdwfl/dwfl_frame.c:388:10
          #8 0x559ceaff6ae6 in unwind__get_entries tools/perf/util/unwind-libdw.c:236:8
          #9 0x559ceabc9dbc in test_dwarf_unwind__thread tools/perf/tests/dwarf-unwind.c:111:8
          #10 0x559ceabca5cf in test_dwarf_unwind__compare tools/perf/tests/dwarf-unwind.c:138:26
          #11 0x7f812a6865b0 in bsearch (libc.so.6+0x4e5b0)
          #12 0x559ceabca871 in test_dwarf_unwind__krava_3 tools/perf/tests/dwarf-unwind.c:162:2
          #13 0x559ceabca926 in test_dwarf_unwind__krava_2 tools/perf/tests/dwarf-unwind.c:169:9
          #14 0x559ceabca946 in test_dwarf_unwind__krava_1 tools/perf/tests/dwarf-unwind.c:174:9
          #15 0x559ceabcae12 in test__dwarf_unwind tools/perf/tests/dwarf-unwind.c:211:8
          #16 0x559ceabbc4ab in run_test tools/perf/tests/builtin-test.c:418:9
          #17 0x559ceabbc4ab in test_and_print tools/perf/tests/builtin-test.c:448:9
          #18 0x559ceabbac70 in __cmd_test tools/perf/tests/builtin-test.c:669:4
          #19 0x559ceabbac70 in cmd_test tools/perf/tests/builtin-test.c:815:9
          #20 0x559cea960e30 in run_builtin tools/perf/perf.c:313:11
          #21 0x559cea95fbce in handle_internal_command tools/perf/perf.c:365:8
          #22 0x559cea95fbce in run_argv tools/perf/perf.c:409:2
          #23 0x559cea95fbce in main tools/perf/perf.c:539:3
      
        Uninitialized value was stored to memory at
          #0 0x559ceaff8800 in memory_read tools/perf/util/unwind-libdw.c:156:10
          #1 0x559ceb10f053 in expr_eval elfutils/libdwfl/frame_unwind.c:501:13
          #2 0x559ceb1060cc in handle_cfi elfutils/libdwfl/frame_unwind.c:603:18
          #3 0x559ceb105448 in __libdwfl_frame_unwind elfutils/libdwfl/frame_unwind.c:741:4
          #4 0x559ceb0ece90 in dwfl_thread_getframes elfutils/libdwfl/dwfl_frame.c:435:7
          #5 0x559ceb0ec6b7 in get_one_thread_frames_cb elfutils/libdwfl/dwfl_frame.c:379:10
          #6 0x559ceb0ec6b7 in get_one_thread_cb elfutils/libdwfl/dwfl_frame.c:308:17
          #7 0x559ceb0ec6b7 in dwfl_getthreads elfutils/libdwfl/dwfl_frame.c:283:17
          #8 0x559ceb0ec6b7 in getthread elfutils/libdwfl/dwfl_frame.c:354:14
          #9 0x559ceb0ec6b7 in dwfl_getthread_frames elfutils/libdwfl/dwfl_frame.c:388:10
          #10 0x559ceaff6ae6 in unwind__get_entries tools/perf/util/unwind-libdw.c:236:8
          #11 0x559ceabc9dbc in test_dwarf_unwind__thread tools/perf/tests/dwarf-unwind.c:111:8
          #12 0x559ceabca5cf in test_dwarf_unwind__compare tools/perf/tests/dwarf-unwind.c:138:26
          #13 0x7f812a6865b0 in bsearch (libc.so.6+0x4e5b0)
          #14 0x559ceabca871 in test_dwarf_unwind__krava_3 tools/perf/tests/dwarf-unwind.c:162:2
          #15 0x559ceabca926 in test_dwarf_unwind__krava_2 tools/perf/tests/dwarf-unwind.c:169:9
          #16 0x559ceabca946 in test_dwarf_unwind__krava_1 tools/perf/tests/dwarf-unwind.c:174:9
          #17 0x559ceabcae12 in test__dwarf_unwind tools/perf/tests/dwarf-unwind.c:211:8
          #18 0x559ceabbc4ab in run_test tools/perf/tests/builtin-test.c:418:9
          #19 0x559ceabbc4ab in test_and_print tools/perf/tests/builtin-test.c:448:9
          #20 0x559ceabbac70 in __cmd_test tools/perf/tests/builtin-test.c:669:4
          #21 0x559ceabbac70 in cmd_test tools/perf/tests/builtin-test.c:815:9
          #22 0x559cea960e30 in run_builtin tools/perf/perf.c:313:11
          #23 0x559cea95fbce in handle_internal_command tools/perf/perf.c:365:8
          #24 0x559cea95fbce in run_argv tools/perf/perf.c:409:2
          #25 0x559cea95fbce in main tools/perf/perf.c:539:3
      
        Uninitialized value was stored to memory at
          #0 0x559cea9027d9 in __msan_memcpy llvm/llvm-project/compiler-rt/lib/msan/msan_interceptors.cpp:1558:3
          #1 0x559cea9d2185 in sample_ustack tools/perf/arch/x86/tests/dwarf-unwind.c:41:2
          #2 0x559cea9d202c in test__arch_unwind_sample tools/perf/arch/x86/tests/dwarf-unwind.c:72:9
          #3 0x559ceabc9cbd in test_dwarf_unwind__thread tools/perf/tests/dwarf-unwind.c:106:6
          #4 0x559ceabca5cf in test_dwarf_unwind__compare tools/perf/tests/dwarf-unwind.c:138:26
          #5 0x7f812a6865b0 in bsearch (libc.so.6+0x4e5b0)
          #6 0x559ceabca871 in test_dwarf_unwind__krava_3 tools/perf/tests/dwarf-unwind.c:162:2
          #7 0x559ceabca926 in test_dwarf_unwind__krava_2 tools/perf/tests/dwarf-unwind.c:169:9
          #8 0x559ceabca946 in test_dwarf_unwind__krava_1 tools/perf/tests/dwarf-unwind.c:174:9
          #9 0x559ceabcae12 in test__dwarf_unwind tools/perf/tests/dwarf-unwind.c:211:8
          #10 0x559ceabbc4ab in run_test tools/perf/tests/builtin-test.c:418:9
          #11 0x559ceabbc4ab in test_and_print tools/perf/tests/builtin-test.c:448:9
          #12 0x559ceabbac70 in __cmd_test tools/perf/tests/builtin-test.c:669:4
          #13 0x559ceabbac70 in cmd_test tools/perf/tests/builtin-test.c:815:9
          #14 0x559cea960e30 in run_builtin tools/perf/perf.c:313:11
          #15 0x559cea95fbce in handle_internal_command tools/perf/perf.c:365:8
          #16 0x559cea95fbce in run_argv tools/perf/perf.c:409:2
          #17 0x559cea95fbce in main tools/perf/perf.c:539:3
      
        Uninitialized value was created by an allocation of 'bf' in the stack frame of function 'perf_event__synthesize_mmap_events'
          #0 0x559ceafc5f60 in perf_event__synthesize_mmap_events tools/perf/util/synthetic-events.c:445
      
      SUMMARY: MemorySanitizer: use-of-uninitialized-value elfutils/libdwfl/frame_unwind.c:648:8 in handle_cfi
      Signed-off-by: default avatarIan Rogers <irogers@google.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: clang-built-linux@googlegroups.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: Sandeep Dasgupta <sdasgup@google.com>
      Cc: Stephane Eranian <eranian@google.com>
      Link: http://lore.kernel.org/lkml/20201113182053.754625-1-irogers@google.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      568beb27
    • Al Grant's avatar
      perf inject: Fix file corruption due to event deletion · 1c756cd4
      Al Grant authored
      "perf inject" can create corrupt files when synthesizing sample events from AUX
      data. This happens when in the input file, the first event (for the AUX data)
      has a different sample_type from the second event (generally dummy).
      
      Specifically, they differ in the bits that indicate the standard fields
      appended to perf records in the mmap buffer. "perf inject" deletes the first
      event and moves up the second event to first position.
      
      The problem is with the synthetic PERF_RECORD_MMAP (etc.) events created
      by "perf record".
      
      Since these are synthetic versions of events which are normally produced
      by the kernel, they have to have the standard fields appended as
      described by sample_type.
      
      "perf record" fills these in with zeroes, including the IDENTIFIER
      field; perf readers interpret records with zero IDENTIFIER using the
      descriptor for the first event in the file.
      
      Since "perf inject" changes the first event, these synthetic records are
      then processed with the wrong value of sample_type, and the perf reader
      reads bad data, reports on incorrect length records etc.
      
      Mismatching sample_types are seen with "perf record -e cs_etm//", where the AUX
      event has TID|TIME|CPU|IDENTIFIER and the dummy event has TID|TIME|IDENTIFIER.
      
      Perhaps they could be the same, but it isn't normally a problem if they aren't
      - perf has no problems reading the file.
      
      The sample_types have to agree on the position of IDENTIFIER, because
      that's how perf finds the right event descriptor in the first place, but
      they don't normally have to agree on other fields, and perf doesn't
      check that they do.
      
      The problem is specific to the way "perf inject" reorganizes the events
      and the way synthetic MMAP events are recorded with a zero identifier. A
      simple solution is to stop "perf inject" deleting the tracing event.
      
      Committer testing
      
      Removed the now unused 'evsel' variable, update the comment about the
      evsel removal not being performed anymore, and apply the patch manually
      as it failed with this warning:
      
        warning: Patch sent with format=flowed; space at the end of lines might be lost.
      
      Testing it with:
      
        $ perf bench internals inject-build-id
        # Running 'internals/inject-build-id' benchmark:
          Average build-id injection took: 8.543 msec (+- 0.130 msec)
          Average time per event: 0.838 usec (+- 0.013 usec)
          Average memory usage: 12717 KB (+- 9 KB)
          Average build-id-all injection took: 5.710 msec (+- 0.058 msec)
          Average time per event: 0.560 usec (+- 0.006 usec)
          Average memory usage: 12079 KB (+- 7 KB)
        $
      Signed-off-by: default avatarAl Grant <al.grant@arm.com>
      Acked-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Acked-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      LPU-Reference: b9cf5611-daae-2390-3439-6617f8f0a34b@foss.arm.com
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      1c756cd4
  2. 12 Nov, 2020 8 commits
    • Leo Yan's avatar
      perf test: Update branch sample pattern for cs-etm · dd94ac80
      Leo Yan authored
      Since the commit 943b69ac ("perf parse-events: Set exclude_guest=1
      for user-space counting"), 'exclude_guest=1' is set for user-space
      counting; and the branch sample's modifier has been altered, the sample
      event name has been changed from "branches:u:" to "branches:uH:", which
      gives out info for "user-space and host counting".
      
      But the cs-etm testing's regular expression cannot match the updated
      branch sample event and leads to test failure.
      
      This patch updates the branch sample pattern by using a more flexible
      expression '.*' to match branch sample's modifiers, so that allows the
      testing to work as expected.
      
      Fixes: 943b69ac ("perf parse-events: Set exclude_guest=1 for user-space counting")
      Signed-off-by: default avatarLeo Yan <leo.yan@linaro.org>
      Reviewed-by: default avatarMathieu Poirier <mathieu.poirier@linaro.org>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Jin Yao <yao.jin@linux.intel.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      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 ml <coresight@lists.linaro.org>
      Cc: stable@kernel.org
      Link: http://lore.kernel.org/lkml/20201110063417.14467-2-leo.yan@linaro.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      dd94ac80
    • Leo Yan's avatar
      perf test: Fix a typo in cs-etm testing · db2ac2e4
      Leo Yan authored
      Fix a typo: s/devce_name/device_name.
      
      Fixes: fe0aed19 ("perf test: Introduce script for Arm CoreSight testing")
      Signed-off-by: default avatarLeo Yan <leo.yan@linaro.org>
      Reviewed-by: default avatarMathieu Poirier <mathieu.poirier@linaro.org>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Jin Yao <yao.jin@linux.intel.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      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 ml <coresight@lists.linaro.org>
      Cc: stable@kernel.org
      Link: http://lore.kernel.org/lkml/20201110063417.14467-1-leo.yan@linaro.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      db2ac2e4
    • Arnaldo Carvalho de Melo's avatar
      tools arch: Update arch/x86/lib/mem{cpy,set}_64.S copies used in 'perf bench mem memcpy' · db1a8b97
      Arnaldo Carvalho de Melo authored
      To bring in the change made in this cset:
      
        4d6ffa27 ("x86/lib: Change .weak to SYM_FUNC_START_WEAK for arch/x86/lib/mem*_64.S")
        6dcc5627 ("x86/asm: Change all ENTRY+ENDPROC to SYM_FUNC_*")
      
      I needed to define SYM_FUNC_START_LOCAL() as SYM_L_GLOBAL as
      mem{cpy,set}_{orig,erms} are used by 'perf bench'.
      
      This silences these perf tools build warnings:
      
        Warning: Kernel ABI header at 'tools/arch/x86/lib/memcpy_64.S' differs from latest version at 'arch/x86/lib/memcpy_64.S'
        diff -u tools/arch/x86/lib/memcpy_64.S arch/x86/lib/memcpy_64.S
        Warning: Kernel ABI header at 'tools/arch/x86/lib/memset_64.S' differs from latest version at 'arch/x86/lib/memset_64.S'
        diff -u tools/arch/x86/lib/memset_64.S arch/x86/lib/memset_64.S
      
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Borislav Petkov <bp@suse.de>
      Cc: Fangrui Song <maskray@google.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Jiri Slaby <jirislaby@kernel.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      db1a8b97
    • Leo Yan's avatar
      perf lock: Don't free "lock_seq_stat" if read_count isn't zero · b0e5a05c
      Leo Yan authored
      When execute command "perf lock report", it hits failure and outputs log
      as follows:
      
        perf: builtin-lock.c:623: report_lock_release_event: Assertion `!(seq->read_count < 0)' failed.
        Aborted
      
      This is an imbalance issue.  The locking sequence structure
      "lock_seq_stat" contains the reader counter and it is used to check if
      the locking sequence is balance or not between acquiring and releasing.
      
      If the tool wrongly frees "lock_seq_stat" when "read_count" isn't zero,
      the "read_count" will be reset to zero when allocate a new structure at
      the next time; thus it causes the wrong counting for reader and finally
      results in imbalance issue.
      
      To fix this issue, if detects "read_count" is not zero (means still have
      read user in the locking sequence), goto the "end" tag to skip freeing
      structure "lock_seq_stat".
      
      Fixes: e4cef1f6 ("perf lock: Fix state machine to recognize lock sequence")
      Signed-off-by: default avatarLeo Yan <leo.yan@linaro.org>
      Acked-by: default avatarJiri Olsa <jolsa@redhat.com>
      Link: https://lore.kernel.org/r/20201104094229.17509-2-leo.yan@linaro.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      b0e5a05c
    • Leo Yan's avatar
      perf lock: Correct field name "flags" · e24a87b5
      Leo Yan authored
      The tracepoint "lock:lock_acquire" contains field "flags" but not
      "flag".  Current code wrongly retrieves value from field "flag" and it
      always gets zero for the value, thus "perf lock" doesn't report the
      correct result.
      
      This patch replaces the field name "flag" with "flags", so can read out
      the correct flags for locking.
      
      Fixes: e4cef1f6 ("perf lock: Fix state machine to recognize lock sequence")
      Signed-off-by: default avatarLeo Yan <leo.yan@linaro.org>
      Acked-by: default avatarJiri Olsa <jolsa@redhat.com>
      Link: https://lore.kernel.org/r/20201104094229.17509-1-leo.yan@linaro.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      e24a87b5
    • Linus Torvalds's avatar
      Merge tag 'acpi-5.10-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · af5043c8
      Linus Torvalds authored
      Pull ACPI fixes from Rafael Wysocki:
       "These are mostly docmentation fixes and janitorial changes plus some
        new device IDs and a new quirk.
      
        Specifics:
      
         - Fix documentation regarding GPIO properties (Andy Shevchenko)
      
         - Fix spelling mistakes in ACPI documentation (Flavio Suligoi)
      
         - Fix white space inconsistencies in ACPI code (Maximilian Luz)
      
         - Fix string formatting in the ACPI Generic Event Device (GED) driver
           (Nick Desaulniers)
      
         - Add Intel Alder Lake device IDs to the ACPI drivers used by the
           Dynamic Platform and Thermal Framework (Srinivas Pandruvada)
      
         - Add lid-related DMI quirk for Medion Akoya E2228T to the ACPI
           button driver (Hans de Goede)"
      
      * tag 'acpi-5.10-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        ACPI: DPTF: Support Alder Lake
        Documentation: ACPI: fix spelling mistakes
        ACPI: button: Add DMI quirk for Medion Akoya E2228T
        ACPI: GED: fix -Wformat
        ACPI: Fix whitespace inconsistencies
        ACPI: scan: Fix acpi_dma_configure_id() kerneldoc name
        Documentation: firmware-guide: gpio-properties: Clarify initial output state
        Documentation: firmware-guide: gpio-properties: active_low only for GpioIo()
        Documentation: firmware-guide: gpio-properties: Fix factual mistakes
      af5043c8
    • Linus Torvalds's avatar
      Merge tag 'pm-5.10-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · fcfb6791
      Linus Torvalds authored
      Pull power management fixes from Rafael Wysocki:
       "Make the intel_pstate driver behave as expected when it operates in
        the passive mode with HWP enabled and the 'powersave' governor on top
        of it"
      
      * tag 'pm-5.10-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        cpufreq: intel_pstate: Take CPUFREQ_GOV_STRICT_TARGET into account
        cpufreq: Add strict_target to struct cpufreq_policy
        cpufreq: Introduce CPUFREQ_GOV_STRICT_TARGET
        cpufreq: Introduce governor flags
      fcfb6791
    • Rafael J. Wysocki's avatar
      Merge branches 'acpi-scan', 'acpi-misc', 'acpi-button' and 'acpi-dptf' · 7222a8a5
      Rafael J. Wysocki authored
      * acpi-scan:
        ACPI: scan: Fix acpi_dma_configure_id() kerneldoc name
      
      * acpi-misc:
        ACPI: GED: fix -Wformat
        ACPI: Fix whitespace inconsistencies
      
      * acpi-button:
        ACPI: button: Add DMI quirk for Medion Akoya E2228T
      
      * acpi-dptf:
        ACPI: DPTF: Support Alder Lake
      7222a8a5
  3. 11 Nov, 2020 1 commit
  4. 10 Nov, 2020 12 commits
  5. 09 Nov, 2020 13 commits
  6. 08 Nov, 2020 4 commits
    • Dan Carpenter's avatar
      net/sunrpc: fix useless comparison in proc_do_xprt() · ae297504
      Dan Carpenter authored
      In the original code, the "if (*lenp < 0)" check didn't work because
      "*lenp" is unsigned.  Fortunately, the memory_read_from_buffer() call
      will never fail in this context so it doesn't affect runtime.
      Signed-off-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
      Signed-off-by: default avatarJ. Bruce Fields <bfields@redhat.com>
      ae297504
    • Linus Torvalds's avatar
      Merge tag 'driver-core-5.10-rc3' of... · 15f5d201
      Linus Torvalds authored
      Merge tag 'driver-core-5.10-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
      
      Pull driver core documentation fixes from Greg KH:
       "Some small Documentation fixes that were fallout from the larger
        documentation update we did in 5.10-rc2.
      
        Nothing major here at all, but all of these have been in linux-next
        and resolve build warnings when building the documentation files"
      
      * tag 'driver-core-5.10-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:
        Documentation: remove mic/index from misc-devices/index.rst
        scripts: get_api.pl: Add sub-titles to ABI output
        scripts: get_abi.pl: Don't let ABI files to create subtitles
        docs: leds: index.rst: add a missing file
        docs: ABI: sysfs-class-net: fix a typo
        docs: ABI: sysfs-driver-dma-ioatdma: what starts with /sys
      15f5d201
    • Linus Torvalds's avatar
      Merge tag 'tty-5.10-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty · bbc82184
      Linus Torvalds authored
      Pull tty/serial fixes from Greg KH:
       "Here are a small number of small tty and serial fixes for some
        reported problems for the tty core, vt code, and some serial drivers.
      
        They include fixes for:
      
         - a buggy and obsolete vt font ioctl removal
      
         - 8250_mtk serial baudrate runtime warnings
      
         - imx serial earlycon build configuration fix
      
         - txx9 serial driver error path cleanup issues
      
         - tty core fix in release_tty that can be triggered by trying to bind
           an invalid serial port name to a speakup console device
      
        Almost all of these have been in linux-next without any problems, the
        only one that hasn't, just deletes code :)"
      
      * tag 'tty-5.10-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty:
        vt: Disable KD_FONT_OP_COPY
        tty: fix crash in release_tty if tty->port is not set
        serial: txx9: add missing platform_driver_unregister() on error in serial_txx9_init
        tty: serial: imx: enable earlycon by default if IMX_SERIAL_CONSOLE is enabled
        serial: 8250_mtk: Fix uart_get_baud_rate warning
      bbc82184
    • Linus Torvalds's avatar
      Merge tag 'usb-5.10-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · df53b815
      Linus Torvalds authored
      Pull USB fixes from Greg KH:
       "Here are some small USB fixes and new device ids:
      
         - USB gadget fixes for some reported issues
      
         - Fixes for the ever-troublesome apple fastcharge driver, hopefully
           we finally have it right.
      
         - More USB core quirks for odd devices
      
         - USB serial driver fixes for some long-standing issues that were
           recently found
      
         - some new USB serial driver device ids
      
        All have been in linux-next with no reported issues"
      
      * tag 'usb-5.10-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
        USB: apple-mfi-fastcharge: fix reference leak in apple_mfi_fc_set_property
        usb: mtu3: fix panic in mtu3_gadget_stop()
        USB: serial: option: add Telit FN980 composition 0x1055
        USB: serial: option: add LE910Cx compositions 0x1203, 0x1230, 0x1231
        USB: serial: cyberjack: fix write-URB completion race
        USB: Add NO_LPM quirk for Kingston flash drive
        USB: serial: option: add Quectel EC200T module support
        usb: raw-gadget: fix memory leak in gadget_setup
        usb: dwc2: Avoid leaving the error_debugfs label unused
        usb: dwc3: ep0: Fix delay status handling
        usb: gadget: fsl: fix null pointer checking
        usb: gadget: goku_udc: fix potential crashes in probe
        usb: dwc3: pci: add support for the Intel Alder Lake-S
      df53b815