1. 24 May, 2022 15 commits
    • Linus Torvalds's avatar
      Merge tag 'x86_kdump_for_v5.19_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e3228a86
      Linus Torvalds authored
      Pull x86 kdump fixlet from Borislav Petkov:
      
       - A single debug message fix
      
      * tag 'x86_kdump_for_v5.19_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/crash: Fix minor typo/bug in debug message
      e3228a86
    • Linus Torvalds's avatar
      Merge tag 'x86_platform_for_v5.19_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 1abcb10d
      Linus Torvalds authored
      Pull x86 platform updates from Borislav Petkov:
      
       - A couple of changes enabling SGI UV5 support
      
      * tag 'x86_platform_for_v5.19_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/platform/uv: Log gap hole end size
        x86/platform/uv: Update TSC sync state for UV5
        x86/platform/uv: Update NMI Handler for UV5
      1abcb10d
    • Linus Torvalds's avatar
      Merge tag 'x86_mm_for_v5.19_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · c415b53a
      Linus Torvalds authored
      Pull x86 mm fixlet from Borislav Petkov:
      
       - A sparse address space annotation fix
      
      * tag 'x86_mm_for_v5.19_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/fault: Cast an argument to the proper address space in prefetch()
      c415b53a
    • Linus Torvalds's avatar
      Merge tag 'x86_fpu_for_v5.19_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e36ae229
      Linus Torvalds authored
      Pull x86 fpu updates from Borislav Petkov:
      
       - Add support for XSAVEC - the Compacted XSTATE saving variant - and
         thus allow for guests to use this compacted XSTATE variant when the
         hypervisor exports that support
      
       - A variable shadowing cleanup
      
      * tag 'x86_fpu_for_v5.19_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/fpu: Cleanup variable shadowing
        x86/fpu/xsave: Support XSAVEC in the kernel
      e36ae229
    • Linus Torvalds's avatar
      Merge tag 'x86_core_for_v5.19_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · de8ac817
      Linus Torvalds authored
      Pull core x86 updates from Borislav Petkov:
      
       - Remove all the code around GS switching on 32-bit now that it is not
         needed anymore
      
       - Other misc improvements
      
      * tag 'x86_core_for_v5.19_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        bug: Use normal relative pointers in 'struct bug_entry'
        x86/nmi: Make register_nmi_handler() more robust
        x86/asm: Merge load_gs_index()
        x86/32: Remove lazy GS macros
        ELF: Remove elf_core_copy_kernel_regs()
        x86/32: Simplify ELF_CORE_COPY_REGS
      de8ac817
    • Linus Torvalds's avatar
      Merge tag 'x86_cleanups_for_v5.19_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · a13dc4d4
      Linus Torvalds authored
      Pull x86 cleanups from Borislav Petkov:
      
       - Serious sanitization and cleanup of the whole APERF/MPERF and
         frequency invariance code along with removing the need for
         unnecessary IPIs
      
       - Finally remove a.out support
      
       - The usual trivial cleanups and fixes all over x86
      
      * tag 'x86_cleanups_for_v5.19_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (21 commits)
        x86: Remove empty files
        x86/speculation: Add missing srbds=off to the mitigations= help text
        x86/prctl: Remove pointless task argument
        x86/aperfperf: Make it correct on 32bit and UP kernels
        x86/aperfmperf: Integrate the fallback code from show_cpuinfo()
        x86/aperfmperf: Replace arch_freq_get_on_cpu()
        x86/aperfmperf: Replace aperfmperf_get_khz()
        x86/aperfmperf: Store aperf/mperf data for cpu frequency reads
        x86/aperfmperf: Make parts of the frequency invariance code unconditional
        x86/aperfmperf: Restructure arch_scale_freq_tick()
        x86/aperfmperf: Put frequency invariance aperf/mperf data into a struct
        x86/aperfmperf: Untangle Intel and AMD frequency invariance init
        x86/aperfmperf: Separate AP/BP frequency invariance init
        x86/smp: Move APERF/MPERF code where it belongs
        x86/aperfmperf: Dont wake idle CPUs in arch_freq_get_on_cpu()
        x86/process: Fix kernel-doc warning due to a changed function name
        x86: Remove a.out support
        x86/mm: Replace nodes_weight() with nodes_empty() where appropriate
        x86: Replace cpumask_weight() with cpumask_empty() where appropriate
        x86/pkeys: Remove __arch_set_user_pkey_access() declaration
        ...
      a13dc4d4
    • Linus Torvalds's avatar
      Merge tag 'x86_build_for_v5.19_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 1de564b8
      Linus Torvalds authored
      Pull x86 build updates from Borislav Petkov:
      
       - Add a "make x86_debug.config" target which enables a bunch of useful
         config debug options when trying to debug an issue
      
       - A gcc-12 build warnings fix
      
      * tag 'x86_build_for_v5.19_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/boot: Wrap literal addresses in absolute_pointer()
        x86/configs: Add x86 debugging Kconfig fragment plus docs
      1de564b8
    • Linus Torvalds's avatar
      Merge tag 'x86_asm_for_v5.19_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 42b682a3
      Linus Torvalds authored
      Pull x86 asm updates from Borislav Petkov:
      
       - A bunch of changes towards streamlining low level asm helpers'
         calling conventions so that former can be converted to C eventually
      
       - Simplify PUSH_AND_CLEAR_REGS so that it can be used at the system
         call entry paths instead of having opencoded, slightly different
         variants of it everywhere
      
       - Misc other fixes
      
      * tag 'x86_asm_for_v5.19_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/entry: Fix register corruption in compat syscall
        objtool: Fix STACK_FRAME_NON_STANDARD reloc type
        linkage: Fix issue with missing symbol size
        x86/entry: Remove skip_r11rcx
        x86/entry: Use PUSH_AND_CLEAR_REGS for compat
        x86/entry: Simplify entry_INT80_compat()
        x86/mm: Simplify RESERVE_BRK()
        x86/entry: Convert SWAPGS to swapgs and remove the definition of SWAPGS
        x86/entry: Don't call error_entry() for XENPV
        x86/entry: Move CLD to the start of the idtentry macro
        x86/entry: Move PUSH_AND_CLEAR_REGS out of error_entry()
        x86/entry: Switch the stack after error_entry() returns
        x86/traps: Use pt_regs directly in fixup_bad_iret()
      42b682a3
    • Linus Torvalds's avatar
      Merge tag 'x86_cpu_for_v5.19_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · c5a3d3c0
      Linus Torvalds authored
      Pull x86 CPU feature updates from Borislav Petkov:
      
       - Remove a bunch of chicken bit options to turn off CPU features which
         are not really needed anymore
      
       - Misc fixes and cleanups
      
      * tag 'x86_cpu_for_v5.19_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/speculation: Add missing prototype for unpriv_ebpf_notify()
        x86/pm: Fix false positive kmemleak report in msr_build_context()
        x86/speculation/srbds: Do not try to turn mitigation off when not supported
        x86/cpu: Remove "noclflush"
        x86/cpu: Remove "noexec"
        x86/cpu: Remove "nosmep"
        x86/cpu: Remove CONFIG_X86_SMAP and "nosmap"
        x86/cpu: Remove "nosep"
        x86/cpu: Allow feature bit names from /proc/cpuinfo in clearcpuid=
      c5a3d3c0
    • Linus Torvalds's avatar
      Merge tag 'x86_tdx_for_v5.19_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 3a755ebc
      Linus Torvalds authored
      Pull Intel TDX support from Borislav Petkov:
       "Intel Trust Domain Extensions (TDX) support.
      
        This is the Intel version of a confidential computing solution called
        Trust Domain Extensions (TDX). This series adds support to run the
        kernel as part of a TDX guest. It provides similar guest protections
        to AMD's SEV-SNP like guest memory and register state encryption,
        memory integrity protection and a lot more.
      
        Design-wise, it differs from AMD's solution considerably: it uses a
        software module which runs in a special CPU mode called (Secure
        Arbitration Mode) SEAM. As the name suggests, this module serves as
        sort of an arbiter which the confidential guest calls for services it
        needs during its lifetime.
      
        Just like AMD's SNP set, this series reworks and streamlines certain
        parts of x86 arch code so that this feature can be properly
        accomodated"
      
      * tag 'x86_tdx_for_v5.19_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (34 commits)
        x86/tdx: Fix RETs in TDX asm
        x86/tdx: Annotate a noreturn function
        x86/mm: Fix spacing within memory encryption features message
        x86/kaslr: Fix build warning in KASLR code in boot stub
        Documentation/x86: Document TDX kernel architecture
        ACPICA: Avoid cache flush inside virtual machines
        x86/tdx/ioapic: Add shared bit for IOAPIC base address
        x86/mm: Make DMA memory shared for TD guest
        x86/mm/cpa: Add support for TDX shared memory
        x86/tdx: Make pages shared in ioremap()
        x86/topology: Disable CPU online/offline control for TDX guests
        x86/boot: Avoid #VE during boot for TDX platforms
        x86/boot: Set CR0.NE early and keep it set during the boot
        x86/acpi/x86/boot: Add multiprocessor wake-up support
        x86/boot: Add a trampoline for booting APs via firmware handoff
        x86/tdx: Wire up KVM hypercalls
        x86/tdx: Port I/O: Add early boot support
        x86/tdx: Port I/O: Add runtime hypercalls
        x86/boot: Port I/O: Add decompression-time support for TDX
        x86/boot: Port I/O: Allow to hook up alternative helpers
        ...
      3a755ebc
    • Linus Torvalds's avatar
      Merge tag 'ras_core_for_v5.19_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 5b828263
      Linus Torvalds authored
      Pull x86 RAS updates from Borislav Petkov:
      
       - Simplification of the AMD MCE error severity grading logic along with
         supplying critical panic MCEs with accompanying error messages for
         more human-friendly diagnostics.
      
       - Misc fixes
      
      * tag 'ras_core_for_v5.19_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/mce: Add messages for panic errors in AMD's MCE grading
        x86/mce: Simplify AMD severity grading logic
        x86/MCE/AMD: Fix memory leak when threshold_create_bank() fails
        x86/mce: Avoid unnecessary padding in struct mce_bank
      5b828263
    • Linus Torvalds's avatar
      Merge tag 'x86_sev_for_v5.19_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · eb39e37d
      Linus Torvalds authored
      Pull AMD SEV-SNP support from Borislav Petkov:
       "The third AMD confidential computing feature called Secure Nested
        Paging.
      
        Add to confidential guests the necessary memory integrity protection
        against malicious hypervisor-based attacks like data replay, memory
        remapping and others, thus achieving a stronger isolation from the
        hypervisor.
      
        At the core of the functionality is a new structure called a reverse
        map table (RMP) with which the guest has a say in which pages get
        assigned to it and gets notified when a page which it owns, gets
        accessed/modified under the covers so that the guest can take an
        appropriate action.
      
        In addition, add support for the whole machinery needed to launch a
        SNP guest, details of which is properly explained in each patch.
      
        And last but not least, the series refactors and improves parts of the
        previous SEV support so that the new code is accomodated properly and
        not just bolted on"
      
      * tag 'x86_sev_for_v5.19_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (60 commits)
        x86/entry: Fixup objtool/ibt validation
        x86/sev: Mark the code returning to user space as syscall gap
        x86/sev: Annotate stack change in the #VC handler
        x86/sev: Remove duplicated assignment to variable info
        x86/sev: Fix address space sparse warning
        x86/sev: Get the AP jump table address from secrets page
        x86/sev: Add missing __init annotations to SEV init routines
        virt: sevguest: Rename the sevguest dir and files to sev-guest
        virt: sevguest: Change driver name to reflect generic SEV support
        x86/boot: Put globals that are accessed early into the .data section
        x86/boot: Add an efi.h header for the decompressor
        virt: sevguest: Fix bool function returning negative value
        virt: sevguest: Fix return value check in alloc_shared_pages()
        x86/sev-es: Replace open-coded hlt-loop with sev_es_terminate()
        virt: sevguest: Add documentation for SEV-SNP CPUID Enforcement
        virt: sevguest: Add support to get extended report
        virt: sevguest: Add support to derive key
        virt: Add SEV-SNP guest driver
        x86/sev: Register SEV-SNP guest request platform device
        x86/sev: Provide support for SNP guest request NAEs
        ...
      eb39e37d
    • Linus Torvalds's avatar
      Merge tag 'edac_updates_for_v5.19_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/ras/ras · 0be3ff0c
      Linus Torvalds authored
      Pull EDAC updates from Borislav Petkov:
      
       - Switch ghes_edac to use the CPER error reporting routines and
         simplify the code considerably this way
      
       - Rip out the silly edac_align_ptr() contraption which was computing
         the size of the private structures of each driver and thus allowing
         for a one-shot memory allocation. This was clearly unnecessary and
         confusing so switch to simple and boring kmalloc* calls.
      
       - Last but not least, the usual garden variety of fixes, cleanups and
         improvements all over EDAC land
      
      * tag 'edac_updates_for_v5.19_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/ras/ras:
        EDAC/xgene: Fix typo processsors -> processors
        EDAC/i5100: Remove unused inline function i5100_nrecmema_dm_buf_id()
        EDAC: Use kcalloc()
        EDAC/ghes: Change ghes_hw from global to static
        EDAC/armada_xp: Use devm_platform_ioremap_resource()
        EDAC/synopsys: Add a SPDX identifier
        EDAC/synopsys: Add driver support for i.MX platforms
        EDAC/dmc520: Don't print an error for each unconfigured interrupt line
        EDAC/mc: Get rid of edac_align_ptr()
        EDAC/device: Sanitize edac_device_alloc_ctl_info() definition
        EDAC/device: Get rid of the silly one-shot memory allocation in edac_device_alloc_ctl_info()
        EDAC/pci: Get rid of the silly one-shot memory allocation in edac_pci_alloc_ctl_info()
        EDAC/mc: Get rid of silly one-shot struct allocation in edac_mc_alloc()
        efi/cper: Reformat CPER memory error location to more readable
        EDAC/ghes: Unify CPER memory error location reporting
        efi/cper: Add a cper_mem_err_status_str() to decode error description
        powerpc/85xx: Remove fsl,85... bindings
      0be3ff0c
    • Linus Torvalds's avatar
      Merge tag 'x86-irq-2022-05-23' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 03e1ccd4
      Linus Torvalds authored
      Pull x86 PCI irq routing updates from Thomas Gleixner:
      
       - Cleanup and robustify the PCI interrupt routing table handling
         including proper range checks
      
       - Add support for Intel 82378ZB/82379AB, SiS85C497 PIRQ routers
      
       - Fix the ALi M1487 router handling
      
       - Handle the IRT routing table format in AMI BIOSes correctly
      
      * tag 'x86-irq-2022-05-23' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/PCI: Fix coding style in PIRQ table verification
        x86/PCI: Fix ALi M1487 (IBC) PIRQ router link value interpretation
        x86/PCI: Add $IRT PIRQ routing table support
        x86/PCI: Handle PIRQ routing tables with no router device given
        x86/PCI: Add PIRQ routing table range checks
        x86/PCI: Add support for the SiS85C497 PIRQ router
        x86/PCI: Disambiguate SiS85C503 PIRQ router code entities
        x86/PCI: Handle IRQ swizzling with PIRQ routers
        x86/PCI: Also match function number in $PIR table
        x86/PCI: Include function number in $PIR table dump
        x86/PCI: Show the physical address of the $PIR table
      03e1ccd4
    • Linus Torvalds's avatar
      Merge tag 'timers-core-2022-05-23' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 6e01f86f
      Linus Torvalds authored
      Pull timer and timekeeping updates from Thomas Gleixner:
      
       - Expose CLOCK_TAI to instrumentation to aid with TSN debugging.
      
       - Ensure that the clockevent is stopped when there is no timer armed to
         avoid pointless wakeups.
      
       - Make the sched clock frequency handling and rounding consistent.
      
       - Provide a better debugobject hint for delayed works. The timer
         callback is always the same, which makes it difficult to identify the
         underlying work. Use the work function as a hint instead.
      
       - Move the timer specific sysctl code into the timer subsystem.
      
       - The usual set of improvements and cleanups
      
      * tag 'timers-core-2022-05-23' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        timers: Provide a better debugobjects hint for delayed works
        time/sched_clock: Fix formatting of frequency reporting code
        time/sched_clock: Use Hz as the unit for clock rate reporting below 4kHz
        time/sched_clock: Round the frequency reported to nearest rather than down
        timekeeping: Consolidate fast timekeeper
        timekeeping: Annotate ktime_get_boot_fast_ns() with data_race()
        timers/nohz: Switch to ONESHOT_STOPPED in the low-res handler when the tick is stopped
        timekeeping: Introduce fast accessor to clock tai
        tracing/timer: Add missing argument documentation of trace points
        clocksource: Replace cpumask_weight() with cpumask_empty()
        timers: Move timer sysctl into the timer code
        clockevents: Use dedicated list iterator variable
        timers: Simplify calc_index()
        timers: Initialize base::next_expiry_recalc in timers_prepare_cpu()
      6e01f86f
  2. 23 May, 2022 20 commits
    • Linus Torvalds's avatar
      Merge tag 'irq-core-2022-05-23' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · fcfde8a7
      Linus Torvalds authored
      Pull interrupt handling updates from Thomas Gleixner:
       "Core code:
      
         - Make the managed interrupts more robust by shutting them down in
           the core code when the assigned affinity mask does not contain
           online CPUs.
      
         - Make the irq simulator chip work on RT
      
         - A small set of cpumask and power manageent cleanups
      
        Drivers:
      
         - A set of changes which mark GPIO interrupt chips immutable to
           prevent the GPIO subsystem from modifying it under the hood. This
           provides the necessary infrastructure and converts a set of GPIO
           and pinctrl drivers over.
      
         - A set of changes to make the pseudo-NMI handling for GICv3 more
           robust: a missing barrier and consistent handling of the priority
           mask.
      
         - Another set of GICv3 improvements and fixes, but nothing
           outstanding
      
         - The usual set of improvements and cleanups all over the place
      
         - No new irqchip drivers and not even a new device tree binding!
           100+ interrupt chips are truly enough"
      
      * tag 'irq-core-2022-05-23' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (39 commits)
        irqchip: Add Kconfig symbols for sunxi drivers
        irqchip/gic-v3: Fix priority mask handling
        irqchip/gic-v3: Refactor ISB + EOIR at ack time
        irqchip/gic-v3: Ensure pseudo-NMIs have an ISB between ack and handling
        genirq/irq_sim: Make the irq_work always run in hard irq context
        irqchip/armada-370-xp: Do not touch Performance Counter Overflow on A375, A38x, A39x
        irqchip/gic: Improved warning about incorrect type
        irqchip/csky: Return true/false (not 1/0) from bool functions
        irqchip/imx-irqsteer: Add runtime PM support
        irqchip/imx-irqsteer: Constify irq_chip struct
        irqchip/armada-370-xp: Enable MSI affinity configuration
        irqchip/aspeed-scu-ic: Fix irq_of_parse_and_map() return value
        irqchip/aspeed-i2c-ic: Fix irq_of_parse_and_map() return value
        irqchip/sun6i-r: Use NULL for chip_data
        irqchip/xtensa-mx: Fix initial IRQ affinity in non-SMP setup
        irqchip/exiu: Fix acknowledgment of edge triggered interrupts
        irqchip/gic-v3: Claim iomem resources
        dt-bindings: interrupt-controller: arm,gic-v3: Make the v2 compat requirements explicit
        irqchip/gic-v3: Relax polling of GIC{R,D}_CTLR.RWP
        irqchip/gic-v3: Detect LPI invalidation MMIO registers
        ...
      fcfde8a7
    • Linus Torvalds's avatar
      Merge tag 'smp-core-2022-05-23' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 28c8f9fe
      Linus Torvalds authored
      Pull CPU hotplug updates from Thomas Gleixner:
      
       - Initialize the per-CPU structures during early boot so that the state
         is consistent from the very beginning.
      
       - Make the virtualization hotplug state handling more robust and let
         the core bringup CPUs which timed out in an earlier attempt again.
      
       - Make the x86/xen CPU state tracking consistent on a failed online
         attempt, so a consecutive bringup does not fall over the inconsistent
         state.
      
      * tag 'smp-core-2022-05-23' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        cpu/hotplug: Initialise all cpuhp_cpu_state structs earlier
        cpu/hotplug: Allow the CPU in CPU_UP_PREPARE state to be brought up again.
        x86/xen: Allow to retry if cpu_initialize_context() failed.
      28c8f9fe
    • Linus Torvalds's avatar
      Merge tag 'core-debugobjects-2022-05-23' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 985564eb
      Linus Torvalds authored
      Pull debugobjects fixlet from Thomas Gleixner:
       "Trivial licensing cleanup in debugobjects"
      
      * tag 'core-debugobjects-2022-05-23' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        debugobjects: Convert to SPDX license identifier
      985564eb
    • Linus Torvalds's avatar
      Merge tag 'core-core-2022-05-23' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 4b57dccc
      Linus Torvalds authored
      Pull irqpoll update from Thomas Gleixner:
       "A single update for irqpoll:
      
        Ensure that a raised soft interrupt is handled after pulling the
        blk_cpu_iopoll backlog from a unplugged CPU. This prevents that the
        CPU which runs that code reaches idle with soft interrupts pending"
      
      * tag 'core-core-2022-05-23' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        lib/irq_poll: Prevent softirq pending leak in irq_poll_cpu_dead()
      4b57dccc
    • Linus Torvalds's avatar
      Merge tag 'zonefs-5.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/zonefs · 140e40e3
      Linus Torvalds authored
      Pull zonefs updates from Damien Le Moal:
       "This improves zonefs open sequential file accounting and adds
        accounting for active sequential files to allow the user to handle the
        maximum number of active zones of an NVMe ZNS drive.
      
        sysfs attributes for both open and active sequential files are also
        added to facilitate access to this information from applications
        without resorting to inspecting the block device limits"
      
      * tag 'zonefs-5.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/zonefs:
        documentation: zonefs: Document sysfs attributes
        documentation: zonefs: Cleanup the mount options section
        zonefs: Add active seq file accounting
        zonefs: Export open zone resource information through sysfs
        zonefs: Always do seq file write open accounting
        zonefs: Rename super block information fields
        zonefs: Fix management of open zones
        zonefs: Clear inode information flags on inode creation
      140e40e3
    • Linus Torvalds's avatar
      Merge tag 'ata-5.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/libata · 8a32f81a
      Linus Torvalds authored
      Pull ata updates from Damien Le Moal:
       "For this cycle, the libata.force kernel parameter changes stand out.
        Beside that, some small cleanups in various drivers. In more detail:
      
         - Changes to the pata_mpc52xx driver in preparation for powerpc's
           asm/prom.h cleanup, from Christophe.
      
         - Improved ATA command allocation, from John.
      
         - Various small cleanups to the pata_via, pata_sil680, pata_ftide010,
           sata_gemini, ahci_brcm drivers and to libata-core, from Sergey,
           Diego, Ruyi, Mighao and Jiabing.
      
         - Add support for the RZ/G2H SoC to the rcar-sata driver, from Lad.
      
         - AHCI RAID ID cleanup, from Dan.
      
         - Improvement to the libata.force kernel parameter to allow most
           horkage flags to be manually forced for debugging drive issues in
           the field without needing recompiling a kernel, from me"
      
      * tag 'ata-5.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/libata:
        ata: pata_ftide010: Remove unneeded ERROR check before clk_disable_unprepare
        doc: admin-guide: Update libata kernel parameters
        ata: libata-core: Allow forcing most horkage flags
        ata: libata-core: Improve link flags forced settings
        ata: libata-core: Refactor force_tbl definition
        ata: libata-core: cleanup ata_device_blacklist
        ata: simplify the return expression of brcm_ahci_remove
        ata: Make use of the helper function devm_platform_ioremap_resource()
        ata: libata-core: replace "its" with "it is"
        ahci: Add a generic 'controller2' RAID id
        dt-bindings: ata: renesas,rcar-sata: Add r8a774e1 support
        ata: pata_via: fix sloppy typing in via_do_set_mode()
        ata: pata_sil680: fix result type of sil680_sel{dev|reg}()
        ata: libata-core: fix parameter type in ata_xfer_mode2shift()
        libata: Improve ATA queued command allocation
        ata: pata_mpc52xx: Prepare cleanup of powerpc's asm/prom.h
      8a32f81a
    • Linus Torvalds's avatar
      Merge tag 'for-5.19/drivers-2022-05-22' of git://git.kernel.dk/linux-block · 5dc92186
      Linus Torvalds authored
      Pull block driver updates from Jens Axboe:
       "Here are the driver updates queued up for 5.19. This contains:
      
         - NVMe pull requests via Christoph:
             - tighten the PCI presence check (Stefan Roese)
             - fix a potential NULL pointer dereference in an error path (Kyle
               Miller Smith)
             - fix interpretation of the DMRSL field (Tom Yan)
             - relax the data transfer alignment (Keith Busch)
             - verbose error logging improvements (Max Gurtovoy, Chaitanya
               Kulkarni)
             - misc cleanups (Chaitanya Kulkarni, Christoph)
             - set non-mdts limits in nvme_scan_work (Chaitanya Kulkarni)
             - add support for TP4084 - Time-to-Ready Enhancements (Christoph)
      
         - MD pull request via Song:
             - Improve annotation in raid5 code, by Logan Gunthorpe
             - Support MD_BROKEN flag in raid-1/5/10, by Mariusz Tkaczyk
             - Other small fixes/cleanups
      
         - null_blk series making the configfs side much saner (Damien)
      
         - Various minor drbd cleanups and fixes (Haowen, Uladzislau, Jiapeng,
           Arnd, Cai)
      
         - Avoid using the system workqueue (and hence flushing it) in rnbd
           (Jack)
      
         - Avoid using the system workqueue (and hence flushing it) in aoe
           (Tetsuo)
      
         - Series fixing discard_alignment issues in drivers (Christoph)
      
         - Small series fixing drivers poking at disk->part0 for openers
           information (Christoph)
      
         - Series fixing deadlocks in loop (Christoph, Tetsuo)
      
         - Remove loop.h and add SPDX headers (Christoph)
      
         - Various fixes and cleanups (Julia, Xie, Yu)"
      
      * tag 'for-5.19/drivers-2022-05-22' of git://git.kernel.dk/linux-block: (72 commits)
        mtip32xx: fix typo in comment
        nvme: set non-mdts limits in nvme_scan_work
        nvme: add support for TP4084 - Time-to-Ready Enhancements
        nvme: split the enum used for various register constants
        nbd: Fix hung on disconnect request if socket is closed before
        nvme-fabrics: add a request timeout helper
        nvme-pci: harden drive presence detect in nvme_dev_disable()
        nvme-pci: fix a NULL pointer dereference in nvme_alloc_admin_tags
        nvme: mark internal passthru request RQF_QUIET
        nvme: remove unneeded include from constants file
        nvme: add missing status values to verbose logging
        nvme: set dma alignment to dword
        nvme: fix interpretation of DMRSL
        loop: remove most the top-of-file boilerplate comment from the UAPI header
        loop: remove most the top-of-file boilerplate comment
        loop: add a SPDX header
        loop: remove loop.h
        block: null_blk: Improve device creation with configfs
        block: null_blk: Cleanup messages
        block: null_blk: Cleanup device creation and deletion
        ...
      5dc92186
    • Linus Torvalds's avatar
      Merge tag 'for-5.19/block-2022-05-22' of git://git.kernel.dk/linux-block · 115cd471
      Linus Torvalds authored
      Pull block updates from Jens Axboe:
       "Here are the core block changes for 5.19. This contains:
      
         - blk-throttle accounting fix (Laibin)
      
         - Series removing redundant assignments (Michal)
      
         - Expose bio cache via the bio_set, so that DM can use it (Mike)
      
         - Finish off the bio allocation interface cleanups by dealing with
           the weirdest member of the family. bio_kmalloc combines a kmalloc
           for the bio and bio_vecs with a hidden bio_init call and magic
           cleanup semantics (Christoph)
      
         - Clean up the block layer API so that APIs consumed by file systems
           are (almost) only struct block_device based, so that file systems
           don't have to poke into block layer internals like the
           request_queue (Christoph)
      
         - Clean up the blk_execute_rq* API (Christoph)
      
         - Clean up various lose end in the blk-cgroup code to make it easier
           to follow in preparation of reworking the blkcg assignment for bios
           (Christoph)
      
         - Fix use-after-free issues in BFQ when processes with merged queues
           get moved to different cgroups (Jan)
      
         - BFQ fixes (Jan)
      
         - Various fixes and cleanups (Bart, Chengming, Fanjun, Julia, Ming,
           Wolfgang, me)"
      
      * tag 'for-5.19/block-2022-05-22' of git://git.kernel.dk/linux-block: (83 commits)
        blk-mq: fix typo in comment
        bfq: Remove bfq_requeue_request_body()
        bfq: Remove superfluous conversion from RQ_BIC()
        bfq: Allow current waker to defend against a tentative one
        bfq: Relax waker detection for shared queues
        blk-cgroup: delete rcu_read_lock_held() WARN_ON_ONCE()
        blk-throttle: Set BIO_THROTTLED when bio has been throttled
        blk-cgroup: Remove unnecessary rcu_read_lock/unlock()
        blk-cgroup: always terminate io.stat lines
        block, bfq: make bfq_has_work() more accurate
        block, bfq: protect 'bfqd->queued' by 'bfqd->lock'
        block: cleanup the VM accounting in submit_bio
        block: Fix the bio.bi_opf comment
        block: reorder the REQ_ flags
        blk-iocost: combine local_stat and desc_stat to stat
        block: improve the error message from bio_check_eod
        block: allow passing a NULL bdev to bio_alloc_clone/bio_init_clone
        block: remove superfluous calls to blkcg_bio_issue_init
        kthread: unexport kthread_blkcg
        blk-cgroup: cleanup blkcg_maybe_throttle_current
        ...
      115cd471
    • Linus Torvalds's avatar
      Merge tag 'for-5.19/cdrom-2022-05-22' of git://git.kernel.dk/linux-block · f6792c87
      Linus Torvalds authored
      Pull cdrom updates from Jens Axboe:
       "Removal of unused code and documentation updates"
      
      * tag 'for-5.19/cdrom-2022-05-22' of git://git.kernel.dk/linux-block:
        cdrom: remove obsolete TODO list
        block: remove last remaining traces of IDE documentation
        cdrom: mark CDROMGETSPINDOWN/CDROMSETSPINDOWN obsolete
        cdrom: remove the unused driver specific disc change ioctl
        cdrom: make EXPORT_SYMBOL follow exported function
      f6792c87
    • Linus Torvalds's avatar
      Merge tag 'for-5.19/writeback-2022-05-22' of git://git.kernel.dk/linux-block · df1c5d73
      Linus Torvalds authored
      Pull writeback fix from Jens Axboe:
       "A single writeback fix that didn't belong in any other branch,
        correcting the number of skipped pages"
      
      * tag 'for-5.19/writeback-2022-05-22' of git://git.kernel.dk/linux-block:
        fs-writeback: writeback_sb_inodes:Recalculate 'wrote' according skipped pages
      df1c5d73
    • Linus Torvalds's avatar
      Merge tag 'for-5.19/io_uring-passthrough-2022-05-22' of git://git.kernel.dk/linux-block · 9836e93c
      Linus Torvalds authored
      Pull io_uring NVMe command passthrough from Jens Axboe:
       "On top of everything else, this adds support for passthrough for
        io_uring.
      
        The initial feature for this is NVMe passthrough support, which allows
        non-filesystem based IO commands and admin commands.
      
        To support this, io_uring grows support for SQE and CQE members that
        are twice as big, allowing to pass in a full NVMe command without
        having to copy data around. And to complete with more than just a
        single 32-bit value as the output"
      
      * tag 'for-5.19/io_uring-passthrough-2022-05-22' of git://git.kernel.dk/linux-block: (22 commits)
        io_uring: cleanup handling of the two task_work lists
        nvme: enable uring-passthrough for admin commands
        nvme: helper for uring-passthrough checks
        blk-mq: fix passthrough plugging
        nvme: add vectored-io support for uring-cmd
        nvme: wire-up uring-cmd support for io-passthru on char-device.
        nvme: refactor nvme_submit_user_cmd()
        block: wire-up support for passthrough plugging
        fs,io_uring: add infrastructure for uring-cmd
        io_uring: support CQE32 for nop operation
        io_uring: enable CQE32
        io_uring: support CQE32 in /proc info
        io_uring: add tracing for additional CQE32 fields
        io_uring: overflow processing for CQE32
        io_uring: flush completions for CQE32
        io_uring: modify io_get_cqe for CQE32
        io_uring: add CQE32 completion processing
        io_uring: add CQE32 setup processing
        io_uring: change ring size calculation for CQE32
        io_uring: store add. return values for CQE32
        ...
      9836e93c
    • Linus Torvalds's avatar
      Merge tag 'for-5.19/io_uring-net-2022-05-22' of git://git.kernel.dk/linux-block · e1a8fde7
      Linus Torvalds authored
      Pull io_uring 'more data in socket' support from Jens Axboe:
       "To be able to fully utilize the 'poll first' support in the core
        io_uring branch, it's advantageous knowing if the socket was empty
        after a receive. This adds support for that"
      
      * tag 'for-5.19/io_uring-net-2022-05-22' of git://git.kernel.dk/linux-block:
        io_uring: return hint on whether more data is available after receive
        tcp: pass back data left in socket after receive
      e1a8fde7
    • Linus Torvalds's avatar
      Merge tag 'for-5.19/io_uring-socket-2022-05-22' of git://git.kernel.dk/linux-block · 368da430
      Linus Torvalds authored
      Pull io_uring socket() support from Jens Axboe:
       "This adds support for socket(2) for io_uring. This is handy when using
        direct / registered file descriptors with io_uring.
      
        Outside of those two patches, a small series from Dylan on top that
        improves the tracing by providing a text representation of the opcode
        rather than needing to decode this by reading the header file every
        time.
      
        That sits in this branch as it was the last opcode added (until it
        wasn't...)"
      
      * tag 'for-5.19/io_uring-socket-2022-05-22' of git://git.kernel.dk/linux-block:
        io_uring: use the text representation of ops in trace
        io_uring: rename op -> opcode
        io_uring: add io_uring_get_opcode
        io_uring: add type to op enum
        io_uring: add socket(2) support
        net: add __sys_socket_file()
      368da430
    • Linus Torvalds's avatar
      Merge tag 'for-5.19/io_uring-xattr-2022-05-22' of git://git.kernel.dk/linux-block · 09beaff7
      Linus Torvalds authored
      Pull io_uring xattr support from Jens Axboe:
       "Support for the xattr variants"
      
      * tag 'for-5.19/io_uring-xattr-2022-05-22' of git://git.kernel.dk/linux-block:
        io_uring: cleanup error-handling around io_req_complete
        io_uring: fix trace for reduced sqe padding
        io_uring: add fgetxattr and getxattr support
        io_uring: add fsetxattr and setxattr support
        fs: split off do_getxattr from getxattr
        fs: split off setxattr_copy and do_setxattr function from setxattr
      09beaff7
    • Linus Torvalds's avatar
      Merge tag 'for-5.19/io_uring-2022-05-22' of git://git.kernel.dk/linux-block · 3a166bdb
      Linus Torvalds authored
      Pull io_uring updates from Jens Axboe:
       "Here are the main io_uring changes for 5.19. This contains:
      
         - Fixes for sparse type warnings (Christoph, Vasily)
      
         - Support for multi-shot accept (Hao)
      
         - Support for io_uring managed fixed files, rather than always
           needing the applicationt o manage the indices (me)
      
         - Fix for a spurious poll wakeup (Dylan)
      
         - CQE overflow fixes (Dylan)
      
         - Support more types of cancelations (me)
      
         - Support for co-operative task_work signaling, rather than always
           forcing an IPI (me)
      
         - Support for doing poll first when appropriate, rather than always
           attempting a transfer first (me)
      
         - Provided buffer cleanups and support for mapped buffers (me)
      
         - Improve how io_uring handles inflight SCM files (Pavel)
      
         - Speedups for registered files (Pavel, me)
      
         - Organize the completion data in a struct in io_kiocb rather than
           keep it in separate spots (Pavel)
      
         - task_work improvements (Pavel)
      
         - Cleanup and optimize the submission path, in general and for
           handling links (Pavel)
      
         - Speedups for registered resource handling (Pavel)
      
         - Support sparse buffers and file maps (Pavel, me)
      
         - Various fixes and cleanups (Almog, Pavel, me)"
      
      * tag 'for-5.19/io_uring-2022-05-22' of git://git.kernel.dk/linux-block: (111 commits)
        io_uring: fix incorrect __kernel_rwf_t cast
        io_uring: disallow mixed provided buffer group registrations
        io_uring: initialize io_buffer_list head when shared ring is unregistered
        io_uring: add fully sparse buffer registration
        io_uring: use rcu_dereference in io_close
        io_uring: consistently use the EPOLL* defines
        io_uring: make apoll_events a __poll_t
        io_uring: drop a spurious inline on a forward declaration
        io_uring: don't use ERR_PTR for user pointers
        io_uring: use a rwf_t for io_rw.flags
        io_uring: add support for ring mapped supplied buffers
        io_uring: add io_pin_pages() helper
        io_uring: add buffer selection support to IORING_OP_NOP
        io_uring: fix locking state for empty buffer group
        io_uring: implement multishot mode for accept
        io_uring: let fast poll support multishot
        io_uring: add REQ_F_APOLL_MULTISHOT for requests
        io_uring: add IORING_ACCEPT_MULTISHOT for accept
        io_uring: only wake when the correct events are set
        io_uring: avoid io-wq -EAGAIN looping for !IOPOLL
        ...
      3a166bdb
    • Linus Torvalds's avatar
      Merge tag 'rcu.2022.05.19a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu · 1e57930e
      Linus Torvalds authored
      Pull RCU update from Paul McKenney:
      
       - Documentation updates
      
       - Miscellaneous fixes
      
       - Callback-offloading updates, mainly simplifications
      
       - RCU-tasks updates, including some -rt fixups, handling of systems
         with sparse CPU numbering, and a fix for a boot-time race-condition
         failure
      
       - Put SRCU on a memory diet in order to reduce the size of the
         srcu_struct structure
      
       - Torture-test updates fixing some bugs in tests and closing some
         testing holes
      
       - Torture-test updates for the RCU tasks flavors, most notably ensuring
         that building rcutorture and friends does not change the
         RCU-tasks-related Kconfig options
      
       - Torture-test scripting updates
      
       - Expedited grace-period updates, most notably providing
         milliseconds-scale (not all that) soft real-time response from
         synchronize_rcu_expedited().
      
         This is also the first time in almost 30 years of RCU that someone
         other than me has pushed for a reduction in the RCU CPU stall-warning
         timeout, in this case by more than three orders of magnitude from 21
         seconds to 20 milliseconds. This tighter timeout applies only to
         expedited grace periods
      
      * tag 'rcu.2022.05.19a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu: (80 commits)
        rcu: Move expedited grace period (GP) work to RT kthread_worker
        rcu: Introduce CONFIG_RCU_EXP_CPU_STALL_TIMEOUT
        srcu: Drop needless initialization of sdp in srcu_gp_start()
        srcu: Prevent expedited GPs and blocking readers from consuming CPU
        srcu: Add contention check to call_srcu() srcu_data ->lock acquisition
        srcu: Automatically determine size-transition strategy at boot
        rcutorture: Make torture.sh allow for --kasan
        rcutorture: Make torture.sh refscale and rcuscale specify Tasks Trace RCU
        rcutorture: Make kvm.sh allow more memory for --kasan runs
        torture: Save "make allmodconfig" .config file
        scftorture: Remove extraneous "scf" from per_version_boot_params
        rcutorture: Adjust scenarios' Kconfig options for CONFIG_PREEMPT_DYNAMIC
        torture: Enable CSD-lock stall reports for scftorture
        torture: Skip vmlinux check for kvm-again.sh runs
        scftorture: Adjust for TASKS_RCU Kconfig option being selected
        rcuscale: Allow rcuscale without RCU Tasks Rude/Trace
        rcuscale: Allow rcuscale without RCU Tasks
        refscale: Allow refscale without RCU Tasks Rude/Trace
        refscale: Allow refscale without RCU Tasks
        rcutorture: Allow specifying per-scenario stat_interval
        ...
      1e57930e
    • Linus Torvalds's avatar
      Merge tag 'lkmm.2022.05.20a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu · b2f02e9c
      Linus Torvalds authored
      Pull LKMM update from Paul McKenney:
       "This updates the klitmus7 compatibility table to indicate that
        herdtools7 7.56.1 or better is required for Linux kernel v5.17 or
        later"
      
      * tag 'lkmm.2022.05.20a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu:
        tools/memory-model/README: Update klitmus7 compat table
      b2f02e9c
    • Linus Torvalds's avatar
      Merge tag 'nolibc.2022.05.20a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu · f814957b
      Linus Torvalds authored
      Pull nolibc library updates from Paul McKenney:
       "This adds a number of library functions and splits this library into
        multiple files"
      
      * tag 'nolibc.2022.05.20a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu: (61 commits)
        tools/nolibc/string: Implement `strdup()` and `strndup()`
        tools/nolibc/string: Implement `strnlen()`
        tools/nolibc/stdlib: Implement `malloc()`, `calloc()`, `realloc()` and `free()`
        tools/nolibc/types: Implement `offsetof()` and `container_of()` macro
        tools/nolibc/sys: Implement `mmap()` and `munmap()`
        tools/nolibc: i386: Implement syscall with 6 arguments
        tools/nolibc: Remove .global _start from the entry point code
        tools/nolibc: Replace `asm` with `__asm__`
        tools/nolibc: x86-64: Update System V ABI document link
        tools/nolibc/stdlib: only reference the external environ when inlined
        tools/nolibc/string: do not use __builtin_strlen() at -O0
        tools/nolibc: add the nolibc subdir to the common Makefile
        tools/nolibc: add a makefile to install headers
        tools/nolibc/types: add poll() and waitpid() flag definitions
        tools/nolibc/sys: add syscall definition for getppid()
        tools/nolibc/string: add strcmp() and strncmp()
        tools/nolibc/stdio: add support for '%p' to vfprintf()
        tools/nolibc/stdlib: add a simple getenv() implementation
        tools/nolibc/stdio: make printf(%s) accept NULL
        tools/nolibc/stdlib: implement abort()
        ...
      f814957b
    • Linus Torvalds's avatar
      Merge tag 'efi-next-for-v5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi · bf243102
      Linus Torvalds authored
      Pull EFI updates from Ard Biesheuvel:
      
       - Allow runtime services to be re-enabled at boot on RT kernels.
      
       - Provide access to secrets injected into the boot image by CoCo
         hypervisors (COnfidential COmputing)
      
       - Use DXE services on x86 to make the boot image executable after
         relocation, if needed.
      
       - Prefer mirrored memory for randomized allocations.
      
       - Only randomize the placement of the kernel image on arm64 if the
         loader has not already done so.
      
       - Add support for obtaining the boot hartid from EFI on RISC-V.
      
      * tag 'efi-next-for-v5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi:
        riscv/efi_stub: Add support for RISCV_EFI_BOOT_PROTOCOL
        efi: stub: prefer mirrored memory for randomized allocations
        efi/arm64: libstub: run image in place if randomized by the loader
        efi: libstub: pass image handle to handle_kernel_image()
        efi: x86: Set the NX-compatibility flag in the PE header
        efi: libstub: ensure allocated memory to be executable
        efi: libstub: declare DXE services table
        efi: Add missing prototype for efi_capsule_setup_info
        docs: security: Add secrets/coco documentation
        efi: Register efi_secret platform device if EFI secret area is declared
        virt: Add efi_secret module to expose confidential computing secrets
        efi: Save location of EFI confidential computing area
        efi: Allow to enable EFI runtime services by default on RT
      bf243102
    • Borislav Petkov's avatar
      Merge branches 'edac-misc' and 'edac-alloc-cleanup' into edac-updates-for-v5.19 · be80a1ca
      Borislav Petkov authored
      Combine all collected EDAC changes for submission into v5.19:
      
      * edac-misc:
        EDAC/xgene: Fix typo processsors -> processors
        EDAC/i5100: Remove unused inline function i5100_nrecmema_dm_buf_id()
        EDAC/ghes: Change ghes_hw from global to static
        EDAC/armada_xp: Use devm_platform_ioremap_resource()
        EDAC/synopsys: Add a SPDX identifier
        EDAC/synopsys: Add driver support for i.MX platforms
        EDAC/dmc520: Don't print an error for each unconfigured interrupt line
        efi/cper: Reformat CPER memory error location to more readable
        EDAC/ghes: Unify CPER memory error location reporting
        efi/cper: Add a cper_mem_err_status_str() to decode error description
        powerpc/85xx: Remove fsl,85... bindings
      
      * edac-alloc-cleanup:
        EDAC: Use kcalloc()
        EDAC/mc: Get rid of edac_align_ptr()
        EDAC/device: Sanitize edac_device_alloc_ctl_info() definition
        EDAC/device: Get rid of the silly one-shot memory allocation in edac_device_alloc_ctl_info()
        EDAC/pci: Get rid of the silly one-shot memory allocation in edac_pci_alloc_ctl_info()
        EDAC/mc: Get rid of silly one-shot struct allocation in edac_mc_alloc()
      Signed-off-by: default avatarBorislav Petkov <bp@suse.de>
      be80a1ca
  3. 22 May, 2022 4 commits
    • Linus Torvalds's avatar
      Linux 5.18 · 4b0986a3
      Linus Torvalds authored
      4b0986a3
    • David Howells's avatar
      afs: Fix afs_getattr() to refetch file status if callback break occurred · 2aeb8c86
      David Howells authored
      If a callback break occurs (change notification), afs_getattr() needs to
      issue an FS.FetchStatus RPC operation to update the status of the file
      being examined by the stat-family of system calls.
      
      Fix afs_getattr() to do this if AFS_VNODE_CB_PROMISED has been cleared
      on a vnode by a callback break.  Skip this if AT_STATX_DONT_SYNC is set.
      
      This can be tested by appending to a file on one AFS client and then
      using "stat -L" to examine its length on a machine running kafs.  This
      can also be watched through tracing on the kafs machine.  The callback
      break is seen:
      
           kworker/1:1-46      [001] .....   978.910812: afs_cb_call: c=0000005f YFSCB.CallBack
           kworker/1:1-46      [001] ...1.   978.910829: afs_cb_break: 100058:23b4c:242d2c2 b=2 s=1 break-cb
           kworker/1:1-46      [001] .....   978.911062: afs_call_done:    c=0000005f ret=0 ab=0 [0000000082994ead]
      
      And then the stat command generated no traffic if unpatched, but with
      this change a call to fetch the status can be observed:
      
                  stat-4471    [000] .....   986.744122: afs_make_fs_call: c=000000ab 100058:023b4c:242d2c2 YFS.FetchStatus
                  stat-4471    [000] .....   986.745578: afs_call_done:    c=000000ab ret=0 ab=0 [0000000087fc8c84]
      
      Fixes: 08e0e7c8 ("[AF_RXRPC]: Make the in-kernel AFS filesystem use AF_RXRPC.")
      Reported-by: default avatarMarkus Suvanto <markus.suvanto@gmail.com>
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      cc: Marc Dionne <marc.dionne@auristor.com>
      cc: linux-afs@lists.infradead.org
      Tested-by: default avatarMarkus Suvanto <markus.suvanto@gmail.com>
      Tested-by: kafs-testing+fedora34_64checkkafs-build-496@auristor.com
      Link: https://bugzilla.kernel.org/show_bug.cgi?id=216010
      Link: https://lore.kernel.org/r/165308359800.162686.14122417881564420962.stgit@warthog.procyon.org.uk/ # v1
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      2aeb8c86
    • Linus Torvalds's avatar
      Merge branch 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux · 978df3e1
      Linus Torvalds authored
      Pull i2c fixes from Wolfram Sang:
       "Some I2C driver bugfixes for 5.18. Nothing spectacular but worth
        fixing"
      
      * 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
        drivers: i2c: thunderx: Allow driver to work with ACPI defined TWSI controllers
        i2c: ismt: Provide a DMA buffer for Interrupt Cause Logging
        i2c: mt7621: fix missing clk_disable_unprepare() on error in mtk_i2c_probe()
      978df3e1
    • Linus Torvalds's avatar
      Merge tag 'perf-tools-fixes-for-v5.18-2022-05-21' of... · eaea45fc
      Linus Torvalds authored
      Merge tag 'perf-tools-fixes-for-v5.18-2022-05-21' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux
      
      Pull perf tools fixes from Arnaldo Carvalho de Melo:
      
       - Fix and validate CPU map inputs in synthetic PERF_RECORD_STAT events
         in 'perf stat'.
      
       - Fix x86's arch__intr_reg_mask() for the hybrid platform.
      
       - Address 'perf bench numa' compiler error on s390.
      
       - Fix check for btf__load_from_kernel_by_id() in libbpf.
      
       - Fix "all PMU test" 'perf test' to skip hv_24x7/hv_gpci tests on
         powerpc.
      
       - Fix session topology test to skip the test in guest environment.
      
       - Skip BPF 'perf test' if clang is not present.
      
       - Avoid shell test description infinite loop in 'perf test'.
      
       - Fix Intel LBR callstack entries and nr print message.
      
      * tag 'perf-tools-fixes-for-v5.18-2022-05-21' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux:
        perf session: Fix Intel LBR callstack entries and nr print message
        perf test bpf: Skip test if clang is not present
        perf test session topology: Fix test to skip the test in guest environment
        perf bench numa: Address compiler error on s390
        perf test: Avoid shell test description infinite loop
        perf regs x86: Fix arch__intr_reg_mask() for the hybrid platform
        perf test: Fix "all PMU test" to skip hv_24x7/hv_gpci tests on powerpc
        perf stat: Fix and validate CPU map inputs in synthetic PERF_RECORD_STAT events
        perf build: Fix check for btf__load_from_kernel_by_id() in libbpf
      eaea45fc
  4. 21 May, 2022 1 commit