Skip to content
  1. Jan 13, 2023
    • Linus Torvalds's avatar
      Merge tag 'net-6.2-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net · d9fc1511
      Linus Torvalds authored
      Pull networking fixes from Paolo Abeni:
       "Including fixes from rxrpc.
      
        The rxrpc changes are noticeable large: to address a recent regression
        has been necessary completing the threaded refactor.
      
        Current release - regressions:
      
         - rxrpc:
             - only disconnect calls in the I/O thread
             - move client call connection to the I/O thread
             - fix incoming call setup race
      
         - eth: mlx5:
             - restore pkt rate policing support
             - fix memory leak on updating vport counters
      
        Previous releases - regressions:
      
         - gro: take care of DODGY packets
      
         - ipv6: deduct extension header length in rawv6_push_pending_frames
      
         - tipc: fix unexpected link reset due to discovery messages
      
        Previous releases - always broken:
      
         - sched: disallow noqueue for qdisc classes
      
         - eth: ice: fix potential memory leak in ice_gnss_tty_write()
      
         - eth: ixgbe: fix pci device refcount leak
      
         - eth: mlx5:
             - fix command stats access after free
             - fix macsec possible null dereference when updating MAC security
               entity (SecY)"
      
      * tag 'net-6.2-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (64 commits)
        r8152: add vendor/device ID pair for Microsoft Devkit
        net: stmmac: add aux timestamps fifo clearance wait
        bnxt: make sure we return pages to the pool
        net: hns3: fix wrong use of rss size during VF rss config
        ipv6: raw: Deduct extension header length in rawv6_push_pending_frames
        net: lan966x: check for ptp to be enabled in lan966x_ptp_deinit()
        net: sched: disallow noqueue for qdisc classes
        iavf/iavf_main: actually log ->src mask when talking about it
        igc: Fix PPS delta between two synchronized end-points
        ixgbe: fix pci device refcount leak
        octeontx2-pf: Fix resource leakage in VF driver unbind
        selftests/net: l2_tos_ttl_inherit.sh: Ensure environment cleanup on failure.
        selftests/net: l2_tos_ttl_inherit.sh: Run tests in their own netns.
        selftests/net: l2_tos_ttl_inherit.sh: Set IPv6 addresses with "nodad".
        net/mlx5e: Fix macsec possible null dereference when updating MAC security entity (SecY)
        net/mlx5e: Fix macsec ssci attribute handling in offload path
        net/mlx5: E-switch, Coverity: overlapping copy
        net/mlx5e: Don't support encap rules with gbp option
        net/mlx5: Fix ptp max frequency adjustment range
        net/mlx5e: Fix memory leak on updating vport counters
        ...
      d9fc1511
    • Linus Torvalds's avatar
      Merge tag 's390-6.2-2' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · 5be413a6
      Linus Torvalds authored
      Pull s390 fixes from Heiko Carstens:
      
       - Add various missing READ_ONCE() to cmpxchg() loops prevent the
         compiler from potentially generating incorrect code. This includes a
         rather large change to the s390 specific hardware sampling code and
         its current use of cmpxchg_double().
      
         Do the fix now to get it out of the way of Peter Zijlstra's
         cmpxchg128() work, and have something that can be backported. The
         added new code includes a private 128 bit cmpxchg variant which will
         be removed again after Peter's rework is available. Also note that
         this 128 bit cmpxchg variant is used to implement 128 bit
         READ_ONCE(), while strictly speaking it wouldn't be necessary, and
         _READ_ONCE() should also be sufficient; even though it isn't obvious
         for all converted locations that this is the case. Therefore use this
         implementation for for the sake of clarity and consistency for now.
      
       - Fix ipl report address handling to avoid kdump failures/hangs.
      
       - Fix misuse of #(el)if in kernel decompressor.
      
       - Define RUNTIME_DISCARD_EXIT to fix link error with GNU ld < 2.36,
         caused by the recently changed discard behaviour.
      
       - Make sure _edata and _end symbols are always page aligned.
      
       - The current header guard DEBUG_H in one of the s390 specific header
         files is too generic and conflicts with the ath9k wireless driver.
         Add an _ASM_S390_ prefix to the guard to make it unique.
      
       - Update defconfigs.
      
      * tag 's390-6.2-2' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
        s390: update defconfigs
        KVM: s390: interrupt: use READ_ONCE() before cmpxchg()
        s390/percpu: add READ_ONCE() to arch_this_cpu_to_op_simple()
        s390/cpum_sf: add READ_ONCE() semantics to compare and swap loops
        s390/kexec: fix ipl report address for kdump
        s390: fix -Wundef warning for CONFIG_KERNEL_ZSTD
        s390: define RUNTIME_DISCARD_EXIT to fix link error with GNU ld < 2.36
        s390: expicitly align _edata and _end symbols on page boundary
        s390/debug: add _ASM_S390_ prefix to header guard
      5be413a6
    • Linus Torvalds's avatar
      Merge tag 'for-linus-6.2-rc4-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip · bad8c4a8
      Linus Torvalds authored
      Pull xen fixes from Juergen Gross:
      
       - two cleanup patches
      
       - a fix of a memory leak in the Xen pvfront driver
      
       - a fix of a locking issue in the Xen hypervisor console driver
      
      * tag 'for-linus-6.2-rc4-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
        xen/pvcalls: free active map buffer on pvcalls_front_free_map
        hvc/xen: lock console list traversal
        x86/xen: Remove the unused function p2m_index()
        xen: make remove callback of xen driver void returned
      bad8c4a8
    • Linus Torvalds's avatar
      Merge tag 'timers-urgent-2023-01-12' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 772d0e91
      Linus Torvalds authored
      Pull timer doc fixes from Ingo Molnar:
      
       - Fix various DocBook formatting errors in kernel/time/ that generated
         (justified) warnings during a kernel-doc build.
      
      * tag 'timers-urgent-2023-01-12' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        time: Fix various kernel-doc problems
      772d0e91
    • Linus Torvalds's avatar
      Merge tag 'perf-urgent-2023-01-12' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · a7b19c60
      Linus Torvalds authored
      Pull perf events hw enablement from Ingo Molnar:
      
       - More hardware-enablement for Intel Meteor Lake & Emerald Rapid
         systems: pure model ID enumeration additions that do not affect other
         systems.
      
      * tag 'perf-urgent-2023-01-12' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        perf/x86/intel/uncore: Add Emerald Rapids
        perf/x86/msr: Add Emerald Rapids
        perf/x86/msr: Add Meteor Lake support
        perf/x86/cstate: Add Meteor Lake support
      a7b19c60
    • Linus Torvalds's avatar
      Merge tag 'sched-urgent-2023-01-12' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · ea66bf86
      Linus Torvalds authored
      Pull scheduler fixes from Ingo Molnar:
      
       - Fix scheduler frequency invariance bug related to overly long
         tickless periods triggering an integer overflow and disabling the
         feature.
      
       - Fix use-after-free bug in dup_user_cpus_ptr().
      
       - Fix do_set_cpus_allowed() deadlock scenarios related to calling
         kfree() with the pi_lock held. NOTE: the rcu_free() is the 'lazy'
         solution here - we looked at patches to free the structure after the
         pi_lock got dropped, but that looked quite a bit messier - and none
         of this is truly performance critical. We can revisit this if it's
         too lazy of a solution ...
      
      * tag 'sched-urgent-2023-01-12' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sched/core: Use kfree_rcu() in do_set_cpus_allowed()
        sched/core: Fix use-after-free bug in dup_user_cpus_ptr()
        sched/core: Fix arch_scale_freq_tick() on tickless systems
      ea66bf86
    • Linus Torvalds's avatar
      Merge tag 'core-urgent-2023-01-12' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · cf4d5be8
      Linus Torvalds authored
      Pull objtool fix from Ingo Molnar:
      
       - Fix objtool to be more permissive with hand-written assembly that
         uses non-function symbols in executable sections.
      
      * tag 'core-urgent-2023-01-12' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        objtool: Tolerate STT_NOTYPE symbols at end of section
      cf4d5be8
    • Linus Torvalds's avatar
      Merge tag 'urgent-nolibc.2023.01.09a' of... · f129b616
      Linus Torvalds authored
      Merge tag 'urgent-nolibc.2023.01.09a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu
      
      Pull nolibc fixes from Paul McKenney:
      
       - The fd_set structure was incorrectly defined as arrays of u32 instead
         of long, which breaks BE64. Fix courtesy of Sven Schnelle.
      
       - S_ISxxx macros were incorrectly testing the bits after applying them
         instead of bitwise ANDing S_FMT with the value. Fix from Warner Losh.
      
       - The mips code was randomly broken due to an unprotected "noreorder"
         directive in the _start code that could prevent the assembler from
         filling delayed slots. This in turn resulted in random other
         instructions being placed into those slots. Fix courtesy of Willy
         Tarreau.
      
       - The current nolibc header layout refrains from including files that
         are not explicitly included by the code using nolibc. Unfortunately,
         this causes build failures when such files contain definitions that
         are used (for example) by libgcc. Example definitions include raise()
         and memset(), which are called by some architectures, but only at
         certain optimization levels. Fix courtesy of Willy Tarreau.
      
       - gcc 11.3 in ARM thumb2 mode at -O2 recognized a memset() construction
         inside the memset() definition. The compiler replaced this
         construction with a call to... memset(). Userland cannot be forced to
         build with -ffreestanding, so an empty asm() statement was introduced
         into the loop the loop in order to prevent the compiler from making
         this unproductive transformation. Fix courtesy of Willy Tarreau.
      
       - Most of the O_* macros were wrong on RISCV because their octal values
         were coded as hexadecimal. This resulted in the getdents64() selftest
         failing. Fix courtesy of Willy Tarreau.
      
      This was tested on x86_64, i386, armv5, armv7, thumb1, thumb2, mips and
      riscv, all at -O0, -Os and -O3.
      
      * tag 'urgent-nolibc.2023.01.09a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu:
        tools/nolibc: fix the O_* fcntl/open macro definitions for riscv
        tools/nolibc: prevent gcc from making memset() loop over itself
        tools/nolibc: fix missing includes causing build issues at -O0
        tools/nolibc: restore mips branch ordering in the _start block
        tools/nolibc: Fix S_ISxxx macros
        nolibc: fix fd_set type
      f129b616
  2. Jan 12, 2023
    • Andre Przywara's avatar
      r8152: add vendor/device ID pair for Microsoft Devkit · be53771c
      Andre Przywara authored
      
      
      The Microsoft Devkit 2023 is a an ARM64 based machine featuring a
      Realtek 8153 USB3.0-to-GBit Ethernet adapter. As in their other
      machines, Microsoft uses a custom USB device ID.
      
      Add the respective ID values to the driver. This makes Ethernet work on
      the MS Devkit device. The chip has been visually confirmed to be a
      RTL8153.
      
      Signed-off-by: default avatarAndre Przywara <andre.przywara@arm.com>
      Link: https://lore.kernel.org/r/20230111133228.190801-1-andre.przywara@arm.com
      Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
      be53771c
    • Linus Torvalds's avatar
      Merge tag 'spi-fix-v6.2-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi · c757fc92
      Linus Torvalds authored
      Pull spi fixes from Mark Brown:
      
       - Fixes for long standing issues with accesses to spidev->spi during
         teardown in the spidev userspace driver.
      
       - Rename the newly added spi-cs-setup-ns DT property to be more in line
         with our other delay properties before it becomes ABI.
      
       - A few driver specific fixes.
      
      * tag 'spi-fix-v6.2-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi:
        spi: spidev: remove debug messages that access spidev->spi without locking
        spi: spidev: fix a race condition when accessing spidev->spi
        spi: Rename spi-cs-setup-ns property to spi-cs-setup-delay-ns
        spi: dt-bindings: Rename spi-cs-setup-ns to spi-cs-setup-delay-ns
        spi: cadence: Fix busy cycles calculation
        spi: mediatek: Enable irq before the spi registration
      c757fc92
    • Linus Torvalds's avatar
      Merge tag 'regulator-fix-v6.2-rc3' of... · cf9668a2
      Linus Torvalds authored
      Merge tag 'regulator-fix-v6.2-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator
      
      Pull regulator fixes from Mark Brown:
       "A couple of small driver specific fixes, one of which I queued for 6.1
        but didn't actually send out so has had *plenty* of testing in -next"
      
      * tag 'regulator-fix-v6.2-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator:
        regulator: qcom-rpmh: PM8550 ldo11 regulator is an nldo
        regulator: da9211: Use irq handler when ready
      cf9668a2
    • Linus Torvalds's avatar
      Merge tag 'mtd/fixes-for-6.2-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux · e58f087e
      Linus Torvalds authored
      Pull MTD fixes from Miquel Raynal:
      
       - cfi: Allow building spi-intel standalone to avoid build issues
      
       - parsers: scpart: Fix __udivdi3 undefined on mips
      
       - parsers: tplink_safeloader: Fix potential memory leak during parsing
      
       - Update email of Tudor Ambarus
      
      * tag 'mtd/fixes-for-6.2-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux:
        MAINTAINERS: Update email of Tudor Ambarus
        mtd: cfi: allow building spi-intel standalone
        mtd: parsers: scpart: fix __udivdi3 undefined on mips
        mtd: parsers: Fix potential memory leak in mtd_parser_tplink_safeloader_parse()
      e58f087e
    • Linus Torvalds's avatar
      Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · 23025cbc
      Linus Torvalds authored
      Pull SCSI fixes from James Bottomley:
       "Ten small fixes (less the one that cleaned up a reverted removal),
        nine in drivers of which the ufs one is the most critical.
      
        The single core patch is a minor speedup to error handling"
      
      * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
        scsi: libsas: Grab the ATA port lock in sas_ata_device_link_abort()
        scsi: hisi_sas: Fix tag freeing for reserved tags
        scsi: ufs: core: WLUN suspend SSU/enter hibern8 fail recovery
        scsi: scsi_debug: Delete unreachable code in inquiry_vpd_b0()
        scsi: mpi3mr: Refer CONFIG_SCSI_MPI3MR in Makefile
        scsi: core: scsi_error: Do not queue pointless abort workqueue functions
        scsi: storvsc: Fix swiotlb bounce buffer leak in confidential VM
        scsi: iscsi: Fix multiple iSCSI session unbind events sent to userspace
        scsi: mpi3mr: Remove usage of dma_get_required_mask() API
        scsi: mpt3sas: Remove usage of dma_get_required_mask() API
      23025cbc
    • Noor Azura Ahmad Tarmizi's avatar
      net: stmmac: add aux timestamps fifo clearance wait · ae9dcb91
      Noor Azura Ahmad Tarmizi authored
      Add timeout polling wait for auxiliary timestamps snapshot FIFO clear bit
      (ATSFC) to clear. This is to ensure no residue fifo value is being read
      erroneously.
      
      Fixes: f4da5652
      
       ("net: stmmac: Add support for external trigger timestamping")
      Cc: <stable@vger.kernel.org> # 5.10.x
      Signed-off-by: default avatarNoor Azura Ahmad Tarmizi <noor.azura.ahmad.tarmizi@intel.com>
      Link: https://lore.kernel.org/r/20230111050200.2130-1-noor.azura.ahmad.tarmizi@intel.com
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      ae9dcb91
    • Jakub Kicinski's avatar
      Merge branch '10GbE' of git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/net-queue · eb25df88
      Jakub Kicinski authored
      
      
      Tony Nguyen says:
      
      ====================
      Intel Wired LAN Driver Updates 2023-01-10 (ixgbe, igc, iavf)
      
      This series contains updates to ixgbe, igc, and iavf drivers.
      
      Yang Yingliang adds calls to pci_dev_put() for proper ref count tracking
      on ixgbe.
      
      Christopher adds setting of Toggle on Target Time bits for proper
      pulse per second (PPS) synchronization for igc.
      
      Daniil Tatianin fixes, likely, copy/paste issue that misreported
      destination instead of source for IP mask for iavf error.
      
      * '10GbE' of git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/net-queue:
        iavf/iavf_main: actually log ->src mask when talking about it
        igc: Fix PPS delta between two synchronized end-points
        ixgbe: fix pci device refcount leak
      ====================
      
      Link: https://lore.kernel.org/r/20230110223825.648544-1-anthony.l.nguyen@intel.com
      Reviewed-by: default avatarAlexander Duyck <alexanderduyck@fb.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      eb25df88
    • Jakub Kicinski's avatar
      bnxt: make sure we return pages to the pool · 97f5e03a
      Jakub Kicinski authored
      Before the commit under Fixes the page would have been released
      from the pool before the napi_alloc_skb() call, so normal page
      freeing was fine (released page == no longer in the pool).
      
      After the change we just mark the page for recycling so it's still
      in the pool if the skb alloc fails, we need to recycle.
      
      Same commit added the same bug in the new bnxt_rx_multi_page_skb().
      
      Fixes: 1dc4c557
      
       ("bnxt: adding bnxt_xdp_build_skb to build skb from multibuffer xdp_buff")
      Reviewed-by: default avatarAndy Gospodarek <gospo@broadcom.com>
      Link: https://lore.kernel.org/r/20230111042547.987749-1-kuba@kernel.org
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      97f5e03a
    • Jie Wang's avatar
      net: hns3: fix wrong use of rss size during VF rss config · ae9f29fd
      Jie Wang authored
      Currently, it used old rss size to get current tc mode. As a result, the
      rss size is updated, but the tc mode is still configured based on the old
      rss size.
      
      So this patch fixes it by using the new rss size in both process.
      
      Fixes: 93969dc1
      
       ("net: hns3: refactor VF rss init APIs with new common rss init APIs")
      Signed-off-by: default avatarJie Wang <wangjie125@huawei.com>
      Signed-off-by: default avatarHao Lan <lanhao@huawei.com>
      Reviewed-by: default avatarAlexander Duyck <alexanderduyck@fb.com>
      Link: https://lore.kernel.org/r/20230110115359.10163-1-lanhao@huawei.com
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      ae9f29fd
    • Linus Torvalds's avatar
      Merge tag 'perf-tools-fixes-for-v6.2-2-2023-01-11' of... · e8f60cd7
      Linus Torvalds authored
      Merge tag 'perf-tools-fixes-for-v6.2-2-2023-01-11' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux
      
      Pull perf tools fixes from Arnaldo Carvalho de Melo:
      
       - Make 'perf kmem' cope with the removal of some
         kmem:kmem_cache_alloc_node and kmem:kmalloc_node in the
         11e9734b ("mm/slab_common: unify NUMA and UMA version of
         tracepoints") commit, making sure it works with Linux >= 6.2 as well
         as with older kernels where those tracepoints are present.
      
       - Also make it handle the new "node" kmem:kmalloc and
         kmem:kmem_cache_alloc tracepoint field introduced in that same
         commit.
      
       - Fix hardware tracing PMU address filter duplicate symbol selection,
         that was preventing to match with static functions with the same name
         present in different object files.
      
       - Fix regression on what linux/types.h file gets used to build the "BPF
         prologue" 'perf test' entry, the system one lacks the fmode_t
         definition used in this test, so provide that type in the test
         itself.
      
       - Avoid build breakage with libbpf < 0.8.0 + LIBBPF_DYNAMIC=1. If the
         user asks for linking with the libbpf package provided by the distro,
         then it has to be >= 0.8.0. Using the libbpf supplied with the kernel
         would be a fallback in that case.
      
       - Fix the build when libbpf isn't available or explicitly disabled via
         NO_LIBBPF=1.
      
       - Don't try to install libtraceevent plugins as its not anymore in the
         kernel sources and will thus always fail.
      
      * tag 'perf-tools-fixes-for-v6.2-2-2023-01-11' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux:
        perf auxtrace: Fix address filter duplicate symbol selection
        perf bpf: Avoid build breakage with libbpf < 0.8.0 + LIBBPF_DYNAMIC=1
        perf build: Fix build error when NO_LIBBPF=1
        perf tools: Don't install libtraceevent plugins as its not anymore in the kernel sources
        perf kmem: Support field "node" in evsel__process_alloc_event() coping with recent tracepoint restructuring
        perf kmem: Support legacy tracepoints
        perf build: Properly guard libbpf includes
        perf tests bpf prologue: Fix bpf-script-test-prologue test compile issue with clang
      e8f60cd7
    • Heiko Carstens's avatar
      s390: update defconfigs · 1ecf7bd9
      Heiko Carstens authored
      
      
      Signed-off-by: default avatarHeiko Carstens <hca@linux.ibm.com>
      1ecf7bd9
    • Adrian Hunter's avatar
      perf auxtrace: Fix address filter duplicate symbol selection · cf129830
      Adrian Hunter authored
      When a match has been made to the nth duplicate symbol, return
      success not error.
      
      Example:
      
        Before:
      
          $ cat file.c
          cat: file.c: No such file or directory
          $ cat file1.c
          #include <stdio.h>
      
          static void func(void)
          {
                  printf("First func\n");
          }
      
          void other(void);
      
          int main()
          {
                  func();
                  other();
                  return 0;
          }
          $ cat file2.c
          #include <stdio.h>
      
          static void func(void)
          {
                  printf("Second func\n");
          }
      
          void other(void)
          {
                  func();
          }
      
          $ gcc -Wall -Wextra -o test file1.c file2.c
          $ perf record -e intel_pt//u --filter 'filter func @ ./test' -- ./test
          Multiple symbols with name 'func'
          #1      0x1149  l       func
                          which is near           main
          #2      0x1179  l       func
                          which is near           other
          Disambiguate symbol name by inserting #n after the name e.g. func #2
          Or select a global symbol by inserting #0 or #g or #G
          Failed to parse address filter: 'filter func @ ./test'
          Filter format is: filter|start|stop|tracestop <start symbol or address> [/ <end symbol or size>] [@<file name>]
          Where multiple filters are separated by space or comma.
          $ perf record -e intel_pt//u --filter 'filter func #2 @ ./test' -- ./test
          Failed to parse address filter: 'filter func #2 @ ./test'
          Filter format is: filter|start|stop|tracestop <start symbol or address> [/ <end symbol or size>] [@<file name>]
          Where multiple filters are separated by space or comma.
      
        After:
      
          $ perf record -e intel_pt//u --filter 'filter func #2 @ ./test' -- ./test
          First func
          Second func
          [ perf record: Woken up 1 times to write data ]
          [ perf record: Captured and wrote 0.016 MB perf.data ]
          $ perf script --itrace=b -Ftime,flags,ip,sym,addr --ns
          1231062.526977619:   tr strt                               0 [unknown] =>     558495708179 func
          1231062.526977619:   tr end  call               558495708188 func =>     558495708050 _init
          1231062.526979286:   tr strt                               0 [unknown] =>     55849570818d func
          1231062.526979286:   tr end  return             55849570818f func =>     55849570819d other
      
      Fixes: 1b36c03e
      
       ("perf record: Add support for using symbols in address filters")
      Reported-by: default avatarDmitrii Dolgov <9erthalion6@gmail.com>
      Signed-off-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Tested-by: default avatarDmitry Dolgov <9erthalion6@gmail.com>
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: stable@vger.kernel.org
      Link: https://lore.kernel.org/r/20230110185659.15979-1-adrian.hunter@intel.com
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      cf129830
  3. Jan 11, 2023
  4. Jan 10, 2023
    • Arnaldo Carvalho de Melo's avatar
      perf bpf: Avoid build breakage with libbpf < 0.8.0 + LIBBPF_DYNAMIC=1 · 14292a4a
      Arnaldo Carvalho de Melo authored
      In 746bd29e ("perf build: Use tools/lib headers from install
      path") we stopped having the tools/lib/ directory from the kernel
      sources in the header include path unconditionally, which breaks the
      build on systems with older versions of libbpf-devel, in this case 0.7.0
      as some of the structures and function declarations present in the newer
      version of libbpf included in the kernel sources (tools/lib/bpf) are not
      anymore used, just the ones in the system libbpf.
      
      So instead of trying to provide alternative functions when the
      libbpf-bpf_program__set_insns feature test fails, fail a
      LIBBPF_DYNAMIC=1 build (requesting the use of the system's libbpf) and
      emit this build error message:
      
        $ make LIBBPF_DYNAMIC=1 -C tools/perf
        Makefile.config:593: *** Error: libbpf devel library needs to be >= 0.8.0 to build with LIBBPF_DYNAMIC, update or build statically with the version that comes with the kernel sources.  Stop.
        $
      
      For v6.3 these tests will be revamped and we'll require libbpf 1.0 as a
      minimal version for using LIBBPF_DYNAMIC=1, most distros should have it
      by now or at v6.3 time.
      
      Fixes: 746bd29e
      
       ("perf build: Use tools/lib headers from install path")
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Jiri Olsa <jolsa@kernel.org>
      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>
      Link: http://lore.kernel.org/lkml/CAP-5=fVa51_URGsdDFVTzpyGmdDRj_Dj2EKPuDHNQ0BYgMSzUA@mail.gmail.com
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      14292a4a
    • Ian Rogers's avatar
      perf build: Fix build error when NO_LIBBPF=1 · f00eccb4
      Ian Rogers authored
      The $(LIBBPF) target should only be a dependency of prepare if the
      static version of libbpf is needed. Add a new LIBBPF_STATIC variable
      that is set by Makefile.config. Use LIBBPF_STATIC to determine whether
      the CFLAGS, etc. need updating and for adding $(LIBBPF) as a prepare
      dependency.
      
      As Makefile.config isn't loaded for "clean" as a target, always set
      LIBBPF_OUTPUT regardless of whether it is needed for $(LIBBPF). This
      is done to minimize conditional logic for $(LIBBPF)-clean.
      
      This issue and an original fix was reported by Mike Leach in:
      https://lore.kernel.org/lkml/20230105172243.7238-1-mike.leach@linaro.org/
      
      Fixes: 746bd29e
      
       ("perf build: Use tools/lib headers from install path")
      Reported-by: default avatarMike Leach <mike.leach@linaro.org>
      Signed-off-by: default avatarIan Rogers <irogers@google.com>
      Tested-by: default avatarJiri Olsa <jolsa@kernel.org>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: bpf@vger.kernel.org
      Cc: Ian Rogers <irogers@google.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: http://lore.kernel.org/lkml/20230106151320.619514-2-irogers@google.com
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      f00eccb4
    • Arnaldo Carvalho de Melo's avatar
      perf tools: Don't install libtraceevent plugins as its not anymore in the kernel sources · 213b760f
      Arnaldo Carvalho de Melo authored
      While doing 'make -C tools/perf build-test' one can notice error
      messages while trying to install libtraceevent plugins, stop doing that
      as libtraceevent isn't anymore a homie.
      
      These are the warnings dealt with:
      
         make_install_prefix_slash_O: make install prefix=/tmp/krava/
          failed to find: /tmp/krava/etc/bash_completion.d/perf
          failed to find: /tmp/krava/lib64/traceevent/plugins/plugin_cfg80211.so
          failed to find: /tmp/krava/lib64/traceevent/plugins/plugin_scsi.so
          failed to find: /tmp/krava/lib64/traceevent/plugins/plugin_xen.so
          failed to find: /tmp/krava/lib64/traceevent/plugins/plugin_function.so
          failed to find: /tmp/krava/lib64/traceevent/plugins/plugin_sched_switch.so
          failed to find: /tmp/krava/lib64/traceevent/plugins/plugin_mac80211.so
          failed to find: /tmp/krava/lib64/traceevent/plugins/plugin_kvm.so
          failed to find: /tmp/krava/lib64/traceevent/plugins/plugin_kmem.so
          failed to find: /tmp/krava/lib64/traceevent/plugins/plugin_hrtimer.so
          failed to find: /tmp/krava/lib64/traceevent/plugins/plugin_jbd2.so
      
      Fixes: 4171925a
      
       ("tools lib traceevent: Remove libtraceevent")
      Acked-by: default avatarIan Rogers <irogers@google.com>
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Steven Rostedt <rostedt@goodmis.org>
      Link: http://lore.kernel.org/lkml/Y7xXz+TSpiCbQGjw@kernel.org
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      213b760f
    • Leo Yan's avatar
      perf kmem: Support field "node" in evsel__process_alloc_event() coping with... · dce088ab
      Leo Yan authored
      perf kmem: Support field "node" in evsel__process_alloc_event() coping with recent tracepoint restructuring
      
      Commit 11e9734b ("mm/slab_common: unify NUMA and UMA version of
      tracepoints") adds the field "node" into the tracepoints 'kmalloc' and
      'kmem_cache_alloc', so this patch modifies the event process function to
      support the field "node".
      
      If field "node" is detected by checking function evsel__field(), it
      stats the cross allocation.
      
      When the "node" value is NUMA_NO_NODE (-1), it means the memory can be
      allocated from any memory node, in this case, we don't account it as a
      cross allocation.
      
      Fixes: 11e9734b
      
       ("mm/slab_common: unify NUMA and UMA version of tracepoints")
      Reported-by: default avatarRavi Bangoria <ravi.bangoria@amd.com>
      Reviewed-by: default avatarJames Clark <james.clark@arm.com>
      Signed-off-by: default avatarLeo Yan <leo.yan@linaro.org>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Hyeonggon Yoo <42.hyeyoo@gmail.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Vlastimil Babka <vbabka@suse.cz>
      Link: https://lore.kernel.org/r/20230108062400.250690-2-leo.yan@linaro.org
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      dce088ab