Skip to content
Permalink
Alexander-Stei…
Switch branches/tags

Commits on Oct 13, 2021

  1. rtc: pcf85063: add support for fixed clock

    TQ-Systems' TQMa8Mx module (SoM) uses a pcf85063 as RTC. The default output
    is 32768Hz. This is to provide the i.MX8M CKIL clock. Once the RTC driver
    is probed, the clock is disabled and all i.MX8M functionality depending on
    the 32 KHz clock will halt. In our case the whole system halts and a power
    cycle is required.
    
    Referencing the pcf85063 directly results in a deadlock. The kernel
    will see, that i.MX8M system clock needs the RTC clock and do probe
    deferral. But the i.MX8M I2C module never becomes usable without the
    i.MX8M CKIL clock and thus the RTC's clock will not be probed. So
    from the kernel's perspective this is a chicken-and-egg problem.
    
    Technically everything is fine by not touching anything, since
    the RTC clock correctly enables the clock on reset (i.e. on
    battery backup power loss).
    
    A workaround for this issue is describing the square wave pin
    as fixed-clock, which is registered early and basically how
    this pin is used on the i.MX8M.
    
    This addresses the exact same issue as in commit f765e34 ("rtc:
    m41t80: add support for fixed clock").
    
    Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
    tq-steina authored and intel-lab-lkp committed Oct 13, 2021

Commits on Oct 1, 2021

  1. rtc: m41t80: return NULL rather than a plain 0 integer

    Function m41t80_sqw_register_clk returns a pointer to struct clk,
    so returning a plain 0 integer isn't good practice. Fix this by
    returning a NULL instead.
    
    Signed-off-by: Colin Ian King <colin.king@canonical.com>
    Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
    Link: https://lore.kernel.org/r/20210925223441.182673-1-colin.king@canonical.com
    Colin Ian King authored and alexandrebelloni committed Oct 1, 2021
  2. rtc: msc313: Fix unintentional sign extension issues with left shift …

    …of a u16
    
    Shifting the u16 value returned by readw by 16 bits to the left
    will be promoted to a 32 bit signed int and then sign-extended
    to an unsigned long. If the top bit of the readw is set then
    the shifted value will be sign extended and the top 32 bits of
    the result will be set.
    
    Fixes: be7d9c9 ("rtc: Add support for the MSTAR MSC313 RTC")
    Signed-off-by: Colin Ian King <colin.king@canonical.com>
    Reviewed-by: Romain Perier <romain.perier@gmail.com>
    Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
    Link: https://lore.kernel.org/r/20210928134654.991923-1-colin.king@canonical.com
    Colin Ian King authored and alexandrebelloni committed Oct 1, 2021
  3. rtc: mcp795: Add SPI ID table

    Currently autoloading for SPI devices does not use the DT ID table, it uses
    SPI modalises. Supporting OF modalises is going to be difficult if not
    impractical, an attempt was made but has been reverted, so ensure that
    module autoloading works for this driver by adding an id_table listing the
    SPI IDs for everything.
    
    Fixes: 96c8395 ("spi: Revert modalias changes")
    Signed-off-by: Mark Brown <broonie@kernel.org>
    Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
    Link: https://lore.kernel.org/r/20210927130240.33693-1-broonie@kernel.org
    broonie authored and alexandrebelloni committed Oct 1, 2021

Commits on Sep 27, 2021

  1. rtc: msc313: fix missing include

    The driver needs io.h
    
    Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
    Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
    Link: https://lore.kernel.org/r/20210927063724.312687-1-alexandre.belloni@bootlin.com
    alexandrebelloni committed Sep 27, 2021

Commits on Sep 25, 2021

  1. rtc: Add support for the MSTAR MSC313 RTC

    This adds support for the RTC block on the Mstar MSC313e SoCs and newer.
    
    Signed-off-by: Daniel Palmer <daniel@0x0f.com>
    Co-developed-by: Romain Perier <romain.perier@gmail.com>
    Signed-off-by: Romain Perier <romain.perier@gmail.com>
    Reviewed-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
    Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
    Link: https://lore.kernel.org/r/20210823171613.18941-3-romain.perier@gmail.com
    fifteenhex authored and alexandrebelloni committed Sep 25, 2021
  2. dt-bindings: rtc: Add Mstar MSC313e RTC devicetree bindings documenta…

    …tion
    
    This adds the documentation for the devicetree bindings of the Mstar
    MSC313e RTC driver, found from MSC313e SoCs and newer.
    
    Signed-off-by: Romain Perier <romain.perier@gmail.com>
    Reviewed-by: Rob Herring <robh@kernel.org>
    Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
    Link: https://lore.kernel.org/r/20210823171613.18941-2-romain.perier@gmail.com
    rperier authored and alexandrebelloni committed Sep 25, 2021
  3. rtc: rx6110: simplify getting the adapter of a client

    We have a dedicated pointer for that, so use it. Much easier to read and
    less computation involved.
    
    Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
    Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
    Link: https://lore.kernel.org/r/20210918213553.14514-1-wsa+renesas@sang-engineering.com
    Wolfram Sang authored and alexandrebelloni committed Sep 25, 2021
  4. rtc: s5m: drop unneeded MODULE_ALIAS

    The MODULE_DEVICE_TABLE already creates proper alias for platform
    driver.  Having another MODULE_ALIAS causes the alias to be duplicated.
    
    Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
    Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
    Link: https://lore.kernel.org/r/20210916164604.134924-1-krzysztof.kozlowski@canonical.com
    krzk authored and alexandrebelloni committed Sep 25, 2021
  5. rtc: omap: drop unneeded MODULE_ALIAS

    The MODULE_DEVICE_TABLE already creates proper alias for platform
    driver.  Having another MODULE_ALIAS causes the alias to be duplicated.
    
    Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
    Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
    Link: https://lore.kernel.org/r/20210916164513.134725-1-krzysztof.kozlowski@canonical.com
    krzk authored and alexandrebelloni committed Sep 25, 2021
  6. rtc: pcf2123: Add SPI ID table

    Currently autoloading for SPI devices does not use the DT ID table, it uses
    SPI modalises. Supporting OF modalises is going to be difficult if not
    impractical, an attempt was made but has been reverted, so ensure that
    module autoloading works for this driver by adding an id_table listing the
    SPI IDs for everything.
    
    Fixes: 96c8395 ("spi: Revert modalias changes")
    Signed-off-by: Mark Brown <broonie@kernel.org>
    Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
    Link: https://lore.kernel.org/r/20210923194922.53386-4-broonie@kernel.org
    broonie authored and alexandrebelloni committed Sep 25, 2021
  7. rtc: ds1390: Add SPI ID table

    Currently autoloading for SPI devices does not use the DT ID table, it uses
    SPI modalises. Supporting OF modalises is going to be difficult if not
    impractical, an attempt was made but has been reverted, so ensure that
    module autoloading works for this driver by adding an id_table listing the
    SPI IDs for everything.
    
    Fixes: 96c8395 ("spi: Revert modalias changes")
    Signed-off-by: Mark Brown <broonie@kernel.org>
    Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
    Link: https://lore.kernel.org/r/20210923194922.53386-3-broonie@kernel.org
    broonie authored and alexandrebelloni committed Sep 25, 2021
  8. rtc: ds1302: Add SPI ID table

    Currently autoloading for SPI devices does not use the DT ID table, it uses
    SPI modalises. Supporting OF modalises is going to be difficult if not
    impractical, an attempt was made but has been reverted, so ensure that
    module autoloading works for this driver by adding an id_table listing the
    SPI IDs for everything.
    
    Fixes: 96c8395 ("spi: Revert modalias changes")
    Signed-off-by: Mark Brown <broonie@kernel.org>
    Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
    Link: https://lore.kernel.org/r/20210923194922.53386-2-broonie@kernel.org
    broonie authored and alexandrebelloni committed Sep 25, 2021

Commits on Sep 12, 2021

  1. Linux 5.15-rc1

    torvalds committed Sep 12, 2021
  2. Merge tag 'perf-tools-for-v5.15-2021-09-11' of git://git.kernel.org/p…

    …ub/scm/linux/kernel/git/acme/linux
    
    Pull more perf tools updates from Arnaldo Carvalho de Melo:
    
     - Add missing fields and remove some duplicate fields when printing a
       perf_event_attr.
    
     - Fix hybrid config terms list corruption.
    
     - Update kernel header copies, some resulted in new kernel features
       being automagically added to 'perf trace' syscall/tracepoint argument
       id->string translators.
    
     - Add a file generated during the documentation build to .gitignore.
    
     - Add an option to build without libbfd, as some distros, like Debian
       consider its ABI unstable.
    
     - Add support to print a textual representation of IBS raw sample data
       in 'perf report'.
    
     - Fix bpf 'perf test' sample mismatch reporting
    
     - Fix passing arguments to stackcollapse report in a 'perf script'
       python script.
    
     - Allow build-id with trailing zeros.
    
     - Look for ImageBase in PE file to compute .text offset.
    
    * tag 'perf-tools-for-v5.15-2021-09-11' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux: (25 commits)
      tools headers UAPI: Update tools's copy of drm.h headers
      tools headers UAPI: Sync drm/i915_drm.h with the kernel sources
      tools headers UAPI: Sync linux/fs.h with the kernel sources
      tools headers UAPI: Sync linux/in.h copy with the kernel sources
      perf tools: Add an option to build without libbfd
      perf tools: Allow build-id with trailing zeros
      perf tools: Fix hybrid config terms list corruption
      perf tools: Factor out copy_config_terms() and free_config_terms()
      perf tools: Fix perf_event_attr__fprintf() missing/dupl. fields
      perf tools: Ignore Documentation dependency file
      perf bpf: Provide a weak btf__load_from_kernel_by_id() for older libbpf versions
      tools include UAPI: Update linux/mount.h copy
      perf beauty: Cover more flags in the  move_mount syscall argument beautifier
      tools headers UAPI: Sync linux/prctl.h with the kernel sources
      tools include UAPI: Sync sound/asound.h copy with the kernel sources
      tools headers UAPI: Sync linux/kvm.h with the kernel sources
      tools headers UAPI: Sync x86's asm/kvm.h with the kernel sources
      perf report: Add support to print a textual representation of IBS raw sample data
      perf report: Add tools/arch/x86/include/asm/amd-ibs.h
      perf env: Add perf_env__cpuid, perf_env__{nr_}pmu_mappings
      ...
    torvalds committed Sep 12, 2021
  3. Merge tag 'compiler-attributes-for-linus-v5.15-rc1-v2' of git://githu…

    …b.com/ojeda/linux
    
    Pull compiler attributes updates from Miguel Ojeda:
    
     - Fix __has_attribute(__no_sanitize_coverage__) for GCC 4 (Marco Elver)
    
     - Add Nick as Reviewer for compiler_attributes.h (Nick Desaulniers)
    
     - Move __compiletime_{error|warning} (Nick Desaulniers)
    
    * tag 'compiler-attributes-for-linus-v5.15-rc1-v2' of git://github.com/ojeda/linux:
      compiler_attributes.h: move __compiletime_{error|warning}
      MAINTAINERS: add Nick as Reviewer for compiler_attributes.h
      Compiler Attributes: fix __has_attribute(__no_sanitize_coverage__) for GCC 4
    torvalds committed Sep 12, 2021
  4. Merge tag 'auxdisplay-for-linus-v5.15-rc1' of git://github.com/ojeda/…

    …linux
    
    Pull auxdisplay updates from Miguel Ojeda:
     "An assortment of improvements for auxdisplay:
    
       - Replace symbolic permissions with octal permissions (Jinchao Wang)
    
       - ks0108: Switch to use module_parport_driver() (Andy Shevchenko)
    
       - charlcd: Drop unneeded initializers and switch to C99 style (Andy
         Shevchenko)
    
       - hd44780: Fix oops on module unloading (Lars Poeschel)
    
       - Add I2C gpio expander example (Ralf Schlatterbeck)"
    
    * tag 'auxdisplay-for-linus-v5.15-rc1' of git://github.com/ojeda/linux:
      auxdisplay: Replace symbolic permissions with octal permissions
      auxdisplay: ks0108: Switch to use module_parport_driver()
      auxdisplay: charlcd: Drop unneeded initializers and switch to C99 style
      auxdisplay: hd44780: Fix oops on module unloading
      auxdisplay: Add I2C gpio expander example
    torvalds committed Sep 12, 2021
  5. Merge tag 'smp-urgent-2021-09-12' of git://git.kernel.org/pub/scm/lin…

    …ux/kernel/git/tip/tip
    
    Pull CPU hotplug updates from Thomas Gleixner:
     "Updates for the SMP and CPU hotplug:
    
       - Remove DEFINE_SMP_CALL_CACHE_FUNCTION() which is a left over of the
         original hotplug code and now causing trouble with the ARM64 cache
         topology setup due to the pointless SMP function call.
    
         It's not longer required as the hotplug callbacks are guaranteed to
         be invoked on the upcoming CPU.
    
       - Remove the deprecated and now unused CPU hotplug functions
    
       - Rewrite the CPU hotplug API documentation"
    
    * tag 'smp-urgent-2021-09-12' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      Documentation: core-api/cpuhotplug: Rewrite the API section
      cpu/hotplug: Remove deprecated CPU-hotplug functions.
      thermal: Replace deprecated CPU-hotplug functions.
      drivers: base: cacheinfo: Get rid of DEFINE_SMP_CALL_CACHE_FUNCTION()
    torvalds committed Sep 12, 2021
  6. Merge tag 'char-misc-5.15-rc1-lkdtm' of git://git.kernel.org/pub/scm/…

    …linux/kernel/git/gregkh/char-misc
    
    Pull misc driver fix from Greg KH:
     "Here is a single patch for 5.15-rc1, for the lkdtm misc driver.
    
      It resolves a build issue that many people were hitting with your
      current tree, and Kees and others felt would be good to get merged
      before -rc1 comes out, to prevent them from having to constantly hit
      it as many development trees restart on -rc1, not older -rc releases.
    
      It has NOT been in linux-next, but has passed 0-day testing and looks
      'obviously correct' when reviewing it locally :)"
    
    * tag 'char-misc-5.15-rc1-lkdtm' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc:
      lkdtm: Use init_uts_ns.name instead of macros
    torvalds committed Sep 12, 2021
  7. Merge tag 'for-linus-5.15-1' of git://github.com/cminyard/linux-ipmi

    Pull IPMI updates from Corey Minyard:
     "A couple of very minor fixes for style and rate limiting.
    
      Nothing big, but probably needs to go in"
    
    * tag 'for-linus-5.15-1' of git://github.com/cminyard/linux-ipmi:
      char: ipmi: use DEVICE_ATTR helper macro
      ipmi: rate limit ipmi smi_event failure message
    torvalds committed Sep 12, 2021
  8. Merge tag 'sched_urgent_for_v5.15_rc1' of git://git.kernel.org/pub/sc…

    …m/linux/kernel/git/tip/tip
    
    Pull scheduler fixes from Borislav Petkov:
    
     - Make sure the idle timer expires in hardirq context, on PREEMPT_RT
    
     - Make sure the run-queue balance callback is invoked only on the
       outgoing CPU
    
    * tag 'sched_urgent_for_v5.15_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      sched: Prevent balance_push() on remote runqueues
      sched/idle: Make the idle timer expire in hard interrupt context
    torvalds committed Sep 12, 2021
  9. Merge tag 'locking_urgent_for_v5.15_rc1' of git://git.kernel.org/pub/…

    …scm/linux/kernel/git/tip/tip
    
    Pull locking fixes from Borislav Petkov:
    
     - Fix the futex PI requeue machinery to not return to userspace in
       inconsistent state
    
     - Avoid a potential null pointer dereference in the ww_mutex deadlock
       check
    
     - Other smaller cleanups and optimizations
    
    * tag 'locking_urgent_for_v5.15_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      locking/rtmutex: Fix ww_mutex deadlock check
      futex: Remove unused variable 'vpid' in futex_proxy_trylock_atomic()
      futex: Avoid redundant task lookup
      futex: Clarify comment for requeue_pi_wake_futex()
      futex: Prevent inconsistent state and exit race
      futex: Return error code instead of assigning it without effect
      locking/rwsem: Add missing __init_rwsem() for PREEMPT_RT
    torvalds committed Sep 12, 2021
  10. Merge tag 'timers_urgent_for_v5.15_rc1' of git://git.kernel.org/pub/s…

    …cm/linux/kernel/git/tip/tip
    
    Pull timer fix from Borislav Petkov:
    
     - Handle negative second values properly when converting a timespec64
       to nanoseconds.
    
    * tag 'timers_urgent_for_v5.15_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      time: Handle negative seconds correctly in timespec64_to_ns()
    torvalds committed Sep 12, 2021
  11. Merge branch 'misc.namei' of git://git.kernel.org/pub/scm/linux/kerne…

    …l/git/viro/vfs
    
    Pull namei updates from Al Viro:
     "Clearing fallout from mkdirat in io_uring series. The fix in the
      kern_path_locked() patch plus associated cleanups"
    
    * 'misc.namei' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
      putname(): IS_ERR_OR_NULL() is wrong here
      namei: Standardize callers of filename_create()
      namei: Standardize callers of filename_lookup()
      rename __filename_parentat() to filename_parentat()
      namei: Fix use after free in kern_path_locked
    torvalds committed Sep 12, 2021
  12. Merge tag '5.15-rc-cifs-part2' of git://git.samba.org/sfrench/cifs-2.6

    Pull smbfs updates from Steve French:
     "cifs/smb3 updates:
    
       - DFS reconnect fix
    
       - begin creating common headers for server and client
    
       - rename the cifs_common directory to smbfs_common to be more
         consistent ie change use of the name cifs to smb (smb3 or smbfs is
         more accurate, as the very old cifs dialect has long been
         superseded by smb3 dialects).
    
      In the future we can rename the fs/cifs directory to fs/smbfs.
    
      This does not include the set of multichannel fixes nor the two
      deferred close fixes (they are still being reviewed and tested)"
    
    * tag '5.15-rc-cifs-part2' of git://git.samba.org/sfrench/cifs-2.6:
      cifs: properly invalidate cached root handle when closing it
      cifs: move SMB FSCTL definitions to common code
      cifs: rename cifs_common to smbfs_common
      cifs: update FSCTL definitions
    torvalds committed Sep 12, 2021

Commits on Sep 11, 2021

  1. Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/gi…

    …t/mst/vhost
    
    Pull virtio updates from Michael Tsirkin:
    
     - vduse driver ("vDPA Device in Userspace") supporting emulated virtio
       block devices
    
     - virtio-vsock support for end of record with SEQPACKET
    
     - vdpa: mac and mq support for ifcvf and mlx5
    
     - vdpa: management netlink for ifcvf
    
     - virtio-i2c, gpio dt bindings
    
     - misc fixes and cleanups
    
    * tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost: (39 commits)
      Documentation: Add documentation for VDUSE
      vduse: Introduce VDUSE - vDPA Device in Userspace
      vduse: Implement an MMU-based software IOTLB
      vdpa: Support transferring virtual addressing during DMA mapping
      vdpa: factor out vhost_vdpa_pa_map() and vhost_vdpa_pa_unmap()
      vdpa: Add an opaque pointer for vdpa_config_ops.dma_map()
      vhost-iotlb: Add an opaque pointer for vhost IOTLB
      vhost-vdpa: Handle the failure of vdpa_reset()
      vdpa: Add reset callback in vdpa_config_ops
      vdpa: Fix some coding style issues
      file: Export receive_fd() to modules
      eventfd: Export eventfd_wake_count to modules
      iova: Export alloc_iova_fast() and free_iova_fast()
      virtio-blk: remove unneeded "likely" statements
      virtio-balloon: Use virtio_find_vqs() helper
      vdpa: Make use of PFN_PHYS/PFN_UP/PFN_DOWN helper macro
      vsock_test: update message bounds test for MSG_EOR
      af_vsock: rename variables in receive loop
      virtio/vsock: support MSG_EOR bit processing
      vhost/vsock: support MSG_EOR bit processing
      ...
    torvalds committed Sep 11, 2021
  2. Merge tag 'riscv-for-linus-5.15-mw1' of git://git.kernel.org/pub/scm/…

    …linux/kernel/git/riscv/linux
    
    Pull more RISC-V updates from Palmer Dabbelt:
    
     - A pair of defconfig additions, for NVMe and the EFI filesystem
       localization options.
    
     - A larger address space for stack randomization.
    
     - A cleanup to our install rules.
    
     - A DTS update for the Microchip Icicle board, to fix the serial
       console.
    
     - Support for build-time table sorting, which allows us to have
       __ex_table read-only.
    
    * tag 'riscv-for-linus-5.15-mw1' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux:
      riscv: Move EXCEPTION_TABLE to RO_DATA segment
      riscv: Enable BUILDTIME_TABLE_SORT
      riscv: dts: microchip: mpfs-icicle: Fix serial console
      riscv: move the (z)install rules to arch/riscv/Makefile
      riscv: Improve stack randomisation on RV64
      riscv: defconfig: enable NLS_CODEPAGE_437, NLS_ISO8859_1
      riscv: defconfig: enable BLK_DEV_NVME
    torvalds committed Sep 11, 2021
  3. Merge branch 'for-5.15' of git://git.kernel.org/pub/scm/linux/kernel/…

    …git/jlawall/linux
    
    Pull coccinelle updates from Julia Lawall:
     "These changes update some existing semantic patches with
      respect to some recent changes in the kernel.
    
      Specifically, the change to kvmalloc.cocci searches for
      kfree_sensitive rather than kzfree, and the change to
      use_after_iter.cocci adds list_entry_is_head as a valid
      use of a list iterator index variable after the end of
      the loop"
    
    * 'for-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/jlawall/linux:
      scripts: coccinelle: allow list_entry_is_head() to use pos
      coccinelle: api: rename kzfree to kfree_sensitive
    torvalds committed Sep 11, 2021
  4. tools headers UAPI: Update tools's copy of drm.h headers

    Picking the changes from:
    
      17ce9c6 ("drm: document DRM_IOCTL_MODE_RMFB")
    
    Doesn't result in any tooling changes:
    
      $ tools/perf/trace/beauty/drm_ioctl.sh  > before
      $ cp include/uapi/drm/drm.h tools/include/uapi/drm/drm.h
      $ tools/perf/trace/beauty/drm_ioctl.sh  > after
      $ diff -u before after
    
    Silencing these perf build warnings:
    
      Warning: Kernel ABI header at 'tools/include/uapi/drm/drm.h' differs from latest version at 'include/uapi/drm/drm.h'
      diff -u tools/include/uapi/drm/drm.h include/uapi/drm/drm.h
    
    Cc: Simon Ser <contact@emersion.fr>
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    Arnaldo Carvalho de Melo committed Sep 11, 2021
  5. tools headers UAPI: Sync drm/i915_drm.h with the kernel sources

    To pick the changes in:
    
      b65a948 ("drm/i915/userptr: Probe existence of backing struct pages upon creation")
      ee242ca ("drm/i915/guc: Implement GuC priority management")
      81340cf ("drm/i915/uapi: reject set_domain for discrete")
      7961c5b ("drm/i915: Add TTM offset argument to mmap.")
      aef7b67 ("drm/i915/uapi: convert drm_i915_gem_userptr to kernel doc")
      e7737b6 ("drm/i915/uapi: reject caching ioctls for discrete")
      3aa8c57 ("drm/i915/uapi: convert drm_i915_gem_set_domain to kernel doc")
      289f5a7 ("drm/i915/uapi: convert drm_i915_gem_caching to kernel doc")
      4a766ae ("drm/i915: Drop the CONTEXT_CLONE API (v2)")
      6ff6d61 ("drm/i915: Drop I915_CONTEXT_PARAM_NO_ZEROMAP")
      fe4751c ("drm/i915: Drop I915_CONTEXT_PARAM_RINGSIZE")
      5777295 ("drm/i915: Document the Virtual Engine uAPI")
      c649432 ("drm/i915: Fix busy ioctl commentary")
    
    That doesn't result in any changes to tooling as no new ioctl were
    added (at least not perceived by tools/perf/trace/beauty/drm_ioctl.sh).
    
    Addressing this perf build warning:
    
      Warning: Kernel ABI header at 'tools/include/uapi/drm/i915_drm.h' differs from latest version at 'include/uapi/drm/i915_drm.h'
      diff -u tools/include/uapi/drm/i915_drm.h include/uapi/drm/i915_drm.h
    
    Cc: Chris Wilson <chris@chris-wilson.co.uk>
    Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
    Cc: Jason Ekstrand <jason@jlekstrand.net>
    Cc: John Harrison <John.C.Harrison@Intel.com>
    Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
    Cc: Matthew Auld <matthew.auld@intel.com>
    Cc: Matthew Brost <matthew.brost@intel.com>
    Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    Arnaldo Carvalho de Melo committed Sep 11, 2021
  6. tools headers UAPI: Sync linux/fs.h with the kernel sources

    To pick the change in:
    
      7957d93 ("block: add ioctl to read the disk sequence number")
    
    It adds a new ioctl, but we are still not using that to generate tables
    for 'perf trace', so no changes in tooling.
    
    This silences this perf build warning:
    
      Warning: Kernel ABI header at 'tools/include/uapi/linux/fs.h' differs from latest version at 'include/uapi/linux/fs.h'
      diff -u tools/include/uapi/linux/fs.h include/uapi/linux/fs.h
    
    Cc: Jens Axboe <axboe@kernel.dk>
    Cc: Matteo Croce <mcroce@microsoft.com>
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    Arnaldo Carvalho de Melo committed Sep 11, 2021
  7. tools headers UAPI: Sync linux/in.h copy with the kernel sources

    To pick the changes in:
    
      db243b7 ("net/ipv4/ipv6: Replace one-element arraya with flexible-array members")
      2d3e5ca ("net/ipv4: Replace one-element array with flexible-array member")
    
    That don't result in any change in tooling, the structs changed remains
    with the same layout.
    
    This addresses this build warning:
    
      Warning: Kernel ABI header at 'tools/include/uapi/linux/in.h' differs from latest version at 'include/uapi/linux/in.h'
      diff -u tools/include/uapi/linux/in.h include/uapi/linux/in.h
    
    Cc: David S. Miller <davem@davemloft.net>
    Cc: Gustavo A. R. Silva <gustavoars@kernel.org>
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    Arnaldo Carvalho de Melo committed Sep 11, 2021
  8. perf tools: Add an option to build without libbfd

    Some distributions, like debian, don't link perf with libbfd. Add a
    build flag to make this configuration buildable and testable.
    
    This was inspired by:
    
      https://lore.kernel.org/linux-perf-users/20210910102307.2055484-1-tonyg@leastfixedpoint.com/T/#u
    
    Signed-off-by: Ian Rogers <irogers@google.com>
    Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
    Cc: Jiri Olsa <jolsa@redhat.com>
    Cc: Mark Rutland <mark.rutland@arm.com>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: tony garnock-jones <tonyg@leastfixedpoint.com>
    Link: http://lore.kernel.org/lkml/20210910225756.729087-1-irogers@google.com
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    captain5050 authored and Arnaldo Carvalho de Melo committed Sep 11, 2021
  9. perf tools: Allow build-id with trailing zeros

    Currently perf saves a build-id with size but old versions assumes the
    size of 20.  In case the build-id is less than 20 (like for MD5), it'd
    fill the rest with 0s.
    
    I saw a problem when old version of perf record saved a binary in the
    build-id cache and new version of perf reads the data.  The symbols
    should be read from the build-id cache (as the path no longer has the
    same binary) but it failed due to mismatch in the build-id.
    
      symsrc__init: build id mismatch for /home/namhyung/.debug/.build-id/53/e4c2f42a4c61a2d632d92a72afa08f00000000/elf.
    
    The build-id event in the data has 20 byte build-ids, but it saw a
    different size (16) when it reads the build-id of the elf file in the
    build-id cache.
    
      $ readelf -n ~/.debug/.build-id/53/e4c2f42a4c61a2d632d92a72afa08f00000000/elf
    
      Displaying notes found in: .note.gnu.build-id
        Owner                Data size 	Description
        GNU                  0x00000010	NT_GNU_BUILD_ID (unique build ID bitstring)
          Build ID: 53e4c2f42a4c61a2d632d92a72afa08f
    
    Let's fix this by allowing trailing zeros if the size is different.
    
    Fixes: 39be8d0 ("perf tools: Pass build_id object to dso__build_id_equal()")
    Signed-off-by: Namhyung Kim <namhyung@kernel.org>
    Acked-by: Jiri Olsa <jolsa@redhat.com>
    Cc: Andi Kleen <ak@linux.intel.com>
    Cc: Ian Rogers <irogers@google.com>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Link: http://lore.kernel.org/lkml/20210910224630.1084877-1-namhyung@kernel.org
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    namhyung authored and Arnaldo Carvalho de Melo committed Sep 11, 2021
  10. perf tools: Fix hybrid config terms list corruption

    A config terms list was spliced twice, resulting in a never-ending loop
    when the list was traversed. Fix by using list_splice_init() and copying
    and freeing the lists as necessary.
    
    This patch also depends on patch "perf tools: Factor out
    copy_config_terms() and free_config_terms()"
    
    Example on ADL:
    
     Before:
    
      # perf record -e '{intel_pt//,cycles/aux-sample-size=4096/pp}' uname &
      # jobs
      [1]+  Running                    perf record -e "{intel_pt//,cycles/aux-sample-size=4096/pp}" uname
      # perf top -E 10
        PerfTop:    4071 irqs/sec  kernel: 6.9%  exact: 100.0% lost: 0/0 drop: 0/0 [4000Hz cycles],  (all, 24 CPUs)
      ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    
        97.60%  perf           [.] __evsel__get_config_term
         0.25%  [kernel]       [k] kallsyms_expand_symbol.constprop.13
         0.24%  perf           [.] kallsyms__parse
         0.15%  [kernel]       [k] _raw_spin_lock
         0.14%  [kernel]       [k] number
         0.13%  [kernel]       [k] advance_transaction
         0.08%  [kernel]       [k] format_decode
         0.08%  perf           [.] map__process_kallsym_symbol
         0.08%  perf           [.] rb_insert_color
         0.08%  [kernel]       [k] vsnprintf
      exiting.
      # kill %1
    
    After:
    
      # perf record -e '{intel_pt//,cycles/aux-sample-size=4096/pp}' uname &
      Linux
      [ perf record: Woken up 1 times to write data ]
      [ perf record: Captured and wrote 0.060 MB perf.data ]
      # perf script | head
           perf-exec   604 [001]  1827.312293:                            psb:  psb offs: 0                       ffffffffb8415e87 pt_config_start+0x37 ([kernel.kallsyms])
           perf-exec   604  1827.312293:          1                       branches:  ffffffffb856a3bd event_sched_in.isra.133+0xfd ([kernel.kallsyms]) => ffffffffb856a9a0 perf_pmu_nop_void+0x0 ([kernel.kallsyms])
           perf-exec   604  1827.312293:          1                       branches:  ffffffffb856b10e merge_sched_in+0x26e ([kernel.kallsyms]) => ffffffffb856a2c0 event_sched_in.isra.133+0x0 ([kernel.kallsyms])
           perf-exec   604  1827.312293:          1                       branches:  ffffffffb856a45d event_sched_in.isra.133+0x19d ([kernel.kallsyms]) => ffffffffb8568b80 perf_event_set_state.part.61+0x0 ([kernel.kallsyms])
           perf-exec   604  1827.312293:          1                       branches:  ffffffffb8568b86 perf_event_set_state.part.61+0x6 ([kernel.kallsyms]) => ffffffffb85662a0 perf_event_update_time+0x0 ([kernel.kallsyms])
           perf-exec   604  1827.312293:          1                       branches:  ffffffffb856a35c event_sched_in.isra.133+0x9c ([kernel.kallsyms]) => ffffffffb8567610 perf_log_itrace_start+0x0 ([kernel.kallsyms])
           perf-exec   604  1827.312293:          1                       branches:  ffffffffb856a377 event_sched_in.isra.133+0xb7 ([kernel.kallsyms]) => ffffffffb8403b40 x86_pmu_add+0x0 ([kernel.kallsyms])
           perf-exec   604  1827.312293:          1                       branches:  ffffffffb8403b86 x86_pmu_add+0x46 ([kernel.kallsyms]) => ffffffffb8403940 collect_events+0x0 ([kernel.kallsyms])
           perf-exec   604  1827.312293:          1                       branches:  ffffffffb8403a7b collect_events+0x13b ([kernel.kallsyms]) => ffffffffb8402cd0 collect_event+0x0 ([kernel.kallsyms])
    
    Fixes: 30def61 ("perf parse-events Create two hybrid cache events")
    Fixes: 94da591 ("perf parse-events Create two hybrid raw events")
    Fixes: 9cbfa2f ("perf parse-events Create two hybrid hardware events")
    Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
    Acked-by: Jiri Olsa <jolsa@redhat.com>
    Cc: Jin Yao <yao.jin@linux.intel.com>
    Cc: Kan Liang <kan.liang@linux.intel.com>
    Link: https //lore.kernel.org/r/20210909125508.28693-3-adrian.hunter@intel.com
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    ahunter6 authored and Arnaldo Carvalho de Melo committed Sep 11, 2021
Older