1. 17 Jun, 2022 5 commits
    • Tyrel Datwyler's avatar
      scsi: ibmvfc: Allocate/free queue resource only during probe/remove · 72ea7fe0
      Tyrel Datwyler authored
      Currently, the sub-queues and event pool resources are allocated/freed for
      every CRQ connection event such as reset and LPM. This exposes the driver
      to a couple issues. First the inefficiency of freeing and reallocating
      memory that can simply be resued after being sanitized. Further, a system
      under memory pressue runs the risk of allocation failures that could result
      in a crippled driver. Finally, there is a race window where command
      submission/compeletion can try to pull/return elements from/to an event
      pool that is being deleted or already has been deleted due to the lack of
      host state around freeing/allocating resources. The following is an example
      of list corruption following a live partition migration (LPM):
      
      Oops: Exception in kernel mode, sig: 5 [#1]
      LE PAGE_SIZE=64K MMU=Hash SMP NR_CPUS=2048 NUMA pSeries
      Modules linked in: vfat fat isofs cdrom ext4 mbcache jbd2 nft_counter nft_compat nf_tables nfnetlink rpadlpar_io rpaphp xsk_diag nfsv3 nfs_acl nfs lockd grace fscache netfs rfkill bonding tls sunrpc pseries_rng drm drm_panel_orientation_quirks xfs libcrc32c dm_service_time sd_mod t10_pi sg ibmvfc scsi_transport_fc ibmveth vmx_crypto dm_multipath dm_mirror dm_region_hash dm_log dm_mod ipmi_devintf ipmi_msghandler fuse
      CPU: 0 PID: 2108 Comm: ibmvfc_0 Kdump: loaded Not tainted 5.14.0-70.9.1.el9_0.ppc64le #1
      NIP: c0000000007c4bb0 LR: c0000000007c4bac CTR: 00000000005b9a10
      REGS: c00000025c10b760 TRAP: 0700  Not tainted (5.14.0-70.9.1.el9_0.ppc64le)
      MSR: 800000000282b033 <SF,VEC,VSX,EE,FP,ME,IR,DR,RI,LE> CR: 2800028f XER: 0000000f
      CFAR: c0000000001f55bc IRQMASK: 0
              GPR00: c0000000007c4bac c00000025c10ba00 c000000002a47c00 000000000000004e
              GPR04: c0000031e3006f88 c0000031e308bd00 c00000025c10b768 0000000000000027
              GPR08: 0000000000000000 c0000031e3009dc0 00000031e0eb0000 0000000000000000
              GPR12: c0000031e2ffffa8 c000000002dd0000 c000000000187108 c00000020fcee2c0
              GPR16: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
              GPR20: 0000000000000000 0000000000000000 0000000000000000 c008000002f81300
              GPR24: 5deadbeef0000100 5deadbeef0000122 c000000263ba6910 c00000024cc88000
              GPR28: 000000000000003c c0000002430a0000 c0000002430ac300 000000000000c300
      NIP [c0000000007c4bb0] __list_del_entry_valid+0x90/0x100
      LR [c0000000007c4bac] __list_del_entry_valid+0x8c/0x100
      Call Trace:
      [c00000025c10ba00] [c0000000007c4bac] __list_del_entry_valid+0x8c/0x100 (unreliable)
      [c00000025c10ba60] [c008000002f42284] ibmvfc_free_queue+0xec/0x210 [ibmvfc]
      [c00000025c10bb10] [c008000002f4246c] ibmvfc_deregister_scsi_channel+0xc4/0x160 [ibmvfc]
      [c00000025c10bba0] [c008000002f42580] ibmvfc_release_sub_crqs+0x78/0x130 [ibmvfc]
      [c00000025c10bc20] [c008000002f4f6cc] ibmvfc_do_work+0x5c4/0xc70 [ibmvfc]
      [c00000025c10bce0] [c008000002f4fdec] ibmvfc_work+0x74/0x1e8 [ibmvfc]
      [c00000025c10bda0] [c0000000001872b8] kthread+0x1b8/0x1c0
      [c00000025c10be10] [c00000000000cd64] ret_from_kernel_thread+0x5c/0x64
      Instruction dump:
      40820034 38600001 38210060 4e800020 7c0802a6 7c641b78 3c62fe7a 7d254b78
      3863b590 f8010070 4ba309cd 60000000 <0fe00000> 7c0802a6 3c62fe7a 3863b640
      ---[ end trace 11a2b65a92f8b66c ]---
      ibmvfc 30000003: Send warning. Receive queue closed, will retry.
      
      Add registration/deregistration helpers that are called instead during
      connection resets to sanitize and reconfigure the queues.
      
      Link: https://lore.kernel.org/r/20220616191126.1281259-3-tyreld@linux.ibm.com
      Fixes: 3034ebe2 ("scsi: ibmvfc: Add alloc/dealloc routines for SCSI Sub-CRQ Channels")
      Cc: stable@vger.kernel.org
      Reviewed-by: default avatarBrian King <brking@linux.vnet.ibm.com>
      Signed-off-by: default avatarTyrel Datwyler <tyreld@linux.ibm.com>
      Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
      72ea7fe0
    • Saurabh Sengar's avatar
      scsi: storvsc: Correct reporting of Hyper-V I/O size limits · 1d3e0980
      Saurabh Sengar authored
      Current code is based on the idea that the max number of SGL entries
      also determines the max size of an I/O request.  While this idea was
      true in older versions of the storvsc driver when SGL entry length
      was limited to 4 Kbytes, commit 3d9c3dcc ("scsi: storvsc: Enable
      scatterlist entry lengths > 4Kbytes") removed that limitation. It's
      now theoretically possible for the block layer to send requests that
      exceed the maximum size supported by Hyper-V. This problem doesn't
      currently happen in practice because the block layer defaults to a
      512 Kbyte maximum, while Hyper-V in Azure supports 2 Mbyte I/O sizes.
      But some future configuration of Hyper-V could have a smaller max I/O
      size, and the block layer could exceed that max.
      
      Fix this by correctly setting max_sectors as well as sg_tablesize to
      reflect the maximum I/O size that Hyper-V reports. While allowing
      I/O sizes larger than the block layer default of 512 Kbytes doesn’t
      provide any noticeable performance benefit in the tests we ran, it's
      still appropriate to report the correct underlying Hyper-V capabilities
      to the Linux block layer.
      
      Also tweak the virt_boundary_mask to reflect that the required
      alignment derives from Hyper-V communication using a 4 Kbyte page size,
      and not on the guest page size, which might be bigger (eg. ARM64).
      
      Link: https://lore.kernel.org/r/1655190355-28722-1-git-send-email-ssengar@linux.microsoft.com
      Fixes: 3d9c3dcc ("scsi: storvsc: Enable scatter list entry lengths > 4Kbytes")
      Reviewed-by: default avatarMichael Kelley <mikelley@microsoft.com>
      Signed-off-by: default avatarSaurabh Sengar <ssengar@linux.microsoft.com>
      Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
      1d3e0980
    • Bart Van Assche's avatar
      scsi: ufs: Fix a race between the interrupt handler and the reset handler · 2acd76e7
      Bart Van Assche authored
      Prevent that both the interrupt handler and the reset handler try to
      complete a request at the same time. This patch is the result of an
      analysis of the following crash:
      
      Unable to handle kernel NULL pointer dereference at virtual address 0000000000000120
      CPU: 0 PID: 0 Comm: swapper/0 Tainted: G           OE     5.10.107-android13-4-00051-g1e48e8970cca-ab8664745 #1
      pc : ufshcd_release_scsi_cmd+0x30/0x46c
      lr : __ufshcd_transfer_req_compl+0x4fc/0x9c0
      Call trace:
       ufshcd_release_scsi_cmd+0x30/0x46c
       __ufshcd_transfer_req_compl+0x4fc/0x9c0
       ufshcd_poll+0xf0/0x208
       ufshcd_sl_intr+0xb8/0xf0
       ufshcd_intr+0x168/0x2f4
       __handle_irq_event_percpu+0xa0/0x30c
       handle_irq_event+0x84/0x178
       handle_fasteoi_irq+0x150/0x2e8
       __handle_domain_irq+0x114/0x1e4
       gic_handle_irq.31846+0x58/0x300
       el1_irq+0xe4/0x1c0
       cpuidle_enter_state+0x3ac/0x8c4
       do_idle+0x2fc/0x55c
       cpu_startup_entry+0x84/0x90
       kernel_init+0x0/0x310
       start_kernel+0x0/0x608
       start_kernel+0x4ec/0x608
      
      Link: https://lore.kernel.org/r/20220613214442.212466-4-bvanassche@acm.orgReviewed-by: default avatarStanley Chu <stanley.chu@mediatek.com>
      Reviewed-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Signed-off-by: default avatarBart Van Assche <bvanassche@acm.org>
      Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
      2acd76e7
    • Bart Van Assche's avatar
      scsi: ufs: Support clearing multiple commands at once · d1a76446
      Bart Van Assche authored
      Modify ufshcd_clear_cmd() such that it supports clearing multiple commands
      at once instead of one command at a time. This change will be used in a
      later patch to reduce the time spent in the reset handler.
      
      Link: https://lore.kernel.org/r/20220613214442.212466-3-bvanassche@acm.orgReviewed-by: default avatarStanley Chu <stanley.chu@mediatek.com>
      Reviewed-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Signed-off-by: default avatarBart Van Assche <bvanassche@acm.org>
      Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
      d1a76446
    • Bart Van Assche's avatar
      scsi: ufs: Simplify ufshcd_clear_cmd() · da8badd7
      Bart Van Assche authored
      Remove the local variable 'err'. This patch does not change any
      functionality.
      
      Link: https://lore.kernel.org/r/20220613214442.212466-2-bvanassche@acm.orgReviewed-by: default avatarStanley Chu <stanley.chu@mediatek.com>
      Reviewed-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Signed-off-by: default avatarBart Van Assche <bvanassche@acm.org>
      Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
      da8badd7
  2. 14 Jun, 2022 1 commit
  3. 10 Jun, 2022 1 commit
  4. 08 Jun, 2022 14 commits
  5. 06 Jun, 2022 3 commits
  6. 05 Jun, 2022 16 commits
    • Linus Torvalds's avatar
      Merge tag 'mm-nonmm-stable-2022-06-05' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm · e17fee89
      Linus Torvalds authored
      Pull delay-accounting update from Andrew Morton:
       "A single featurette for delay accounting.
      
        Delayed a bit because, unusually, it had dependencies on both the
        mm-stable and mm-nonmm-stable queues"
      
      * tag 'mm-nonmm-stable-2022-06-05' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm:
        delayacct: track delays from write-protect copy
      e17fee89
    • Linus Torvalds's avatar
      bluetooth: don't use bitmaps for random flag accesses · e1cff700
      Linus Torvalds authored
      The bluetooth code uses our bitmap infrastructure for the two bits (!)
      of connection setup flags, and in the process causes odd problems when
      it converts between a bitmap and just the regular values of said bits.
      
      It's completely pointless to do things like bitmap_to_arr32() to convert
      a bitmap into a u32.  It shoudln't have been a bitmap in the first
      place.  The reason to use bitmaps is if you have arbitrary number of
      bits you want to manage (not two!), or if you rely on the atomicity
      guarantees of the bitmap setting and clearing.
      
      The code could use an "atomic_t" and use "atomic_or/andnot()" to set and
      clear the bit values, but considering that it then copies the bitmaps
      around with "bitmap_to_arr32()" and friends, there clearly cannot be a
      lot of atomicity requirements.
      
      So just use a regular integer.
      
      In the process, this avoids the warnings about erroneous use of
      bitmap_from_u64() which were triggered on 32-bit architectures when
      conversion from a u64 would access two words (and, surprise, surprise,
      only one word is needed - and indeed overkill - for a 2-bit bitmap).
      
      That was always problematic, but the compiler seems to notice it and
      warn about the invalid pattern only after commit 0a97953f ("lib: add
      bitmap_{from,to}_arr64") changed the exact implementation details of
      'bitmap_from_u64()', as reported by Sudip Mukherjee and Stephen Rothwell.
      
      Fixes: fe92ee64 ("Bluetooth: hci_core: Rework hci_conn_params flags")
      Link: https://lore.kernel.org/all/YpyJ9qTNHJzz0FHY@debian/
      Link: https://lore.kernel.org/all/20220606080631.0c3014f2@canb.auug.org.au/
      Link: https://lore.kernel.org/all/20220605162537.1604762-1-yury.norov@gmail.com/Reported-by: default avatarStephen Rothwell <sfr@canb.auug.org.au>
      Reported-by: default avatarSudip Mukherjee <sudipm.mukherjee@gmail.com>
      Reviewed-by: default avatarYury Norov <yury.norov@gmail.com>
      Cc: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
      Cc: Marcel Holtmann <marcel@holtmann.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      e1cff700
    • Al Viro's avatar
      fix the breakage in close_fd_get_file() calling conventions change · 40a19260
      Al Viro authored
      It used to grab an extra reference to struct file rather than
      just transferring to caller the one it had removed from descriptor
      table.  New variant doesn't, and callers need to be adjusted.
      
      Reported-and-tested-by: syzbot+47dd250f527cb7bebf24@syzkaller.appspotmail.com
      Fixes: 6319194e ("Unify the primitives for file descriptor closing")
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      40a19260
    • Linus Torvalds's avatar
      Merge tag 'x86-urgent-2022-06-05' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · d717180e
      Linus Torvalds authored
      Pull x86 SGX fix from Thomas Gleixner:
       "A single fix for x86/SGX to prevent that memory which is allocated for
        an SGX enclave is accounted to the wrong memory control group"
      
      * tag 'x86-urgent-2022-06-05' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/sgx: Set active memcg prior to shmem allocation
      d717180e
    • Linus Torvalds's avatar
      Merge tag 'x86-mm-2022-06-05' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 0b7da15c
      Linus Torvalds authored
      Pull x86 mm cleanup from Thomas Gleixner:
       "Use PAGE_ALIGNED() instead of open coding it in the x86/mm code"
      
      * tag 'x86-mm-2022-06-05' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/mm: Use PAGE_ALIGNED(x) instead of IS_ALIGNED(x, PAGE_SIZE)
      0b7da15c
    • Linus Torvalds's avatar
      Merge tag 'x86-microcode-2022-06-05' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 9784edd7
      Linus Torvalds authored
      Pull x86 microcode updates from Thomas Gleixner:
      
       - Disable late microcode loading by default. Unless the HW people get
         their act together and provide a required minimum version in the
         microcode header for making a halfways informed decision its just
         lottery and broken.
      
       - Warn and taint the kernel when microcode is loaded late
      
       - Remove the old unused microcode loader interface
      
       - Remove a redundant perf callback from the microcode loader
      
      * tag 'x86-microcode-2022-06-05' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/microcode: Remove unnecessary perf callback
        x86/microcode: Taint and warn on late loading
        x86/microcode: Default-disable late loading
        x86/microcode: Rip out the OLD_INTERFACE
      9784edd7
    • Linus Torvalds's avatar
      Merge tag 'x86-cleanups-2022-06-05' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · a9251280
      Linus Torvalds authored
      Pull x86 cleanups from Thomas Gleixner:
       "A set of small x86 cleanups:
      
         - Remove unused headers in the IDT code
      
         - Kconfig indendation and comment fixes
      
         - Fix all 'the the' typos in one go instead of waiting for bots to
           fix one at a time"
      
      * tag 'x86-cleanups-2022-06-05' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86: Fix all occurences of the "the the" typo
        x86/idt: Remove unused headers
        x86/Kconfig: Fix indentation of arch/x86/Kconfig.debug
        x86/Kconfig: Fix indentation and add endif comments to arch/x86/Kconfig
      a9251280
    • Linus Torvalds's avatar
      Merge tag 'x86-boot-2022-06-05' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 1fd9f4ce
      Linus Torvalds authored
      Pull x86 boot update from Thomas Gleixner:
       "Use strlcpy() instead of strscpy() in arch_setup()"
      
      * tag 'x86-boot-2022-06-05' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/setup: Use strscpy() to replace deprecated strlcpy()
      1fd9f4ce
    • Linus Torvalds's avatar
      Merge tag 'timers-core-2022-06-05' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · c049ecc5
      Linus Torvalds authored
      Pull clockevent/clocksource updates from Thomas Gleixner:
      
       - Device tree bindings for MT8186
      
       - Tell the kernel that the RISC-V SBI timer stops in deeper power
         states
      
       - Make device tree parsing in sp804 more robust
      
       - Dead code removal and tiny fixes here and there
      
       - Add the missing SPDX identifiers
      
      * tag 'timers-core-2022-06-05' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        clocksource/drivers/oxnas-rps: Fix irq_of_parse_and_map() return value
        clocksource/drivers/timer-ti-dm: Remove unnecessary NULL check
        clocksource/drivers/timer-sun5i: Convert to SPDX identifier
        clocksource/drivers/timer-sun4i: Convert to SPDX identifier
        clocksource/drivers/pistachio: Convert to SPDX identifier
        clocksource/drivers/orion: Convert to SPDX identifier
        clocksource/drivers/lpc32xx: Convert to SPDX identifier
        clocksource/drivers/digicolor: Convert to SPDX identifier
        clocksource/drivers/armada-370-xp: Convert to SPDX identifier
        clocksource/drivers/mips-gic-timer: Convert to SPDX identifier
        clocksource/drivers/jcore: Convert to SPDX identifier
        clocksource/drivers/bcm_kona: Convert to SPDX identifier
        clocksource/drivers/sp804: Avoid error on multiple instances
        clocksource/drivers/riscv: Events are stopped during CPU suspend
        clocksource/drivers/ixp4xx: Drop boardfile probe path
        dt-bindings: timer: Add compatible for Mediatek MT8186
      c049ecc5
    • Linus Torvalds's avatar
      Merge tag 'sched-urgent-2022-06-05' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · bc1e02c3
      Linus Torvalds authored
      Pull scheduler fix from Thomas Gleixner:
       "Fix the fallout of sysctl code move which placed the init function
        wrong"
      
      * tag 'sched-urgent-2022-06-05' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sched/autogroup: Fix sysctl move
      bc1e02c3
    • Linus Torvalds's avatar
      Merge tag 'perf-urgent-2022-06-05' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · fa11c280
      Linus Torvalds authored
      Pull perf fixes from Thomas Gleixner:
      
        - Make the ICL event constraints match reality
      
        - Remove a unused local variable
      
      * tag 'perf-urgent-2022-06-05' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        perf/core: Remove unused local variable
        perf/x86/intel: Fix event constraints for ICL
      fa11c280
    • Linus Torvalds's avatar
      Merge tag 'perf-core-2022-06-05' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 5cc47d4a
      Linus Torvalds authored
      Pull perf fixlet from Thomas Gleixner:
       "Trivial indentation fix in Kconfig"
      
      * tag 'perf-core-2022-06-05' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        perf/x86/Kconfig: Fix indentation in the Kconfig file
      5cc47d4a
    • Linus Torvalds's avatar
      Merge tag 'objtool-urgent-2022-06-05' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 44688ffd
      Linus Torvalds authored
      Pull objtool fixes from Thomas Gleixner:
      
       - Handle __ubsan_handle_builtin_unreachable() correctly and treat it as
         noreturn
      
       - Allow architectures to select uaccess validation
      
       - Use the non-instrumented bit test for test_cpu_has() to prevent
         escape from non-instrumentable regions
      
       - Use arch_ prefixed atomics for JUMP_LABEL=n builds to prevent escape
         from non-instrumentable regions
      
       - Mark a few tiny inline as __always_inline to prevent GCC from
         bringing them out of line and instrumenting them
      
       - Mark the empty stub context_tracking_enabled() as always inline as
         GCC brings them out of line and instruments the empty shell
      
       - Annotate ex_handler_msr_mce() as dead end
      
      * tag 'objtool-urgent-2022-06-05' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/extable: Annotate ex_handler_msr_mce() as a dead end
        context_tracking: Always inline empty stubs
        x86: Always inline on_thread_stack() and current_top_of_stack()
        jump_label,noinstr: Avoid instrumentation for JUMP_LABEL=n builds
        x86/cpu: Elide KCSAN for cpu_has() and friends
        objtool: Mark __ubsan_handle_builtin_unreachable() as noreturn
        objtool: Add CONFIG_HAVE_UACCESS_VALIDATION
      44688ffd
    • Linus Torvalds's avatar
      Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · b2c9a83d
      Linus Torvalds authored
      Pull more SCSI updates from James Bottomley:
       "Mostly small bug fixes plus other trivial updates.
      
        The major change of note is moving ufs out of scsi and a minor update
        to lpfc vmid handling"
      
      * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (24 commits)
        scsi: qla2xxx: Remove unused 'ql_dm_tgt_ex_pct' parameter
        scsi: qla2xxx: Remove setting of 'req' and 'rsp' parameters
        scsi: mpi3mr: Fix kernel-doc
        scsi: lpfc: Add support for ATTO Fibre Channel devices
        scsi: core: Return BLK_STS_TRANSPORT for ALUA transitioning
        scsi: sd_zbc: Prevent zone information memory leak
        scsi: sd: Fix potential NULL pointer dereference
        scsi: mpi3mr: Rework mrioc->bsg_device model to fix warnings
        scsi: myrb: Fix up null pointer access on myrb_cleanup()
        scsi: core: Unexport scsi_bus_type
        scsi: sd: Don't call blk_cleanup_disk() in sd_probe()
        scsi: ufs: ufshcd: Delete unnecessary NULL check
        scsi: isci: Fix typo in comment
        scsi: pmcraid: Fix typo in comment
        scsi: smartpqi: Fix typo in comment
        scsi: qedf: Fix typo in comment
        scsi: esas2r: Fix typo in comment
        scsi: storvsc: Fix typo in comment
        scsi: ufs: Split the drivers/scsi/ufs directory
        scsi: qla1280: Remove redundant variable
        ...
      b2c9a83d
    • Linus Torvalds's avatar
      Merge tag 'hte/for-5.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux · 29814363
      Linus Torvalds authored
      Pull hardware timestamping subsystem from Thierry Reding:
       "This contains the new HTE (hardware timestamping engine) subsystem
        that has been in the works for a couple of months now.
      
        The infrastructure provided allows for drivers to register as hardware
        timestamp providers, while consumers will be able to request events
        that they are interested in (such as GPIOs and IRQs) to be timestamped
        by the hardware providers.
      
        Note that this currently supports only one provider, but there seems
        to be enough interest in this functionality and we expect to see more
        drivers added once this is merged"
      
      [ Linus Walleij mentions the Intel PMC in the Elkhart and Tiger Lake
        platforms as another future timestamp provider ]
      
      * tag 'hte/for-5.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
        dt-bindings: timestamp: Correct id path
        dt-bindings: Renamed hte directory to timestamp
        hte: Uninitialized variable in hte_ts_get()
        hte: Fix off by one in hte_push_ts_ns()
        hte: Fix possible use-after-free in tegra_hte_test_remove()
        hte: Remove unused including <linux/version.h>
        MAINTAINERS: Add HTE Subsystem
        hte: Add Tegra HTE test driver
        tools: gpio: Add new hardware clock type
        gpiolib: cdev: Add hardware timestamp clock type
        gpio: tegra186: Add HTE support
        gpiolib: Add HTE support
        dt-bindings: Add HTE bindings
        hte: Add Tegra194 HTE kernel provider
        drivers: Add hardware timestamp engine (HTE) subsystem
        Documentation: Add HTE subsystem guide
      29814363
    • Linus Torvalds's avatar
      Merge tag 'kbuild-v5.19-3' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild · 71e80720
      Linus Torvalds authored
      Pull more Kbuild updates from Masahiro Yamada:
      
       - Fix build regressions for parisc, csky, nios2, openrisc
      
       - Simplify module builds for CONFIG_LTO_CLANG and CONFIG_X86_KERNEL_IBT
      
       - Remove arch/parisc/nm, which was presumably a workaround for old
         tools
      
       - Check the odd combination of EXPORT_SYMBOL and 'static' precisely
      
       - Make external module builds robust against "too long argument error"
      
       - Support j, k keys for moving the cursor in nconfig
      
      * tag 'kbuild-v5.19-3' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild: (25 commits)
        kbuild: Allow to select bash in a modified environment
        scripts: kconfig: nconf: make nconfig accept jk keybindings
        modpost: use fnmatch() to simplify match()
        modpost: simplify mod->name allocation
        kbuild: factor out the common objtool arguments
        kbuild: move vmlinux.o link to scripts/Makefile.vmlinux_o
        kbuild: clean .tmp_* pattern by make clean
        kbuild: remove redundant cleanups in scripts/link-vmlinux.sh
        kbuild: rebuild multi-object modules when objtool is updated
        kbuild: add cmd_and_savecmd macro
        kbuild: make *.mod rule robust against too long argument error
        kbuild: make built-in.a rule robust against too long argument error
        kbuild: check static EXPORT_SYMBOL* by script instead of modpost
        parisc: remove arch/parisc/nm
        kbuild: do not create *.prelink.o for Clang LTO or IBT
        kbuild: replace $(linked-object) with CONFIG options
        kbuild: do not try to parse *.cmd files for objects provided by compiler
        kbuild: replace $(if A,A,B) with $(or A,B) in scripts/Makefile.modpost
        modpost: squash if...else-if in find_elf_symbol2()
        modpost: reuse ARRAY_SIZE() macro for section_mismatch()
        ...
      71e80720