Skip to content
  1. Oct 18, 2023
    • Liming Sun's avatar
      platform/mellanox: mlxbf-tmfifo: Fix a warning message · 99c09c98
      Liming Sun authored
      
      
      This commit fixes the smatch static checker warning in function
      mlxbf_tmfifo_rxtx_word() which complains data not initialized at
      line 634 when IS_VRING_DROP() is TRUE.
      
      Signed-off-by: default avatarLiming Sun <limings@nvidia.com>
      Link: https://lore.kernel.org/r/20231012230235.219861-1-limings@nvidia.com
      Reviewed-by: default avatarHans de Goede <hdegoede@redhat.com>
      Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
      99c09c98
    • Orlando Chamberlain's avatar
      apple-gmux: Hard Code max brightness for MMIO gmux · 0e51cb42
      Orlando Chamberlain authored
      The data in the max brightness port for iMacs with MMIO gmux incorrectly
      reports 0x03ff, but it should be 0xffff. As all other MMIO gmux models
      have 0xffff, hard code this for all MMIO gmux's so they all have the
      proper brightness range accessible.
      
      Fixes: 0c18184d
      
       ("platform/x86: apple-gmux: support MMIO gmux on T2 Macs")
      Reported-by: default avatarKarsten Leipold <poldi@dfn.de>
      Signed-off-by: default avatarOrlando Chamberlain <orlandoch.dev@gmail.com>
      Link: https://lore.kernel.org/r/20231017111444.19304-2-orlandoch.dev@gmail.com
      Reviewed-by: default avatarHans de Goede <hdegoede@redhat.com>
      Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
      0e51cb42
    • Armin Wolf's avatar
      platform/surface: platform_profile: Propagate error if profile registration fails · fe0e04cf
      Armin Wolf authored
      If platform_profile_register() fails, the driver does not propagate
      the error, but instead probes successfully. This means when the driver
      unbinds, the a warning might be issued by platform_profile_remove().
      
      Fix this by propagating the error back to the caller of
      surface_platform_profile_probe().
      
      Compile-tested only.
      
      Fixes: b78b4982
      
       ("platform/surface: Add platform profile driver")
      Signed-off-by: default avatarArmin Wolf <W_Armin@gmx.de>
      Reviewed-by: default avatarMaximilian Luz <luzmaximilian@gmail.com>
      Tested-by: default avatarMaximilian Luz <luzmaximilian@gmail.com>
      Link: https://lore.kernel.org/r/20231014235449.288702-1-W_Armin@gmx.de
      Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
      fe0e04cf
    • Hans de Goede's avatar
      platform/x86: asus-wmi: Map 0x2a code, Ignore 0x2b and 0x2c events · 235985d1
      Hans de Goede authored
      
      
      Newer Asus laptops send the following new WMI event codes when some
      of the F1 - F12 "media" hotkeys are pressed:
      
      0x2a Screen Capture
      0x2b PrintScreen
      0x2c CapsLock
      
      Map 0x2a to KEY_SELECTIVE_SCREENSHOT mirroring how similar hotkeys
      are mapped on other laptops.
      
      PrintScreem and CapsLock are also reported as normal PS/2 keyboard events,
      map these event codes to KE_IGNORE to avoid "Unknown key code 0x%x\n" log
      messages.
      
      Reported-by: default avatarJames John <me@donjajo.com>
      Closes: https://lore.kernel.org/platform-driver-x86/a2c441fe-457e-44cf-a146-0ecd86b037cf@donjajo.com/
      Closes: https://bbs.archlinux.org/viewtopic.php?pid=2123716
      Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
      Link: https://lore.kernel.org/r/20231017090725.38163-4-hdegoede@redhat.com
      235985d1
    • Hans de Goede's avatar
      platform/x86: asus-wmi: Only map brightness codes when using asus-wmi backlight control · a5b92be2
      Hans de Goede authored
      
      
      Older Asus laptops change the backlight level themselves and then send
      WMI events with different codes for different backlight levels.
      
      The asus-wmi.c code maps the entire range of codes reported on
      brightness down keypresses to an internal ASUS_WMI_BRN_DOWN code:
      
      define NOTIFY_BRNUP_MIN                0x11
      define NOTIFY_BRNUP_MAX                0x1f
      define NOTIFY_BRNDOWN_MIN              0x20
      define NOTIFY_BRNDOWN_MAX              0x2e
      
              if (code >= NOTIFY_BRNUP_MIN && code <= NOTIFY_BRNUP_MAX)
                      code = ASUS_WMI_BRN_UP;
              else if (code >= NOTIFY_BRNDOWN_MIN && code <= NOTIFY_BRNDOWN_MAX)
                      code = ASUS_WMI_BRN_DOWN;
      
      This mapping is causing issues on new laptop models which actually
      send 0x2b events for printscreen presses and 0x2c events for
      capslock presses, which get translated into spurious brightness-down
      presses.
      
      This mapping is really only necessary when asus-wmi has registered
      a backlight-device for backlight control. In this case the mapping
      was used to decide to filter out the keypresss since in this case
      the firmware has already modified the brightness itself and instead
      of reporting a keypress asus-wmi will just report the new brightness
      value to userspace.
      
      OTOH when the firmware does not adjust the brightness itself then
      it seems to always report 0x2e for brightness-down presses and
      0x2f for brightness up presses independent of the actual brightness
      level. So in this case the mapping of the code is not necessary
      and this translation actually leads to spurious brightness-down
      presses being send to userspace when pressing printscreen or capslock.
      
      Modify asus_wmi_handle_event_code() to only do the mapping
      when using asus-wmi backlight control to fix the spurious
      brightness-down presses.
      
      Reported-by: default avatarJames John <me@donjajo.com>
      Closes: https://lore.kernel.org/platform-driver-x86/a2c441fe-457e-44cf-a146-0ecd86b037cf@donjajo.com/
      Closes: https://bbs.archlinux.org/viewtopic.php?pid=2123716
      Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
      Link: https://lore.kernel.org/r/20231017090725.38163-3-hdegoede@redhat.com
      a5b92be2
    • Hans de Goede's avatar
      platform/x86: asus-wmi: Change ASUS_WMI_BRN_DOWN code from 0x20 to 0x2e · f37cc2fc
      Hans de Goede authored
      
      
      Older Asus laptops change the backlight level themselves and then send
      WMI events with different codes for different backlight levels.
      
      The asus-wmi.c code maps the entire range of codes reported on
      brightness down keypresses to an internal ASUS_WMI_BRN_DOWN code:
      
      define NOTIFY_BRNUP_MIN                0x11
      define NOTIFY_BRNUP_MAX                0x1f
      define NOTIFY_BRNDOWN_MIN              0x20
      define NOTIFY_BRNDOWN_MAX              0x2e
      
              if (code >= NOTIFY_BRNUP_MIN && code <= NOTIFY_BRNUP_MAX)
                      code = ASUS_WMI_BRN_UP;
              else if (code >= NOTIFY_BRNDOWN_MIN && code <= NOTIFY_BRNDOWN_MAX)
                      code = ASUS_WMI_BRN_DOWN;
      
      Before this commit all the NOTIFY_BRNDOWN_MIN - NOTIFY_BRNDOWN_MAX
      aka 0x20 - 0x2e events were mapped to 0x20.
      
      This mapping is causing issues on new laptop models which actually
      send 0x2b events for printscreen presses and 0x2c events for
      capslock presses, which get translated into spurious brightness-down
      presses.
      
      The plan is disable the 0x11-0x2e special mapping on laptops
      where asus-wmi does not register a backlight-device to avoid
      the spurious brightness-down keypresses. New laptops always send
      0x2e for brightness-down presses, change the special internal
      ASUS_WMI_BRN_DOWN value from 0x20 to 0x2e to match this in
      preparation for fixing the spurious brightness-down presses.
      
      This change does not have any functional impact since all
      of 0x20 - 0x2e is mapped to ASUS_WMI_BRN_DOWN first and only
      then checked against the keymap code and the new 0x2e
      value is still in the 0x20 - 0x2e range.
      
      Reported-by: default avatarJames John <me@donjajo.com>
      Closes: https://lore.kernel.org/platform-driver-x86/a2c441fe-457e-44cf-a146-0ecd86b037cf@donjajo.com/
      Closes: https://bbs.archlinux.org/viewtopic.php?pid=2123716
      Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
      Link: https://lore.kernel.org/r/20231017090725.38163-2-hdegoede@redhat.com
      f37cc2fc
  2. Oct 11, 2023
  3. Oct 06, 2023
  4. Oct 04, 2023
    • Tomasz Swiatek's avatar
      platform/x86: touchscreen_dmi: Add info for the BUSH Bush Windows tablet · 34c271e7
      Tomasz Swiatek authored
      
      
      Add touchscreen info for the BUSH Bush Windows tablet.
      
      It was tested using gslx680_ts_acpi module and on patched kernel
      installed on device.
      
      Link: https://github.com/onitake/gsl-firmware/pull/215
      Link: https://github.com/systemd/systemd/pull/29268
      Signed-off-by: default avatarTomasz Swiatek <swiatektomasz99@gmail.com>
      Reviewed-by: default avatarHans de Goede <hdegoede@redhat.com>
      Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
      34c271e7
    • Randy Dunlap's avatar
      platform/mellanox: tmfifo: fix kernel-doc warnings · cbf92564
      Randy Dunlap authored
      Fix kernel-doc notation for structs and struct members to prevent
      these warnings:
      
      mlxbf-tmfifo.c:73: warning: cannot understand function prototype: 'struct mlxbf_tmfifo_vring '
      mlxbf-tmfifo.c:128: warning: cannot understand function prototype: 'struct mlxbf_tmfifo_vdev '
      mlxbf-tmfifo.c:146: warning: cannot understand function prototype: 'struct mlxbf_tmfifo_irq_info '
      mlxbf-tmfifo.c:158: warning: cannot understand function prototype: 'struct mlxbf_tmfifo_io '
      mlxbf-tmfifo.c:182: warning: cannot understand function prototype: 'struct mlxbf_tmfifo '
      mlxbf-tmfifo.c:208: warning: cannot understand function prototype: 'struct mlxbf_tmfifo_msg_hdr '
      mlxbf-tmfifo.c:138: warning: Function parameter or member 'config' not described in 'mlxbf_tmfifo_vdev'
      mlxbf-tmfifo.c:212: warning: Function parameter or member 'unused' not described in 'mlxbf_tmfifo_msg_hdr'
      
      Fixes: 1357dfd7 ("platform/mellanox: Add TmFifo driver for Mellanox BlueField Soc")
      Fixes: bc05ea63
      
       ("platform/mellanox: Add BlueField-3 support in the tmfifo driver")
      Signed-off-by: default avatarRandy Dunlap <rdunlap@infradead.org>
      Reported-by: default avatarkernel test robot <lkp@intel.com>
      Closes: lore.kernel.org/r/202309252330.saRU491h-lkp@intel.com
      Cc: Liming Sun <lsun@mellanox.com>
      Cc: Hans de Goede <hdegoede@redhat.com>
      Cc: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
      Cc: Mark Gross <markgross@kernel.org>
      Cc: Vadim Pasternak <vadimp@nvidia.com>
      Cc: platform-driver-x86@vger.kernel.org
      Link: https://lore.kernel.org/r/20230926054013.11450-1-rdunlap@infradead.org
      Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
      cbf92564
    • Jithu Joseph's avatar
      platform/x86/intel/ifs: release cpus_read_lock() · 2545deba
      Jithu Joseph authored
      Couple of error paths in do_core_test() was returning directly without
      doing a necessary cpus_read_unlock().
      
      Following lockdep warning was observed when exercising these scenarios
      with PROVE_RAW_LOCK_NESTING enabled:
      
      [  139.304775] ================================================
      [  139.311185] WARNING: lock held when returning to user space!
      [  139.317593] 6.6.0-rc2ifs01+ #11 Tainted: G S      W I
      [  139.324499] ------------------------------------------------
      [  139.330908] bash/11476 is leaving the kernel with locks still held!
      [  139.338000] 1 lock held by bash/11476:
      [  139.342262]  #0: ffffffffaa26c930 (cpu_hotplug_lock){++++}-{0:0}, at:
      do_core_test+0x35/0x1c0 [intel_ifs]
      
      Fix the flow so that all scenarios release the lock prior to returning
      from the function.
      
      Fixes: 5210fb4e
      
       ("platform/x86/intel/ifs: Sysfs interface for Array BIST")
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarJithu Joseph <jithu.joseph@intel.com>
      Link: https://lore.kernel.org/r/20230927184824.2566086-1-jithu.joseph@intel.com
      Reviewed-by: default avatarHans de Goede <hdegoede@redhat.com>
      Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
      2545deba
    • Armin Wolf's avatar
      platform/x86: hp-bioscfg: Fix reference leak · 981368e1
      Armin Wolf authored
      If a duplicate attribute is found using kset_find_obj(), a reference
      to that attribute is returned which needs to be disposed accordingly
      using kobject_put(). Use kobject_put() to dispose the duplicate
      attribute in such a case.
      As a side note, a very similar bug was fixed in
      commit 7295a996 ("platform/x86: dell-sysman: Fix reference leak"),
      so it seems that the bug was copied from that driver.
      
      Compile-tested only.
      
      Fixes: a34fc329
      
       ("platform/x86: hp-bioscfg: bioscfg")
      Suggested-by: default avatarIlpo Järvinen <ilpo.jarvinen@linux.intel.com>
      Reviewed-by: default avatarIlpo Järvinen <ilpo.jarvinen@linux.intel.com>
      Signed-off-by: default avatarArmin Wolf <W_Armin@gmx.de>
      Reviewed-by: default avatarJorge Lopez <jorge.lopez2@hp.com>
      Link: https://lore.kernel.org/r/20230925142819.74525-3-W_Armin@gmx.de
      Reviewed-by: default avatarHans de Goede <hdegoede@redhat.com>
      Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
      981368e1
    • Armin Wolf's avatar
      platform/x86: think-lmi: Fix reference leak · 528ab3e6
      Armin Wolf authored
      If a duplicate attribute is found using kset_find_obj(), a reference
      to that attribute is returned which needs to be disposed accordingly
      using kobject_put(). Move the setting name validation into a separate
      function to allow for this change without having to duplicate the
      cleanup code for this setting.
      As a side note, a very similar bug was fixed in
      commit 7295a996 ("platform/x86: dell-sysman: Fix reference leak"),
      so it seems that the bug was copied from that driver.
      
      Compile-tested only.
      
      Fixes: 1bcad8e5
      
       ("platform/x86: think-lmi: Fix issues with duplicate attributes")
      Reviewed-by: default avatarMark Pearson <mpearson-lenovo@squebb.ca>
      Reviewed-by: default avatarIlpo Järvinen <ilpo.jarvinen@linux.intel.com>
      Signed-off-by: default avatarArmin Wolf <W_Armin@gmx.de>
      Link: https://lore.kernel.org/r/20230925142819.74525-2-W_Armin@gmx.de
      Reviewed-by: default avatarHans de Goede <hdegoede@redhat.com>
      Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
      528ab3e6
  5. Sep 22, 2023
  6. Sep 18, 2023
  7. Sep 11, 2023
  8. Sep 10, 2023
    • Linus Torvalds's avatar
      Merge tag 'perf-tools-for-v6.6-1-2023-09-05' of... · 535a265d
      Linus Torvalds authored
      Merge tag 'perf-tools-for-v6.6-1-2023-09-05' of git://git.kernel.org/pub/scm/linux/kernel/git/perf/perf-tools
      
      Pull perf tools updates from Arnaldo Carvalho de Melo:
       "perf tools maintainership:
      
         - Add git information for perf-tools and perf-tools-next trees and
           branches to the MAINTAINERS file. That is where development now
           takes place and myself and Namhyung Kim have write access, more
           people to come as we emulate other maintainer groups.
      
        perf record:
      
         - Record kernel data maps when 'perf record --data' is used, so that
           global variables can be resolved and used in tools that do data
           profiling.
      
        perf trace:
      
         - Remove the old, experimental support for BPF events in which a .c
           file was passed as an event: "perf trace -e hello.c" to then get
           compiled and loaded.
      
           The only known usage for that, that shipped with the kernel as an
           example for such events, augmented the raw_syscalls tracepoints and
           was converted to a libbpf skeleton, reusing all the user space
           components and the BPF code connected to the syscalls.
      
           In the end just the way to glue the BPF part and the user space
           type beautifiers changed, now being performed by libbpf skeletons.
      
           The next step is to use BTF to do pretty printing of all syscall
           types, as discussed with Alan Maguire and others.
      
           Now, on a perf built with BUILD_BPF_SKEL=1 we get most if not all
           path/filenames/strings, some of the networking data structures,
           perf_event_attr, etc, i.e. systemwide tracing of nanosleep calls
           and perf_event_open syscalls while 'perf stat' runs 'sleep' for 5
           seconds:
      
            # perf trace -a -e *nanosleep,perf* perf stat -e cycles,instructions sleep 5
               0.000 (   9.034 ms): perf/327641 perf_event_open(attr_uptr: { type: 0 (PERF_TYPE_HARDWARE), size: 136, config: 0 (PERF_COUNT_HW_CPU_CYCLES), sample_type: IDENTIFIER, read_format: TOTAL_TIME_ENABLED|TOTAL_TIME_RUNNING, disabled: 1, inherit: 1, enable_on_exec: 1, exclude_guest: 1 }, pid: 327642 (perf), cpu: -1, group_fd: -1, flags: FD_CLOEXEC) = 3
               9.039 (   0.006 ms): perf/327641 perf_event_open(attr_uptr: { type: 0 (PERF_TYPE_HARDWARE), size: 136, config: 0x1 (PERF_COUNT_HW_INSTRUCTIONS), sample_type: IDENTIFIER, read_format: TOTAL_TIME_ENABLED|TOTAL_TIME_RUNNING, disabled: 1, inherit: 1, enable_on_exec: 1, exclude_guest: 1 }, pid: 327642 (perf-exec), cpu: -1, group_fd: -1, flags: FD_CLOEXEC) = 4
                   ? (           ): gpm/991  ... [continued]: clock_nanosleep())               = 0
              10.133 (           ): sleep/327642 clock_nanosleep(rqtp: { .tv_sec: 5, .tv_nsec: 0 }, rmtp: 0x7ffd36f83ed0) ...
                   ? (           ): pool-gsd-smart/3051  ... [continued]: clock_nanosleep())   = 0
              30.276 (           ): gpm/991 clock_nanosleep(rqtp: { .tv_sec: 2, .tv_nsec: 0 }, rmtp: 0x7ffcc6f73710) ...
             223.215 (1000.430 ms): pool-gsd-smart/3051 clock_nanosleep(rqtp: { .tv_sec: 1, .tv_nsec: 0 }, rmtp: 0x7f6e7fffec90) = 0
              30.276 (2000.394 ms): gpm/991  ... [continued]: clock_nanosleep())               = 0
            1230.814 (           ): pool-gsd-smart/3051 clock_nanosleep(rqtp: { .tv_sec: 1, .tv_nsec: 0 }, rmtp: 0x7f6e7fffec90) ...
            1230.814 (1000.404 ms): pool-gsd-smart/3051  ... [continued]: clock_nanosleep())   = 0
            2030.886 (           ): gpm/991 clock_nanosleep(rqtp: { .tv_sec: 2, .tv_nsec: 0 }, rmtp: 0x7ffcc6f73710) ...
            2237.709 (1000.153 ms): pool-gsd-smart/3051 clock_nanosleep(rqtp: { .tv_sec: 1, .tv_nsec: 0 }, rmtp: 0x7f6e7fffec90) = 0
                   ? (           ): crond/1172  ... [continued]: clock_nanosleep())            = 0
            3242.699 (           ): pool-gsd-smart/3051 clock_nanosleep(rqtp: { .tv_sec: 1, .tv_nsec: 0 }, rmtp: 0x7f6e7fffec90) ...
            2030.886 (2000.385 ms): gpm/991  ... [continued]: clock_nanosleep())               = 0
            3728.078 (           ): crond/1172 clock_nanosleep(rqtp: { .tv_sec: 60, .tv_nsec: 0 }, rmtp: 0x7ffe0971dcf0) ...
            3242.699 (1000.158 ms): pool-gsd-smart/3051  ... [continued]: clock_nanosleep())   = 0
            4031.409 (           ): gpm/991 clock_nanosleep(rqtp: { .tv_sec: 2, .tv_nsec: 0 }, rmtp: 0x7ffcc6f73710) ...
              10.133 (5000.375 ms): sleep/327642  ... [continued]: clock_nanosleep())          = 0
      
            Performance counter stats for 'sleep 5':
      
                   2,617,347      cycles
                   1,855,997      instructions                     #    0.71  insn per cycle
      
                 5.002282128 seconds time elapsed
      
                 0.000855000 seconds user
                 0.000852000 seconds sys
      
        perf annotate:
      
         - Building with binutils' libopcode now is opt-in (BUILD_NONDISTRO=1)
           for licensing reasons, and we missed a build test on
           tools/perf/tests makefile.
      
           Since we now default to NDEBUG=1, we ended up segfaulting when
           building with BUILD_NONDISTRO=1 because a needed initialization
           routine was being "error checked" via an assert.
      
           Fix it by explicitly checking the result and aborting instead if it
           fails.
      
           We better back propagate the error, but at least 'perf annotate' on
           samples collected for a BPF program is back working when perf is
           built with BUILD_NONDISTRO=1.
      
        perf report/top:
      
         - Add back TUI hierarchy mode header, that is seen when using 'perf
           report/top --hierarchy'.
      
         - Fix the number of entries for 'e' key in the TUI that was
           preventing navigation of lines when expanding an entry.
      
        perf report/script:
      
         - Support cross platform register handling, allowing a perf.data file
           collected on one architecture to have registers sampled correctly
           displayed when analysis tools such as 'perf report' and 'perf
           script' are used on a different architecture.
      
         - Fix handling of event attributes in pipe mode, i.e. when one uses:
      
        	perf record -o - | perf report -i -
      
           When no perf.data files are used.
      
         - Handle files generated via pipe mode with a version of perf and
           then read also via pipe mode with a different version of perf,
           where the event attr record may have changed, use the record size
           field to properly support this version mismatch.
      
        perf probe:
      
         - Accessing global variables from uprobes isn't supported, make the
           error message state that instead of stating that some minimal
           kernel version is needed to have that feature. This seems just a
           tool limitation, the kernel probably has all that is needed.
      
        perf tests:
      
         - Fix a reference count related leak in the dlfilter v0 API where the
           result of a thread__find_symbol_fb() is not matched with an
           addr_location__exit() to drop the reference counts of the resolved
           components (machine, thread, map, symbol, etc). Add a dlfilter test
           to make sure that doesn't regresses.
      
         - Lots of fixes for the 'perf test' written in shell script related
           to problems found with the shellcheck utility.
      
         - Fixes for 'perf test' shell scripts testing features enabled when
           perf is built with BUILD_BPF_SKEL=1, such as 'perf stat' bpf
           counters.
      
         - Add perf record sample filtering test, things like the following
           example, that gets implemented as a BPF filter attached to the
           event:
      
             # perf record -e task-clock -c 10000 --filter 'ip < 0xffffffff00000000'
      
         - Improve the way the task_analyzer test checks if libtraceevent is
           linked, using 'perf version --build-options' instead of the more
           expensinve 'perf record -e "sched:sched_switch"'.
      
         - Add support for riscv in the mmap-basic test. (This went as well
           via the RiscV tree, same contents).
      
        libperf:
      
         - Implement riscv mmap support (This went as well via the RiscV tree,
           same contents).
      
        perf script:
      
         - New tool that converts perf.data files to the firefox profiler
           format so that one can use the visualizer at
           https://profiler.firefox.com/. Done by Anup Sharma as part of this
           year's Google Summer of Code.
      
           One can generate the output and upload it to the web interface but
           Anup also automated everything:
      
             perf script gecko -F 99 -a sleep 60
      
         - Support syscall name parsing on arm64.
      
         - Print "cgroup" field on the same line as "comm".
      
        perf bench:
      
         - Add new 'uprobe' benchmark to measure the overhead of uprobes
           with/without BPF programs attached to it.
      
         - breakpoints are not available on power9, skip that test.
      
        perf stat:
      
         - Add #num_cpus_online literal to be used in 'perf stat' metrics, and
           add this extra 'perf test' check that exemplifies its purpose:
      
        	TEST_ASSERT_VAL("#num_cpus_online",
                               expr__parse(&num_cpus_online, ctx, "#num_cpus_online") == 0);
        	TEST_ASSERT_VAL("#num_cpus", expr__parse(&num_cpus, ctx, "#num_cpus") == 0);
        	TEST_ASSERT_VAL("#num_cpus >= #num_cpus_online", num_cpus >= num_cpus_online);
      
        Miscellaneous:
      
         - Improve tool startup time by lazily reading PMU, JSON, sysfs data.
      
         - Improve error reporting in the parsing of events, passing YYLTYPE
           to error routines, so that the output can show were the parsing
           error was found.
      
         - Add 'perf test' entries to check the parsing of events
           improvements.
      
         - Fix various leak for things detected by -fsanitize=address, mostly
           things that would be freed at tool exit, including:
      
             - Free evsel->filter on the destructor.
      
             - Allow tools to register a thread->priv destructor and use it in
               'perf trace'.
      
             - Free evsel->priv in 'perf trace'.
      
             - Free string returned by synthesize_perf_probe_point() when the
               caller fails to do all it needs.
      
         - Adjust various compiler options to not consider errors some
           warnings when building with broken headers found in things like
           python, flex, bison, as we otherwise build with -Werror. Some for
           gcc, some for clang, some for some specific version of those, some
           for some specific version of flex or bison, or some specific
           combination of these components, bah.
      
         - Allow customization of clang options for BPF target, this helps
           building on gentoo where there are other oddities where BPF targets
           gets passed some compiler options intended for the native build, so
           building with WERROR=0 helps while these oddities are fixed.
      
         - Dont pass ERR_PTR() values to perf_session__delete() in 'perf top'
           and 'perf lock', fixing some segfaults when handling some odd
           failures.
      
         - Add LTO build option.
      
         - Fix format of unordered lists in the perf docs
           (tools/perf/Documentation)
      
         - Overhaul the bison files, using constructs such as YYNOMEM.
      
         - Remove unused tokens from the bison .y files.
      
         - Add more comments to various structs.
      
         - A few LoongArch enablement patches.
      
        Vendor events (JSON):
      
         - Add JSON metrics for Yitian 710 DDR (aarch64). Things like:
      
        	EventName, BriefDescription
        	visible_window_limit_reached_rd, "At least one entry in read queue reaches the visible window limit.",
        	visible_window_limit_reached_wr, "At least one entry in write queue reaches the visible window limit.",
        	op_is_dqsosc_mpc	       , "A DQS Oscillator MPC command to DRAM.",
        	op_is_dqsosc_mrr	       , "A DQS Oscillator MRR command to DRAM.",
        	op_is_tcr_mrr		       , "A Temperature Compensated Refresh(TCR) MRR command to DRAM.",
      
         - Add AmpereOne metrics (aarch64).
      
         - Update N2 and V2 metrics (aarch64) and events using Arm telemetry
           repo.
      
         - Update scale units and descriptions of common topdown metrics on
           aarch64. Things like:
             - "MetricExpr": "stall_slot_frontend / (#slots * cpu_cycles)",
             - "BriefDescription": "Frontend bound L1 topdown metric",
             + "MetricExpr": "100 * (stall_slot_frontend / (#slots * cpu_cycles))",
             + "BriefDescription": "This metric is the percentage of total slots that were stalled due to resource constraints in the frontend of the processor.",
      
         - Update events for intel: meteorlake to 1.04, sapphirerapids to
           1.15, Icelake+ metric constraints.
      
         - Update files for the power10 platform"
      
      * tag 'perf-tools-for-v6.6-1-2023-09-05' of git://git.kernel.org/pub/scm/linux/kernel/git/perf/perf-tools: (217 commits)
        perf parse-events: Fix driver config term
        perf parse-events: Fixes relating to no_value terms
        perf parse-events: Fix propagation of term's no_value when cloning
        perf parse-events: Name the two term enums
        perf list: Don't print Unit for "default_core"
        perf vendor events intel: Fix modifier in tma_info_system_mem_parallel_reads for skylake
        perf dlfilter: Avoid leak in v0 API test use of resolve_address()
        perf metric: Add #num_cpus_online literal
        perf pmu: Remove str from perf_pmu_alias
        perf parse-events: Make common term list to strbuf helper
        perf parse-events: Minor help message improvements
        perf pmu: Avoid uninitialized use of alias->str
        perf jevents: Use "default_core" for events with no Unit
        perf test stat_bpf_counters_cgrp: Enhance perf stat cgroup BPF counter test
        perf test shell stat_bpf_counters: Fix test on Intel
        perf test shell record_bpf_filter: Skip 6.2 kernel
        libperf: Get rid of attr.id field
        perf tools: Convert to perf_record_header_attr_id()
        libperf: Add perf_record_header_attr_id()
        perf tools: Handle old data in PERF_RECORD_ATTR
        ...
      535a265d
    • Linus Torvalds's avatar
      Merge tag '6.6-rc-smb3-client-fixes-part2' of git://git.samba.org/sfrench/cifs-2.6 · fd3a5940
      Linus Torvalds authored
      Pull smb client fixes from Steve French:
      
       - six smb3 client fixes including ones to allow controlling smb3
         directory caching timeout and limits, and one debugging improvement
      
       - one fix for nls Kconfig (don't need to expose NLS_UCS2_UTILS option)
      
       - one minor spnego registry update
      
      * tag '6.6-rc-smb3-client-fixes-part2' of git://git.samba.org/sfrench/cifs-2.6:
        spnego: add missing OID to oid registry
        smb3: fix minor typo in SMB2_GLOBAL_CAP_LARGE_MTU
        cifs: update internal module version number for cifs.ko
        smb3: allow controlling maximum number of cached directories
        smb3: add trace point for queryfs (statfs)
        nls: Hide new NLS_UCS2_UTILS
        smb3: allow controlling length of time directory entries are cached with dir leases
        smb: propagate error code of extract_sharename()
      fd3a5940
    • David Howells's avatar
      iov_iter: Kunit tests for page extraction · a3c57ab7
      David Howells authored
      
      
      Add some kunit tests for page extraction for ITER_BVEC, ITER_KVEC and
      ITER_XARRAY type iterators.  ITER_UBUF and ITER_IOVEC aren't dealt with
      as they require userspace VM interaction.  ITER_DISCARD isn't dealt with
      either as that can't be extracted.
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Cc: Christoph Hellwig <hch@lst.de>
      Cc: Christian Brauner <brauner@kernel.org>
      Cc: Jens Axboe <axboe@kernel.dk>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: David Hildenbrand <david@redhat.com>
      Cc: John Hubbard <jhubbard@nvidia.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      a3c57ab7
    • David Howells's avatar
      iov_iter: Kunit tests for copying to/from an iterator · 2d71340f
      David Howells authored
      
      
      Add some kunit tests for page extraction for ITER_BVEC, ITER_KVEC and
      ITER_XARRAY type iterators.  ITER_UBUF and ITER_IOVEC aren't dealt with
      as they require userspace VM interaction.  ITER_DISCARD isn't dealt with
      either as that does nothing.
      
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Cc: Christoph Hellwig <hch@lst.de>
      Cc: Christian Brauner <brauner@kernel.org>
      Cc: Jens Axboe <axboe@kernel.dk>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: David Hildenbrand <david@redhat.com>
      Cc: John Hubbard <jhubbard@nvidia.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      2d71340f