Merge tag 'ata-6.3-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal...
authorLinus Torvalds <torvalds@linux-foundation.org>
Wed, 22 Feb 2023 21:35:51 +0000 (13:35 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 22 Feb 2023 21:35:51 +0000 (13:35 -0800)
Pull ATA updates from Damien Le Moal:

 - Small cleanup of the pata_octeon driver to drop a useless platform
   callback (Uwe)

 - Simplify ata_scsi_cmd_error_handler() code using the fact that
   ap->ops->error_handler is NULL most of the time (Wenchao)

 - Several patches improving libata error handling. This is in
   preparation for supporting the command duration limits (CDL) feature.
   The changes allow handling corner cases of ATA NCQ errors which do
   not happen with regular drives but will be triggered with CDL drives
   (Niklas)

 - Simplify the qc_fill_rtf operation (me)

 - Improve SCSI command translation for REPORT_SUPPORTED_OPERATION_CODES
   command (me)

 - Cleanup of libata FUA handling.

   This falls short of enabling FUA for ATA drives that support it by
   default as there were concerns that old drives would break. The
   series however fixes several issues with the FUA support to ensure
   that FUA is reported as being supported only for drives that can
   handle all possible write cases (NCQ and non-NCQ). A check in the
   block layer is also added to ensure that we never see read FUA
   commands (current behavior) (me)

 - Several patches to move the old PARIDE (parallel port IDE) driver to
   libata as pata_parport. Given that this driver also needs protocol
   modules, the driver code resides in its own pata_parport directoy
   under drivers/ata (Ondrej)

* tag 'ata-6.3-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/libata:
  ata: pata_parport: Fix ida_alloc return value error check
  drivers/block: Move PARIDE protocol modules to drivers/ata/pata_parport
  drivers/block: Remove PARIDE core and high-level protocols
  ata: pata_parport: add driver (PARIDE replacement)
  ata: libata: exclude FUA support for known buggy drives
  ata: libata: Fix FUA handling in ata_build_rw_tf()
  ata: libata: cleanup fua support detection
  ata: libata: Rename and cleanup ata_rwcmd_protocol()
  ata: libata: Introduce ata_ncq_supported()
  block: add a sanity check for non-write flush/fua bios
  ata: libata-scsi: improve ata_scsiop_maint_in()
  ata: libata-scsi: do not overwrite SCSI ML and status bytes
  ata: libata: move NCQ related ATA_DFLAGs
  ata: libata: respect successfully completed commands during errors
  ata: libata: read the shared status for successful NCQ commands once
  ata: libata: simplify qc_fill_rtf port operation interface
  ata: scsi: rename flag ATA_QCFLAG_FAILED to ATA_QCFLAG_EH
  ata: libata-eh: Cleanup ata_scsi_cmd_error_handler()
  ata: octeon: Drop empty platform remove function

1  2 
Documentation/admin-guide/kernel-parameters.txt
MAINTAINERS
block/blk-core.c
drivers/Makefile
drivers/ata/Kconfig
drivers/ata/Makefile
drivers/ata/libata-core.c
drivers/block/Kconfig
drivers/scsi/libsas/sas_ata.c

index fae4cf7e78a6a1e5066cd7ad2d696cbf221b53dc,ebd46bb2e137e4e0e07ff08ac2fd724ddb4b9da3..21b7f87b00fe8341007efa8d058bd413dd0dea9a
        autoconf=       [IPV6]
                        See Documentation/networking/ipv6.rst.
  
 -      show_lapic=     [APIC,X86] Advanced Programmable Interrupt Controller
 -                      Limit apic dumping. The parameter defines the maximal
 -                      number of local apics being dumped. Also it is possible
 -                      to set it to "all" by meaning -- no limit here.
 -                      Format: { 1 (default) | 2 | ... | all }.
 -                      The parameter valid if only apic=debug or
 -                      apic=verbose is specified.
 -                      Example: apic=debug show_lapic=all
 -
        apm=            [APM] Advanced Power Management
                        See header of arch/x86/kernel/apm_32.c.
  
 +      apparmor=       [APPARMOR] Disable or enable AppArmor at boot time
 +                      Format: { "0" | "1" }
 +                      See security/apparmor/Kconfig help text
 +                      0 -- disable.
 +                      1 -- enable.
 +                      Default value is set via kernel config option.
 +
        arcrimi=        [HW,NET] ARCnet - "RIM I" (entirely mem-mapped) cards
                        Format: <io>,<irq>,<nodeID>
  
                        See Documentation/block/cmdline-partition.rst
  
        boot_delay=     Milliseconds to delay each printk during boot.
 -                      Values larger than 10 seconds (10000) are changed to
 -                      no delay (0).
 +                      Only works if CONFIG_BOOT_PRINTK_DELAY is enabled,
 +                      and you may also have to specify "lpj=".  Boot_delay
 +                      values larger than 10 seconds (10000) are assumed
 +                      erroneous and ignored.
                        Format: integer
  
        bootconfig      [KNL]
                        Format: <string>
                        nosocket -- Disable socket memory accounting.
                        nokmem -- Disable kernel memory accounting.
 +                      nobpf -- Disable BPF memory accounting.
  
        checkreqprot=   [SELINUX] Set initial checkreqprot flag value.
                        Format: { "0" | "1" }
                        Sets the size of kernel per-numa memory area for
                        contiguous memory allocations. A value of 0 disables
                        per-numa CMA altogether. And If this option is not
 -                      specificed, the default value is 0.
 +                      specified, the default value is 0.
                        With per-numa CMA enabled, DMA users on node nid will
                        first try to allocate buffer from the pernuma area
                        which is located in node nid, if the allocation fails,
                        driver code when a CPU writes to (or reads from) a
                        random memory location. Note that there exists a class
                        of memory corruptions problems caused by buggy H/W or
 -                      F/W or by drivers badly programing DMA (basically when
 +                      F/W or by drivers badly programming DMA (basically when
                        memory is written at bus level and the CPU MMU is
                        bypassed) which are not detectable by
                        CONFIG_DEBUG_PAGEALLOC, hence this option will not help
                        can be useful when debugging issues that require an SLB
                        miss to occur.
  
 -      stress_slb      [PPC]
 -                      Limits the number of kernel SLB entries, and flushes
 -                      them frequently to increase the rate of SLB faults
 -                      on kernel addresses.
 -
 -      stress_hpt      [PPC]
 -                      Limits the number of kernel HPT entries in the hash
 -                      page table to increase the rate of hash page table
 -                      faults on kernel addresses.
 -
        disable=        [IPV6]
                        See Documentation/networking/ipv6.rst.
  
        disable_radix   [PPC]
                        Disable RADIX MMU mode on POWER9
  
 -      radix_hcall_invalidate=on  [PPC/PSERIES]
 -                      Disable RADIX GTSE feature and use hcall for TLB
 -                      invalidate.
 -
        disable_tlbie   [PPC]
                        Disable TLBIE instruction. Currently does not work
                        with KVM, with HASH MMU, or with coherent accelerators.
                        Documentation/admin-guide/dynamic-debug-howto.rst
                        for details.
  
 -      nopku           [X86] Disable Memory Protection Keys CPU feature found
 -                      in some Intel CPUs.
 -
 -      <module>.async_probe[=<bool>] [KNL]
 -                      If no <bool> value is specified or if the value
 -                      specified is not a valid <bool>, enable asynchronous
 -                      probe on this module.  Otherwise, enable/disable
 -                      asynchronous probe on this module as indicated by the
 -                      <bool> value. See also: module.async_probe
 -
        early_ioremap_debug [KNL]
                        Enable debug messages in early_ioremap support. This
                        is useful for tracking down temporary early mappings
                        boot-time allocation of gigantic hugepages is skipped.
  
        hugetlb_free_vmemmap=
 -                      [KNL] Reguires CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP
 +                      [KNL] Requires CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP
                        enabled.
                        Control if HugeTLB Vmemmap Optimization (HVO) is enabled.
                        Allows heavy hugetlb users to free up some more
                                      which allow the hypervisor to 'idle' the
                                      guest on lock contention.
  
 -      keep_bootcon    [KNL]
 -                      Do not unregister boot console at start. This is only
 -                      useful for debugging when something happens in the window
 -                      between unregistering the boot console and initializing
 -                      the real console.
 -
        i2c_bus=        [HW]    Override the default board specific I2C bus speed
                                or register an additional I2C bus that is not
                                registered from board initialization code.
        js=             [HW,JOY] Analog joystick
                        See Documentation/input/joydev/joystick.rst.
  
 -      nokaslr         [KNL]
 -                      When CONFIG_RANDOMIZE_BASE is set, this disables
 -                      kernel and module base offset ASLR (Address Space
 -                      Layout Randomization).
 -
        kasan_multi_shot
                        [KNL] Enforce KASAN (Kernel Address Sanitizer) to print
                        report on every invalid memory access. Without this
                        parameter KASAN will print report only for the first
                        invalid access.
  
 +      keep_bootcon    [KNL]
 +                      Do not unregister boot console at start. This is only
 +                      useful for debugging when something happens in the window
 +                      between unregistering the boot console and initializing
 +                      the real console.
 +
        keepinitrd      [HW,ARM]
  
        kernelcore=     [KNL,X86,IA-64,PPC]
                        * [no]setxfer: Indicate if transfer speed mode setting
                          should be skipped.
  
+                       * [no]fua: Disable or enable FUA (Force Unit Access)
+                         support for devices supporting this feature.
                        * dump_id: Dump IDENTIFY data.
  
                        * disable: Disable this device.
                        For details see:
                        Documentation/admin-guide/hw-vuln/processor_mmio_stale_data.rst
  
 +      <module>.async_probe[=<bool>] [KNL]
 +                      If no <bool> value is specified or if the value
 +                      specified is not a valid <bool>, enable asynchronous
 +                      probe on this module.  Otherwise, enable/disable
 +                      asynchronous probe on this module as indicated by the
 +                      <bool> value. See also: module.async_probe
 +
        module.async_probe=<bool>
                        [KNL] When set to true, modules will use async probing
                        by default. To enable/disable async probing for a
                        implementation; requires CONFIG_GENERIC_IDLE_POLL_SETUP
                        to be effective. This is useful on platforms where the
                        sleep(SH) or wfi(ARM,ARM64) instructions do not work
 -                      correctly or when doing power measurements to evalute
 +                      correctly or when doing power measurements to evaluate
                        the impact of the sleep instructions. This is also
                        useful when using JTAG debugger.
  
  
        nojitter        [IA-64] Disables jitter checking for ITC timers.
  
 +      nokaslr         [KNL]
 +                      When CONFIG_RANDOMIZE_BASE is set, this disables
 +                      kernel and module base offset ASLR (Address Space
 +                      Layout Randomization).
 +
        no-kvmclock     [X86,KVM] Disable paravirtualized KVM clock driver
  
        no-kvmapf       [X86,KVM] Disable paravirtualized asynchronous page
  
        nopcid          [X86-64] Disable the PCID cpu feature.
  
 +      nopku           [X86] Disable Memory Protection Keys CPU feature found
 +                      in some Intel CPUs.
 +
 +      nopv=           [X86,XEN,KVM,HYPER_V,VMWARE]
 +                      Disables the PV optimizations forcing the guest to run
 +                      as generic guest with no PV drivers. Currently support
 +                      XEN HVM, KVM, HYPER_V and VMWARE guest.
 +
 +      nopvspin        [X86,XEN,KVM]
 +                      Disables the qspinlock slow path using PV optimizations
 +                      which allow the hypervisor to 'idle' the guest on lock
 +                      contention.
 +
        norandmaps      Don't use address space randomization.  Equivalent to
                        echo 0 > /proc/sys/kernel/randomize_va_space
  
  
        pcbit=          [HW,ISDN]
  
-       pcd.            [PARIDE]
-                       See header of drivers/block/paride/pcd.c.
-                       See also Documentation/admin-guide/blockdev/paride.rst.
        pci=option[,option...]  [PCI] various PCI subsystem options.
  
                                Some options herein operate on a specific device
                        for debug and development, but should not be
                        needed on a platform with proper driver support.
  
-       pd.             [PARIDE]
-                       See Documentation/admin-guide/blockdev/paride.rst.
        pdcchassis=     [PARISC,HW] Disable/Enable PDC Chassis Status codes at
                        boot time.
                        Format: { 0 | 1 }
                        allocator.  This parameter is primarily for debugging
                        and performance comparison.
  
-       pf.             [PARIDE]
-                       See Documentation/admin-guide/blockdev/paride.rst.
-       pg.             [PARIDE]
-                       See Documentation/admin-guide/blockdev/paride.rst.
        pirq=           [SMP,APIC] Manual mp-table setup
                        See Documentation/x86/i386/IO-APIC.rst.
  
  
        pstore.backend= Specify the name of the pstore backend to use
  
-       pt.             [PARIDE]
-                       See Documentation/admin-guide/blockdev/paride.rst.
        pti=            [X86-64] Control Page Table Isolation of user and
                        kernel address spaces.  Disabling this feature
                        removes hardening, but improves performance of
  
        r128=           [HW,DRM]
  
 +      radix_hcall_invalidate=on  [PPC/PSERIES]
 +                      Disable RADIX GTSE feature and use hcall for TLB
 +                      invalidate.
 +
        raid=           [HW,RAID]
                        See Documentation/admin-guide/md.rst.
  
                        rcupdate.rcu_cpu_stall_timeout to be used (after
                        conversion from seconds to milliseconds).
  
 +      rcupdate.rcu_cpu_stall_cputime= [KNL]
 +                      Provide statistics on the cputime and count of
 +                      interrupts and tasks during the sampling period. For
 +                      multiple continuous RCU stalls, all sampling periods
 +                      begin at half of the first RCU stall timeout.
 +
 +      rcupdate.rcu_exp_stall_task_details= [KNL]
 +                      Print stack dumps of any tasks blocking the
 +                      current expedited RCU grace period during an
 +                      expedited RCU CPU stall warning.
 +
        rcupdate.rcu_expedited= [KNL]
                        Use expedited grace-period primitives, for
                        example, synchronize_rcu_expedited() instead
        rdt=            [HW,X86,RDT]
                        Turn on/off individual RDT features. List is:
                        cmt, mbmtotal, mbmlocal, l3cat, l3cdp, l2cat, l2cdp,
 -                      mba.
 +                      mba, smba, bmec.
                        E.g. to turn on cmt and turn off mba use:
                                rdt=cmt,!mba
  
                        1 -- enable.
                        Default value is 1.
  
 -      apparmor=       [APPARMOR] Disable or enable AppArmor at boot time
 -                      Format: { "0" | "1" }
 -                      See security/apparmor/Kconfig help text
 -                      0 -- disable.
 -                      1 -- enable.
 -                      Default value is set via kernel config option.
 -
        serialnumber    [BUGS=X86-32]
  
        sev=option[,option...] [X86-64] See Documentation/x86/x86_64/boot-options.rst
        shapers=        [NET]
                        Maximal number of shapers.
  
 +      show_lapic=     [APIC,X86] Advanced Programmable Interrupt Controller
 +                      Limit apic dumping. The parameter defines the maximal
 +                      number of local apics being dumped. Also it is possible
 +                      to set it to "all" by meaning -- no limit here.
 +                      Format: { 1 (default) | 2 | ... | all }.
 +                      The parameter valid if only apic=debug or
 +                      apic=verbose is specified.
 +                      Example: apic=debug show_lapic=all
 +
        simeth=         [IA-64]
        simscsi=
  
                        retpoline,generic - Retpolines
                        retpoline,lfence  - LFENCE; indirect branch
                        retpoline,amd     - alias for retpoline,lfence
 -                      eibrs             - enhanced IBRS
 -                      eibrs,retpoline   - enhanced IBRS + Retpolines
 -                      eibrs,lfence      - enhanced IBRS + LFENCE
 +                      eibrs             - Enhanced/Auto IBRS
 +                      eibrs,retpoline   - Enhanced/Auto IBRS + Retpolines
 +                      eibrs,lfence      - Enhanced/Auto IBRS + LFENCE
                        ibrs              - use IBRS to protect kernel
  
                        Not specifying this option is equivalent to
                        be used to filter out binaries which have
                        not yet been made aware of AT_MINSIGSTKSZ.
  
 +      stress_hpt      [PPC]
 +                      Limits the number of kernel HPT entries in the hash
 +                      page table to increase the rate of hash page table
 +                      faults on kernel addresses.
 +
 +      stress_slb      [PPC]
 +                      Limits the number of kernel SLB entries, and flushes
 +                      them frequently to increase the rate of SLB faults
 +                      on kernel addresses.
 +
        sunrpc.min_resvport=
        sunrpc.max_resvport=
                        [NFS,SUNRPC]
                        that can be enabled or disabled just as if you were
                        to echo the option name into
  
 -                          /sys/kernel/debug/tracing/trace_options
 +                          /sys/kernel/tracing/trace_options
  
                        For example, to enable stacktrace option (to dump the
                        stack trace of each event), add to the command line:
                        [FTRACE] enable this option to disable tracing when a
                        warning is hit. This turns off "tracing_on". Tracing can
                        be enabled again by echoing '1' into the "tracing_on"
 -                      file located in /sys/kernel/debug/tracing/
 +                      file located in /sys/kernel/tracing/
  
                        This option is useful, as it disables the trace before
                        the WARNING dump is called, which prevents the trace to
                        in situations with strict latency requirements (where
                        interruptions from clocksource watchdog are not
                        acceptable).
 +                      [x86] recalibrate: force recalibration against a HW timer
 +                      (HPET or PM timer) on systems whose TSC frequency was
 +                      obtained from HW or FW using either an MSR or CPUID(0x15).
 +                      Warn if the difference is more than 500 ppm.
 +                      [x86] watchdog: Use TSC as the watchdog clocksource with
 +                      which to check other HW timers (HPET or PM timer), but
 +                      only on systems where TSC has been deemed trustworthy.
 +                      This will be suppressed by an earlier tsc=nowatchdog and
 +                      can be overridden by a later tsc=nowatchdog.  A console
 +                      message will flag any such suppression or overriding.
  
        tsc_early_khz=  [X86] Skip early TSC calibration and use the given
                        value instead. Useful when the early TSC frequency discovery
                        functions are at fixed addresses, they make nice
                        targets for exploits that can control RIP.
  
 -                      emulate     [default] Vsyscalls turn into traps and are
 -                                  emulated reasonably safely.  The vsyscall
 -                                  page is readable.
 +                      emulate     Vsyscalls turn into traps and are emulated
 +                                  reasonably safely.  The vsyscall page is
 +                                  readable.
  
 -                      xonly       Vsyscalls turn into traps and are
 +                      xonly       [default] Vsyscalls turn into traps and are
                                    emulated reasonably safely.  The vsyscall
                                    page is not readable.
  
                        fairer and the number of possible event channels is
                        much higher. Default is on (use fifo events).
  
 -      nopv=           [X86,XEN,KVM,HYPER_V,VMWARE]
 -                      Disables the PV optimizations forcing the guest to run
 -                      as generic guest with no PV drivers. Currently support
 -                      XEN HVM, KVM, HYPER_V and VMWARE guest.
 -
 -      nopvspin        [X86,XEN,KVM]
 -                      Disables the qspinlock slow path using PV optimizations
 -                      which allow the hypervisor to 'idle' the guest on lock
 -                      contention.
 -
        xirc2ps_cs=     [NET,PCMCIA]
                        Format:
                        <irq>,<irq_mask>,<io>,<full_duplex>,<do_sound>,<lockup_hack>[,<irq2>[,<irq3>[,<irq4>]]]
                          management firmware translates the requests into actual
                          hardware states (core frequency, data fabric and memory
                          clocks etc.)
 +                      active
 +                        Use amd_pstate_epp driver instance as the scaling driver,
 +                        driver provides a hint to the hardware if software wants
 +                        to bias toward performance (0x0) or energy efficiency (0xff)
 +                        to the CPPC firmware. then CPPC power algorithm will
 +                        calculate the runtime workload and adjust the realtime cores
 +                        frequency.
diff --combined MAINTAINERS
index 82c602f1560f57d95765c1ff40a494a159e15304,d2f1546bf33250437180191a25ab7ec3cea78a79..ac4b759937ebe1231869ece5b213587efe56d6e0
@@@ -361,8 -361,6 +361,8 @@@ T: git git://git.kernel.org/pub/scm/lin
  F:    Documentation/ABI/testing/configfs-acpi
  F:    Documentation/ABI/testing/sysfs-bus-acpi
  F:    Documentation/firmware-guide/acpi/
 +F:    arch/x86/kernel/acpi/
 +F:    arch/x86/pci/acpi.c
  F:    drivers/acpi/
  F:    drivers/pci/*/*acpi*
  F:    drivers/pci/*acpi*
@@@ -385,7 -383,7 +385,7 @@@ ACPI COMPONENT ARCHITECTURE (ACPICA
  M:    Robert Moore <robert.moore@intel.com>
  M:    "Rafael J. Wysocki" <rafael.j.wysocki@intel.com>
  L:    linux-acpi@vger.kernel.org
 -L:    devel@acpica.org
 +L:    acpica-devel@lists.linuxfoundation.org
  S:    Supported
  W:    https://acpica.org/
  W:    https://github.com/acpica/acpica/
@@@ -1099,12 -1097,14 +1099,12 @@@ S:   Maintaine
  F:    drivers/dma/ptdma/
  
  AMD SEATTLE DEVICE TREE SUPPORT
 -M:    Brijesh Singh <brijeshkumar.singh@amd.com>
  M:    Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
  M:    Tom Lendacky <thomas.lendacky@amd.com>
  S:    Supported
  F:    arch/arm64/boot/dts/amd/
  
  AMD XGBE DRIVER
 -M:    Tom Lendacky <thomas.lendacky@amd.com>
  M:    "Shyam Sundar S K" <Shyam-sundar.S-k@amd.com>
  L:    netdev@vger.kernel.org
  S:    Supported
@@@ -1853,6 -1853,21 +1853,6 @@@ F:     include/dt-bindings/reset/actions,
  F:    include/linux/soc/actions/
  N:    owl
  
 -ARM/ADS SPHERE MACHINE SUPPORT
 -M:    Lennert Buytenhek <kernel@wantstofly.org>
 -L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 -S:    Maintained
 -
 -ARM/AFEB9260 MACHINE SUPPORT
 -M:    Sergey Lapin <slapin@ossfans.org>
 -L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 -S:    Maintained
 -
 -ARM/AJECO 1ARM MACHINE SUPPORT
 -M:    Lennert Buytenhek <kernel@wantstofly.org>
 -L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 -S:    Maintained
 -
  ARM/Allwinner SoC Clock Support
  M:    Emilio López <emilio@elopez.com.ar>
  S:    Maintained
@@@ -1873,7 -1888,7 +1873,7 @@@ F:      drivers/pinctrl/sunxi
  F:    drivers/soc/sunxi/
  N:    allwinner
  N:    sun[x456789]i
 -N:    sun50i
 +N:    sun[25]0i
  
  ARM/Amlogic Meson SoC CLOCK FRAMEWORK
  M:    Neil Armstrong <neil.armstrong@linaro.org>
@@@ -2043,6 -2058,11 +2043,6 @@@ F:     arch/arm/boot/dts/ecx-*.dts
  F:    arch/arm/boot/dts/highbank.dts
  F:    arch/arm/mach-highbank/
  
 -ARM/CAVIUM NETWORKS CNS3XXX MACHINE SUPPORT
 -M:    Krzysztof Halasa <khalasa@piap.pl>
 -S:    Maintained
 -F:    arch/arm/mach-cns3xxx/
 -
  ARM/CAVIUM THUNDER NETWORK DRIVER
  M:    Sunil Goutham <sgoutham@marvell.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
@@@ -2071,8 -2091,8 +2071,8 @@@ M:      Hartley Sweeten <hsweeten@visionengr
  M:    Alexander Sverdlin <alexander.sverdlin@gmail.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
 +F:    arch/arm/boot/compressed/misc-ep93xx.h
  F:    arch/arm/mach-ep93xx/
 -F:    arch/arm/mach-ep93xx/include/mach/
  
  ARM/CLKDEV SUPPORT
  M:    Russell King <linux@armlinux.org.uk>
@@@ -2088,6 -2108,11 +2088,6 @@@ S:     Maintaine
  F:    arch/arm/boot/dts/cx92755*
  N:    digicolor
  
 -ARM/CONTEC MICRO9 MACHINE SUPPORT
 -M:    Hubert Feurstein <hubert.feurstein@contec.at>
 -S:    Maintained
 -F:    arch/arm/mach-ep93xx/micro9.c
 -
  ARM/CORESIGHT FRAMEWORK AND DRIVERS
  M:    Mathieu Poirier <mathieu.poirier@linaro.org>
  M:    Suzuki K Poulose <suzuki.poulose@arm.com>
@@@ -2114,6 -2139,10 +2114,6 @@@ F:     tools/perf/arch/arm/util/pmu.
  F:    tools/perf/util/cs-etm-decoder/*
  F:    tools/perf/util/cs-etm.*
  
 -ARM/CORGI MACHINE SUPPORT
 -M:    Richard Purdie <rpurdie@rpsys.net>
 -S:    Maintained
 -
  ARM/CORTINA SYSTEMS GEMINI ARM ARCHITECTURE
  M:    Hans Ulli Kroll <ulli.kroll@googlemail.com>
  M:    Linus Walleij <linus.walleij@linaro.org>
@@@ -2153,6 -2182,12 +2153,6 @@@ F:     include/dt-bindings/bus/moxtet.
  F:    include/linux/armada-37xx-rwtm-mailbox.h
  F:    include/linux/moxtet.h
  
 -ARM/EZX SMARTPHONES (A780, A910, A1200, E680, ROKR E2 and ROKR E6)
 -M:    Robert Jarzmik <robert.jarzmik@free.fr>
 -L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 -S:    Maintained
 -F:    arch/arm/mach-pxa/ezx.c
 -
  ARM/FARADAY FA526 PORT
  M:    Hans Ulli Kroll <ulli.kroll@googlemail.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
@@@ -2178,9 -2213,6 +2178,9 @@@ L:      linux-arm-kernel@lists.infradead.or
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux.git
  X:    drivers/media/i2c/
 +F:    arch/arm64/boot/dts/freescale/
 +X:    arch/arm64/boot/dts/freescale/fsl-*
 +X:    arch/arm64/boot/dts/freescale/qoriq-*
  N:    imx
  N:    mxs
  
@@@ -2205,11 -2237,25 +2205,11 @@@ T:   git git://git.kernel.org/pub/scm/lin
  F:    arch/arm/boot/dts/vf*
  F:    arch/arm/mach-imx/*vf610*
  
 -ARM/GLOMATION GESBC9312SX MACHINE SUPPORT
 -M:    Lennert Buytenhek <kernel@wantstofly.org>
 -L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 -S:    Maintained
 -
  ARM/GUMSTIX MACHINE SUPPORT
  M:    Steve Sakoman <sakoman@gmail.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
  
 -ARM/H4700 (HP IPAQ HX4700) MACHINE SUPPORT
 -M:    Philipp Zabel <philipp.zabel@gmail.com>
 -M:    Paul Parsons <lost.distance@yahoo.com>
 -L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 -S:    Maintained
 -F:    arch/arm/mach-pxa/hx4700.c
 -F:    arch/arm/mach-pxa/include/mach/hx4700.h
 -F:    sound/soc/pxa/hx4700.c
 -
  ARM/HISILICON SOC SUPPORT
  M:    Wei Xu <xuwei5@hisilicon.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
@@@ -2234,16 -2280,13 +2234,16 @@@ ARM/HPE GXP ARCHITECTUR
  M:    Jean-Marie Verdun <verdun@hpe.com>
  M:    Nick Hawkins <nick.hawkins@hpe.com>
  S:    Maintained
 +F:    Documentation/hwmon/gxp-fan-ctrl.rst
  F:    Documentation/devicetree/bindings/arm/hpe,gxp.yaml
 +F:    Documentation/devicetree/bindings/hwmon/hpe,gxp-fan-ctrl.yaml
  F:    Documentation/devicetree/bindings/spi/hpe,gxp-spifi.yaml
  F:    Documentation/devicetree/bindings/timer/hpe,gxp-timer.yaml
  F:    arch/arm/boot/dts/hpe-bmc*
  F:    arch/arm/boot/dts/hpe-gxp*
  F:    arch/arm/mach-hpe/
  F:    drivers/clocksource/timer-gxp.c
 +F:    drivers/hwmon/gxp-fan-ctrl.c
  F:    drivers/spi/spi-gxp.c
  F:    drivers/watchdog/gxp-wdt.c
  
@@@ -2255,6 -2298,27 +2255,6 @@@ L:     linux-arm-kernel@lists.infradead.or
  S:    Maintained
  F:    arch/arm/boot/dts/omap3-igep*
  
 -ARM/INCOME PXA270 SUPPORT
 -M:    Marek Vasut <marek.vasut@gmail.com>
 -L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 -S:    Maintained
 -F:    arch/arm/mach-pxa/colibri-pxa270-income.c
 -
 -ARM/INTEL IOP32X ARM ARCHITECTURE
 -M:    Lennert Buytenhek <kernel@wantstofly.org>
 -L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 -S:    Maintained
 -
 -ARM/INTEL IQ81342EX MACHINE SUPPORT
 -M:    Lennert Buytenhek <kernel@wantstofly.org>
 -L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 -S:    Maintained
 -
 -ARM/INTEL IXDP2850 MACHINE SUPPORT
 -M:    Lennert Buytenhek <kernel@wantstofly.org>
 -L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 -S:    Maintained
 -
  ARM/INTEL IXP4XX ARM ARCHITECTURE
  M:    Linus Walleij <linusw@kernel.org>
  M:    Imre Kaloz <kaloz@openwrt.org>
@@@ -2287,12 -2351,22 +2287,12 @@@ M:   Lennert Buytenhek <kernel@wantstofly
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
  
 -ARM/IP FABRICS DOUBLE ESPRESSO MACHINE SUPPORT
 -M:    Lennert Buytenhek <kernel@wantstofly.org>
 -L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 -S:    Maintained
 -
  ARM/LG1K ARCHITECTURE
  M:    Chanho Min <chanho.min@lge.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
  F:    arch/arm64/boot/dts/lg/
  
 -ARM/LOGICPD PXA270 MACHINE SUPPORT
 -M:    Lennert Buytenhek <kernel@wantstofly.org>
 -L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 -S:    Maintained
 -
  ARM/LPC18XX ARCHITECTURE
  M:    Vladimir Zapolskiy <vz@mleia.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
@@@ -2319,6 -2393,10 +2319,6 @@@ F:     drivers/usb/host/ohci-nxp.
  F:    drivers/watchdog/pnx4008_wdt.c
  N:    lpc32xx
  
 -ARM/MAGICIAN MACHINE SUPPORT
 -M:    Philipp Zabel <philipp.zabel@gmail.com>
 -S:    Maintained
 -
  ARM/Marvell Dove/MV78xx0/Orion SOC support
  M:    Andrew Lunn <andrew@lunn.ch>
  M:    Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
@@@ -2373,14 -2451,11 +2373,14 @@@ F:   drivers/rtc/rtc-mt7622.
  
  ARM/Mediatek SoC support
  M:    Matthias Brugger <matthias.bgg@gmail.com>
 +R:    AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
 +L:    linux-kernel@vger.kernel.org
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  L:    linux-mediatek@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
  W:    https://mtk.wiki.kernel.org/
 -C:    irc://chat.freenode.net/linux-mediatek
 +C:    irc://irc.libera.chat/linux-mediatek
 +F:    arch/arm/boot/dts/mt2*
  F:    arch/arm/boot/dts/mt6*
  F:    arch/arm/boot/dts/mt7*
  F:    arch/arm/boot/dts/mt8*
@@@ -2388,7 -2463,7 +2388,7 @@@ F:      arch/arm/mach-mediatek
  F:    arch/arm64/boot/dts/mediatek/
  F:    drivers/soc/mediatek/
  N:    mtk
 -N:    mt[678]
 +N:    mt[2678]
  K:    mediatek
  
  ARM/Mediatek USB3 PHY DRIVER
@@@ -2450,6 -2525,12 +2450,6 @@@ F:     arch/arm/boot/dts/milbeaut
  F:    arch/arm/mach-milbeaut/
  N:    milbeaut
  
 -ARM/MIOA701 MACHINE SUPPORT
 -M:    Robert Jarzmik <robert.jarzmik@free.fr>
 -L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 -S:    Maintained
 -F:    arch/arm/mach-pxa/mioa701.c
 -
  ARM/MStar/Sigmastar Armv7 SoC support
  M:    Daniel Palmer <daniel@thingy.jp>
  M:    Romain Perier <romain.perier@gmail.com>
@@@ -2470,6 -2551,10 +2470,6 @@@ F:     drivers/watchdog/msc313e_wdt.
  F:    include/dt-bindings/clock/mstar-*
  F:    include/dt-bindings/gpio/msc313-gpio.h
  
 -ARM/NEC MOBILEPRO 900/c MACHINE SUPPORT
 -M:    Michael Petchkovsky <mkpetch@internode.on.net>
 -S:    Maintained
 -
  ARM/NOMADIK/Ux500 ARCHITECTURES
  M:    Linus Walleij <linus.walleij@linaro.org>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
@@@ -2525,7 -2610,6 +2525,7 @@@ S:      Maintaine
  W:    https://github.com/neuschaefer/wpcm450/wiki
  F:    Documentation/devicetree/bindings/*/*wpcm*
  F:    arch/arm/boot/dts/nuvoton-wpcm450*
 +F:    arch/arm/configs/wpcm450_defconfig
  F:    arch/arm/mach-npcm/wpcm450.c
  F:    drivers/*/*/*wpcm*
  F:    drivers/*/*wpcm*
@@@ -2539,6 -2623,13 +2539,6 @@@ L:     linux-arm-kernel@lists.infradead.or
  S:    Maintained
  F:    arch/arm64/boot/dts/freescale/s32g*.dts*
  
 -ARM/OPENMOKO NEO FREERUNNER (GTA02) MACHINE SUPPORT
 -L:    openmoko-kernel@lists.openmoko.org (subscribers-only)
 -S:    Orphan
 -W:    http://wiki.openmoko.org/wiki/Neo_FreeRunner
 -F:    arch/arm/mach-s3c/gta02.h
 -F:    arch/arm/mach-s3c/mach-gta02.c
 -
  ARM/Orion SoC/Technologic Systems TS-78xx platform support
  M:    Alexander Clouter <alex@digriz.org.uk>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
@@@ -2556,6 -2647,43 +2556,6 @@@ F:     arch/arm/mach-oxnas
  F:    drivers/power/reset/oxnas-restart.c
  N:    oxnas
  
 -ARM/PALM TREO SUPPORT
 -L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 -S:    Orphan
 -F:    arch/arm/mach-pxa/palmtreo.*
 -
 -ARM/PALMTX,PALMT5,PALMLD,PALMTE2,PALMTC SUPPORT
 -M:    Marek Vasut <marek.vasut@gmail.com>
 -L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 -S:    Maintained
 -W:    http://hackndev.com
 -F:    arch/arm/mach-pxa/include/mach/palmld.h
 -F:    arch/arm/mach-pxa/include/mach/palmtc.h
 -F:    arch/arm/mach-pxa/include/mach/palmtx.h
 -F:    arch/arm/mach-pxa/palmld.c
 -F:    arch/arm/mach-pxa/palmt5.*
 -F:    arch/arm/mach-pxa/palmtc.c
 -F:    arch/arm/mach-pxa/palmte2.*
 -F:    arch/arm/mach-pxa/palmtx.c
 -
 -ARM/PALMZ72 SUPPORT
 -M:    Sergey Lapin <slapin@ossfans.org>
 -L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 -S:    Maintained
 -W:    http://hackndev.com
 -F:    arch/arm/mach-pxa/palmz72.*
 -
 -ARM/PLEB SUPPORT
 -M:    Peter Chubb <pleb@gelato.unsw.edu.au>
 -S:    Maintained
 -W:    http://www.disy.cse.unsw.edu.au/Hardware/PLEB
 -
 -ARM/PT DIGITAL BOARD PORT
 -M:    Stefan Eletzhofer <stefan.eletzhofer@eletztrick.de>
 -L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 -S:    Maintained
 -W:    http://www.armlinux.org.uk/
 -
  ARM/QUALCOMM SUPPORT
  M:    Andy Gross <agross@kernel.org>
  M:    Bjorn Andersson <andersson@kernel.org>
@@@ -2599,6 -2727,11 +2599,6 @@@ F:     include/dt-bindings/*/qcom
  F:    include/linux/*/qcom*
  F:    include/linux/soc/qcom/
  
 -ARM/RADISYS ENP2611 MACHINE SUPPORT
 -M:    Lennert Buytenhek <kernel@wantstofly.org>
 -L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 -S:    Maintained
 -
  ARM/RDA MICRO ARCHITECTURE
  M:    Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
@@@ -2674,7 -2807,7 +2674,7 @@@ F:      Documentation/devicetree/bindings/i2
  F:    Documentation/devicetree/bindings/mmc/rockchip-dw-mshc.yaml
  F:    Documentation/devicetree/bindings/spi/spi-rockchip.yaml
  F:    arch/arm/boot/dts/rk3*
 -F:    arch/arm/boot/dts/rv1108*
 +F:    arch/arm/boot/dts/rv11*
  F:    arch/arm/mach-rockchip/
  F:    drivers/*/*/*rockchip*
  F:    drivers/*/*rockchip*
@@@ -2719,6 -2852,7 +2719,6 @@@ F:      include/linux/platform_data/*s3c
  F:    include/linux/serial_s3c.h
  F:    include/linux/soc/samsung/
  N:    exynos
 -N:    s3c2410
  N:    s3c64xx
  N:    s5pv210
  
@@@ -2791,7 -2925,6 +2791,7 @@@ M:      Patrice Chotard <patrice.chotard@fos
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
  W:    http://www.stlinux.com
 +F:    Documentation/devicetree/bindings/spi/st,ssc-spi.yaml
  F:    Documentation/devicetree/bindings/i2c/i2c-st.txt
  F:    arch/arm/boot/dts/sti*
  F:    arch/arm/mach-sti/
@@@ -2877,7 -3010,7 +2877,7 @@@ M:      linux-fsd@tesla.co
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  L:    linux-samsung-soc@vger.kernel.org
  S:    Maintained
 -F:    arch/arm64/boot/dts/tesla*
 +F:    arch/arm64/boot/dts/tesla/
  
  ARM/TETON BGA MACHINE SUPPORT
  M:    "Mark F. Brown" <mark.brown314@gmail.com>
@@@ -2930,6 -3063,16 +2930,6 @@@ F:     arch/arm64/boot/dts/ti/Makefil
  F:    arch/arm64/boot/dts/ti/k3-*
  F:    include/dt-bindings/pinctrl/k3.h
  
 -ARM/THECUS N2100 MACHINE SUPPORT
 -M:    Lennert Buytenhek <kernel@wantstofly.org>
 -L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 -S:    Maintained
 -
 -ARM/TOSA MACHINE SUPPORT
 -M:    Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
 -M:    Dirk Opfer <dirk@opfer-online.de>
 -S:    Maintained
 -
  ARM/TOSHIBA VISCONTI ARCHITECTURE
  M:    Nobuhiro Iwamatsu <nobuhiro1.iwamatsu@toshiba.co.jp>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
@@@ -2986,7 -3129,7 +2986,7 @@@ S:      Maintaine
  F:    */*/*/vexpress*
  F:    */*/vexpress*
  F:    arch/arm/boot/dts/vexpress*
 -F:    arch/arm/mach-vexpress/
 +F:    arch/arm/mach-versatile/
  F:    arch/arm64/boot/dts/arm/
  F:    drivers/clk/versatile/clk-vexpress-osc.c
  F:    drivers/clocksource/timer-versatile.c
@@@ -2999,6 -3142,13 +2999,6 @@@ S:     Maintaine
  W:    http://www.armlinux.org.uk/
  F:    arch/arm/vfp/
  
 -ARM/VOIPAC PXA270 SUPPORT
 -M:    Marek Vasut <marek.vasut@gmail.com>
 -L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 -S:    Maintained
 -F:    arch/arm/mach-pxa/include/mach/vpac270.h
 -F:    arch/arm/mach-pxa/vpac270.c
 -
  ARM/VT8500 ARM ARCHITECTURE
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Orphan
@@@ -3016,6 -3166,13 +3016,6 @@@ F:     drivers/video/fbdev/vt8500lcdfb.
  F:    drivers/video/fbdev/wm8505fb*
  F:    drivers/video/fbdev/wmt_ge_rops.*
  
 -ARM/ZIPIT Z2 SUPPORT
 -M:    Marek Vasut <marek.vasut@gmail.com>
 -L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 -S:    Maintained
 -F:    arch/arm/mach-pxa/include/mach/z2.h
 -F:    arch/arm/mach-pxa/z2.c
 -
  ARM/ZYNQ ARCHITECTURE
  M:    Michal Simek <michal.simek@xilinx.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
@@@ -3153,7 -3310,7 +3153,7 @@@ ASPEED CRYPTO DRIVE
  M:    Neal Liu <neal_liu@aspeedtech.com>
  L:    linux-aspeed@lists.ozlabs.org (moderated for non-subscribers)
  S:    Maintained
 -F:    Documentation/devicetree/bindings/crypto/aspeed,ast2500-hace.yaml
 +F:    Documentation/devicetree/bindings/crypto/aspeed,*
  F:    drivers/crypto/aspeed/
  
  ASUS NOTEBOOKS AND EEEPC ACPI/WMI EXTRAS DRIVERS
@@@ -3354,7 -3511,7 +3354,7 @@@ F:      drivers/net/ieee802154/atusb.
  AUDIT SUBSYSTEM
  M:    Paul Moore <paul@paul-moore.com>
  M:    Eric Paris <eparis@redhat.com>
 -L:    linux-audit@redhat.com (moderated for non-subscribers)
 +L:    audit@vger.kernel.org
  S:    Supported
  W:    https://github.com/linux-audit
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/audit.git
@@@ -3610,6 -3767,7 +3610,6 @@@ F:      net/bluetooth
  
  BONDING DRIVER
  M:    Jay Vosburgh <j.vosburgh@gmail.com>
 -M:    Veaceslav Falico <vfalico@gmail.com>
  M:    Andy Gospodarek <andy@greyhouse.net>
  L:    netdev@vger.kernel.org
  S:    Supported
@@@ -3862,13 -4020,6 +3862,13 @@@ L:    bpf@vger.kernel.or
  S:    Maintained
  F:    tools/testing/selftests/bpf/
  
 +BPF [DOCUMENTATION] (Related to Standardization)
 +R:    David Vernet <void@manifault.com>
 +L:    bpf@vger.kernel.org
 +L:    bpf@ietf.org
 +S:    Maintained
 +F:    Documentation/bpf/instruction-set.rst
 +
  BPF [MISC]
  L:    bpf@vger.kernel.org
  S:    Odd Fixes
@@@ -4148,17 -4299,6 +4148,17 @@@ L:    linux-kernel@vger.kernel.or
  S:    Maintained
  F:    drivers/phy/broadcom/phy-brcm-usb*
  
 +BROADCOM Broadband SoC High Speed SPI Controller DRIVER
 +M:    William Zhang <william.zhang@broadcom.com>
 +M:    Kursad Oney <kursad.oney@broadcom.com>
 +M:    Jonas Gorski <jonas.gorski@gmail.com>
 +R:    Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
 +L:    linux-spi@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/spi/brcm,bcm63xx-hsspi.yaml
 +F:    drivers/spi/spi-bcm63xx-hsspi.c
 +F:    drivers/spi/spi-bcmbca-hsspi.c
 +
  BROADCOM ETHERNET PHY DRIVERS
  M:    Florian Fainelli <f.fainelli@gmail.com>
  R:    Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
@@@ -4664,11 -4804,12 +4664,11 @@@ F:   net/sched/sch_etf.
  F:    net/sched/sch_taprio.c
  
  CC2520 IEEE-802.15.4 RADIO DRIVER
 -M:    Varka Bhadram <varkabhadram@gmail.com>
 +M:    Stefan Schmidt <stefan@datenfreihafen.org>
  L:    linux-wpan@vger.kernel.org
 -S:    Maintained
 +S:    Odd Fixes
  F:    Documentation/devicetree/bindings/net/ieee802154/cc2520.txt
  F:    drivers/net/ieee802154/cc2520.c
 -F:    include/linux/spi/cc2520.h
  
  CCREE ARM TRUSTZONE CRYPTOCELL REE DRIVER
  M:    Gilad Ben-Yossef <gilad@benyossef.com>
@@@ -4844,13 -4985,6 +4844,13 @@@ S:    Maintaine
  F:    Documentation/devicetree/bindings/sound/google,cros-ec-codec.yaml
  F:    sound/soc/codecs/cros_ec_codec.*
  
 +CHROMEOS EC UART DRIVER
 +M:    Bhanu Prakash Maiya <bhanumaiya@chromium.org>
 +R:    Benson Leung <bleung@chromium.org>
 +R:    Tzung-Bi Shih <tzungbi@kernel.org>
 +S:    Maintained
 +F:    drivers/platform/chrome/cros_ec_uart.c
 +
  CHROMEOS EC SUBDRIVERS
  M:    Benson Leung <bleung@chromium.org>
  R:    Guenter Roeck <groeck@chromium.org>
@@@ -4864,9 -4998,8 +4864,9 @@@ CHROMEOS EC USB TYPE-C DRIVE
  M:    Prashant Malani <pmalani@chromium.org>
  L:    chrome-platform@lists.linux.dev
  S:    Maintained
 -F:    drivers/platform/chrome/cros_ec_typec.c
 +F:    drivers/platform/chrome/cros_ec_typec.*
  F:    drivers/platform/chrome/cros_typec_switch.c
 +F:    drivers/platform/chrome/cros_typec_vdm.*
  
  CHROMEOS EC USB PD NOTIFY DRIVER
  M:    Prashant Malani <pmalani@chromium.org>
@@@ -5794,6 -5927,7 +5794,6 @@@ F:      Documentation/ABI/testing/sysfs-plat
  F:    drivers/platform/x86/dell/dell-wmi-ddv.c
  
  DELL WMI SYSMAN DRIVER
 -M:    Divya Bharathi <divya.bharathi@dell.com>
  M:    Prasanth Ksr <prasanth.ksr@dell.com>
  L:    Dell.Client.Kernel@dell.com
  L:    platform-driver-x86@vger.kernel.org
@@@ -5965,7 -6099,7 +5965,7 @@@ S:      Supporte
  F:    Documentation/networking/devlink
  F:    include/net/devlink.h
  F:    include/uapi/linux/devlink.h
 -F:    net/core/devlink.c
 +F:    net/devlink/
  
  DH ELECTRONICS IMX6 DHCOM/DHCOR BOARD SUPPORT
  M:    Christoph Niedermaier <cniedermaier@dh-electronics.com>
@@@ -6288,7 -6422,6 +6288,7 @@@ T:      git git://git.linbit.com/linux-drbd.
  T:    git git://git.linbit.com/drbd-8.4.git
  F:    Documentation/admin-guide/blockdev/
  F:    drivers/block/drbd/
 +F:    include/linux/drbd*
  F:    lib/lru_cache.c
  
  DRIVER COMPONENT FRAMEWORK
@@@ -6815,7 -6948,7 +6815,7 @@@ F:      drivers/gpu/drm/atmel-hlcdc
  DRM DRIVERS FOR BRIDGE CHIPS
  M:    Andrzej Hajda <andrzej.hajda@intel.com>
  M:    Neil Armstrong <neil.armstrong@linaro.org>
 -M:    Robert Foss <robert.foss@linaro.org>
 +M:    Robert Foss <rfoss@kernel.org>
  R:    Laurent Pinchart <Laurent.pinchart@ideasonboard.com>
  R:    Jonas Karlman <jonas@kwiboo.se>
  R:    Jernej Skrabec <jernej.skrabec@gmail.com>
@@@ -7483,6 -7616,7 +7483,6 @@@ S:      Maintaine
  F:    drivers/firmware/efi/test/
  
  EFI VARIABLE FILESYSTEM
 -M:    Matthew Garrett <matthew.garrett@nebula.com>
  M:    Jeremy Kerr <jk@ozlabs.org>
  M:    Ard Biesheuvel <ardb@kernel.org>
  L:    linux-efi@vger.kernel.org
@@@ -7611,7 -7745,6 +7611,7 @@@ R:      Jeffle Xu <jefflexu@linux.alibaba.co
  L:    linux-erofs@lists.ozlabs.org
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs.git
 +F:    Documentation/ABI/testing/sysfs-fs-erofs
  F:    Documentation/filesystems/erofs.rst
  F:    fs/erofs/
  F:    include/trace/events/erofs.h
@@@ -7762,11 -7895,7 +7762,11 @@@ F:    include/linux/extcon
  
  EXTRA BOOT CONFIG
  M:    Masami Hiramatsu <mhiramat@kernel.org>
 +L:    linux-kernel@vger.kernel.org
 +L:    linux-trace-kernel@vger.kernel.org
 +Q:    https://patchwork.kernel.org/project/linux-trace-kernel/list/
  S:    Maintained
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace.git
  F:    Documentation/admin-guide/bootconfig.rst
  F:    fs/proc/bootconfig.c
  F:    include/linux/bootconfig.h
@@@ -8067,7 -8196,7 +8067,7 @@@ F:      drivers/fpga/microchip-spi.
  FPU EMULATOR
  M:    Bill Metzenthen <billm@melbpc.org.au>
  S:    Maintained
 -W:    http://floatingpoint.sourceforge.net/emulator/index.html
 +W:    https://floatingpoint.billm.au/
  F:    arch/x86/math-emu/
  
  FRAMEBUFFER CORE
@@@ -8339,16 -8468,16 +8339,16 @@@ F:   fs/fscache
  F:    include/linux/fscache*.h
  
  FSCRYPT: FILE SYSTEM LEVEL ENCRYPTION SUPPORT
 +M:    Eric Biggers <ebiggers@kernel.org>
  M:    Theodore Y. Ts'o <tytso@mit.edu>
  M:    Jaegeuk Kim <jaegeuk@kernel.org>
 -M:    Eric Biggers <ebiggers@kernel.org>
  L:    linux-fscrypt@vger.kernel.org
  S:    Supported
  Q:    https://patchwork.kernel.org/project/linux-fscrypt/list/
 -T:    git git://git.kernel.org/pub/scm/fs/fscrypt/fscrypt.git
 +T:    git https://git.kernel.org/pub/scm/fs/fscrypt/linux.git
  F:    Documentation/filesystems/fscrypt.rst
  F:    fs/crypto/
 -F:    include/linux/fscrypt*.h
 +F:    include/linux/fscrypt.h
  F:    include/uapi/linux/fscrypt.h
  
  FSI SUBSYSTEM
@@@ -8391,10 -8520,10 +8391,10 @@@ F:   include/linux/fsnotify*.
  FSVERITY: READ-ONLY FILE-BASED AUTHENTICITY PROTECTION
  M:    Eric Biggers <ebiggers@kernel.org>
  M:    Theodore Y. Ts'o <tytso@mit.edu>
 -L:    linux-fscrypt@vger.kernel.org
 +L:    fsverity@lists.linux.dev
  S:    Supported
 -Q:    https://patchwork.kernel.org/project/linux-fscrypt/list/
 -T:    git git://git.kernel.org/pub/scm/fs/fscrypt/fscrypt.git fsverity
 +Q:    https://patchwork.kernel.org/project/fsverity/list/
 +T:    git https://git.kernel.org/pub/scm/fs/fsverity/linux.git
  F:    Documentation/filesystems/fsverity.rst
  F:    fs/verity/
  F:    include/linux/fsverity.h
@@@ -8442,7 -8571,6 +8442,7 @@@ F:      kernel/trace/fgraph.
  F:    arch/*/*/*/*ftrace*
  F:    arch/*/*/*ftrace*
  F:    include/*/ftrace.h
 +F:    samples/ftrace
  
  FUNGIBLE ETHERNET DRIVERS
  M:    Dimitris Michailidis <dmichail@fungible.com>
@@@ -9072,12 -9200,9 +9072,12 @@@ M:    Benjamin Tissoires <benjamin.tissoir
  L:    linux-input@vger.kernel.org
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid.git
 +F:    Documentation/hid/
  F:    drivers/hid/
  F:    include/linux/hid*
  F:    include/uapi/linux/hid*
 +F:    samples/hid/
 +F:    tools/testing/selftests/hid/
  
  HID LOGITECH DRIVERS
  R:    Filipe Laíns <lains@riseup.net>
@@@ -9085,13 -9210,6 +9085,13 @@@ L:    linux-input@vger.kernel.or
  S:    Maintained
  F:    drivers/hid/hid-logitech-*
  
 +HID++ LOGITECH DRIVERS
 +R:    Filipe Laíns <lains@riseup.net>
 +R:    Bastien Nocera <hadess@hadess.net>
 +L:    linux-input@vger.kernel.org
 +S:    Maintained
 +F:    drivers/hid/hid-logitech-hidpp.c
 +
  HID PLAYSTATION DRIVER
  M:    Roderick Colenbrander <roderick.colenbrander@sony.com>
  L:    linux-input@vger.kernel.org
@@@ -9181,7 -9299,7 +9181,7 @@@ F:      net/dsa/tag_hellcreek.
  
  HISILICON DMA DRIVER
  M:    Zhou Wang <wangzhou1@hisilicon.com>
 -M:    Jie Hai <haijie1@hisilicon.com>
 +M:    Jie Hai <haijie1@huawei.com>
  L:    dmaengine@vger.kernel.org
  S:    Maintained
  F:    drivers/dma/hisi_dma.c
@@@ -9871,7 -9989,7 +9871,7 @@@ S:      Maintaine
  T:    git://git.kernel.org/pub/scm/linux/kernel/git/vfs/idmapping.git
  F:    Documentation/filesystems/idmappings.rst
  F:    tools/testing/selftests/mount_setattr/
 -F:    include/linux/mnt_idmapping.h
 +F:    include/linux/mnt_idmapping.*
  
  IDT VersaClock 5 CLOCK DRIVER
  M:    Luca Ceresoli <luca@lucaceresoli.net>
@@@ -9882,7 -10000,6 +9882,7 @@@ F:     drivers/clk/clk-versaclock5.
  IEEE 802.15.4 SUBSYSTEM
  M:    Alexander Aring <alex.aring@gmail.com>
  M:    Stefan Schmidt <stefan@datenfreihafen.org>
 +M:    Miquel Raynal <miquel.raynal@bootlin.com>
  L:    linux-wpan@vger.kernel.org
  S:    Maintained
  W:    https://linux-wpan.org/
@@@ -10042,13 -10159,6 +10042,13 @@@ L: linux-iio@vger.kernel.or
  S:    Maintained
  F:    drivers/iio/pressure/dps310.c
  
 +INFINEON PEB2466 ASoC CODEC
 +M:    Herve Codina <herve.codina@bootlin.com>
 +L:    alsa-devel@alsa-project.org (moderated for non-subscribers)
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/sound/infineon,peb2466.yaml
 +F:    sound/soc/codecs/peb2466.c
 +
  INFINIBAND SUBSYSTEM
  M:    Jason Gunthorpe <jgg@nvidia.com>
  M:    Leon Romanovsky <leonro@nvidia.com>
@@@ -10573,13 -10683,6 +10573,13 @@@ S: Maintaine
  F:    arch/x86/include/asm/intel_telemetry.h
  F:    drivers/platform/x86/intel/telemetry/
  
 +INTEL TPMI DRIVER
 +M:    Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
 +L:    platform-driver-x86@vger.kernel.org
 +S:    Maintained
 +F:    drivers/platform/x86/intel/tpmi.c
 +F:    include/linux/intel_tpmi.h
 +
  INTEL UNCORE FREQUENCY CONTROL
  M:    Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
  L:    platform-driver-x86@vger.kernel.org
@@@ -10817,13 -10920,6 +10817,13 @@@ M: David Sterba <dsterba@suse.com
  S:    Odd Fixes
  F:    drivers/tty/ipwireless/
  
 +IRON DEVICE AUDIO CODEC DRIVERS
 +M:    Kiseok Jo <kiseok.jo@irondevice.com>
 +L:    alsa-devel@alsa-project.org (moderated for non-subscribers)
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/sound/irondevice,*
 +F:    sound/soc/codecs/sma*
 +
  IRQ DOMAINS (IRQ NUMBER MAPPING LIBRARY)
  M:    Marc Zyngier <maz@kernel.org>
  S:    Maintained
@@@ -10839,8 -10935,6 +10839,8 @@@ L:   linux-kernel@vger.kernel.or
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git irq/core
  F:    kernel/irq/
 +F:    include/linux/group_cpus.h
 +F:    lib/group_cpus.c
  
  IRQCHIP DRIVERS
  M:    Thomas Gleixner <tglx@linutronix.de>
@@@ -11262,9 -11356,9 +11262,9 @@@ F:   virt/kvm/
  KERNEL VIRTUAL MACHINE FOR ARM64 (KVM/arm64)
  M:    Marc Zyngier <maz@kernel.org>
  R:    James Morse <james.morse@arm.com>
 -R:    Alexandru Elisei <alexandru.elisei@arm.com>
  R:    Suzuki K Poulose <suzuki.poulose@arm.com>
  R:    Oliver Upton <oliver.upton@linux.dev>
 +R:    Zenghui Yu <yuzenghui@huawei.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  L:    kvmarm@lists.linux.dev
  L:    kvmarm@lists.cs.columbia.edu (deprecated, moderated for non-subscribers)
@@@ -11592,7 -11686,7 +11592,7 @@@ M:   Mickaël Salaün <mic@digikod.net
  L:    linux-security-module@vger.kernel.org
  S:    Supported
  W:    https://landlock.io
 -T:    git https://github.com/landlock-lsm/linux.git
 +T:    git https://git.kernel.org/pub/scm/linux/kernel/git/mic/linux.git
  F:    Documentation/security/landlock.rst
  F:    Documentation/userspace-api/landlock.rst
  F:    include/uapi/linux/landlock.h
@@@ -12721,9 -12815,9 +12721,9 @@@ F:   drivers/iio/potentiometer/mcp4018.
  F:    drivers/iio/potentiometer/mcp4531.c
  
  MCR20A IEEE-802.15.4 RADIO DRIVER
 -M:    Xue Liu <liuxuenetmail@gmail.com>
 +M:    Stefan Schmidt <stefan@datenfreihafen.org>
  L:    linux-wpan@vger.kernel.org
 -S:    Maintained
 +S:    Odd Fixes
  W:    https://github.com/xueliu/mcr20a-linux
  F:    Documentation/devicetree/bindings/net/ieee802154/mcr20a.txt
  F:    drivers/net/ieee802154/mcr20a.c
@@@ -13526,7 -13620,7 +13526,7 @@@ F:   arch/microblaze
  
  MICROCHIP AT91 DMA DRIVERS
  M:    Ludovic Desroches <ludovic.desroches@microchip.com>
 -M:    Tudor Ambarus <tudor.ambarus@microchip.com>
 +M:    Tudor Ambarus <tudor.ambarus@linaro.org>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  L:    dmaengine@vger.kernel.org
  S:    Supported
@@@ -13571,7 -13665,7 +13571,7 @@@ F:   Documentation/devicetree/bindings/me
  F:    drivers/media/platform/microchip/microchip-csi2dc.c
  
  MICROCHIP ECC DRIVER
 -M:    Tudor Ambarus <tudor.ambarus@microchip.com>
 +M:    Tudor Ambarus <tudor.ambarus@linaro.org>
  L:    linux-crypto@vger.kernel.org
  S:    Maintained
  F:    drivers/crypto/atmel-ecc.*
@@@ -13616,7 -13710,6 +13616,7 @@@ S:   Maintaine
  F:    Documentation/devicetree/bindings/net/dsa/microchip,ksz.yaml
  F:    Documentation/devicetree/bindings/net/dsa/microchip,lan937x.yaml
  F:    drivers/net/dsa/microchip/*
 +F:    include/linux/dsa/ksz_common.h
  F:    include/linux/platform_data/microchip-ksz.h
  F:    net/dsa/tag_ksz.c
  
@@@ -13669,7 -13762,7 +13669,7 @@@ S:   Maintaine
  F:    drivers/mmc/host/atmel-mci.c
  
  MICROCHIP NAND DRIVER
 -M:    Tudor Ambarus <tudor.ambarus@microchip.com>
 +M:    Tudor Ambarus <tudor.ambarus@linaro.org>
  L:    linux-mtd@lists.infradead.org
  S:    Supported
  F:    Documentation/devicetree/bindings/mtd/atmel-nand.txt
@@@ -13721,7 -13814,7 +13721,7 @@@ S:   Supporte
  F:    drivers/power/reset/at91-sama5d2_shdwc.c
  
  MICROCHIP SPI DRIVER
 -M:    Tudor Ambarus <tudor.ambarus@microchip.com>
 +M:    Tudor Ambarus <tudor.ambarus@linaro.org>
  S:    Supported
  F:    drivers/spi/spi-atmel.*
  
@@@ -14049,7 -14142,6 +14049,7 @@@ M:   Saravanan Sekar <sravanhome@gmail.co
  S:    Maintained
  F:    Documentation/devicetree/bindings/mfd/mps,mp2629.yaml
  F:    Documentation/devicetree/bindings/regulator/mps,mp*.yaml
 +F:    drivers/hwmon/pmbus/mpq7932.c
  F:    drivers/iio/adc/mp2629_adc.c
  F:    drivers/mfd/mp2629.c
  F:    drivers/power/supply/mp2629_charger.c
@@@ -14070,7 -14162,6 +14070,7 @@@ M:   Peter Geis <pgwipeout@gmail.com
  M:    Frank <Frank.Sae@motor-comm.com>
  L:    netdev@vger.kernel.org
  S:    Maintained
 +F:    Documentation/devicetree/bindings/net/motorcomm,yt8xxx.yaml
  F:    drivers/net/phy/motorcomm.c
  
  MOXA SMARTIO/INDUSTIO/INTELLIO SERIAL CARD
@@@ -14087,9 -14178,9 +14087,9 @@@ T:   git git://linuxtv.org/media_tree.gi
  F:    drivers/media/radio/radio-mr800.c
  
  MRF24J40 IEEE 802.15.4 RADIO DRIVER
 -M:    Alan Ott <alan@signal11.us>
 +M:    Stefan Schmidt <stefan@datenfreihafen.org>
  L:    linux-wpan@vger.kernel.org
 -S:    Maintained
 +S:    Odd Fixes
  F:    Documentation/devicetree/bindings/net/ieee802154/mrf24j40.txt
  F:    drivers/net/ieee802154/mrf24j40.c
  
@@@ -14451,8 -14542,6 +14451,8 @@@ M:   Florian Fainelli <f.fainelli@gmail.c
  M:    Vladimir Oltean <olteanv@gmail.com>
  S:    Maintained
  F:    Documentation/devicetree/bindings/net/dsa/
 +F:    Documentation/devicetree/bindings/net/ethernet-switch-port.yaml
 +F:    Documentation/devicetree/bindings/net/ethernet-switch.yaml
  F:    drivers/net/dsa/
  F:    include/linux/dsa/
  F:    include/linux/platform_data/dsa.h
@@@ -14471,10 -14560,8 +14471,10 @@@ Q: https://patchwork.kernel.org/project
  B:    mailto:netdev@vger.kernel.org
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git
 +F:    Documentation/core-api/netlink.rst
  F:    Documentation/networking/
  F:    Documentation/process/maintainer-netdev.rst
 +F:    Documentation/userspace-api/netlink/
  F:    include/linux/in.h
  F:    include/linux/net.h
  F:    include/linux/netdevice.h
@@@ -14486,7 -14573,6 +14486,7 @@@ F:   include/uapi/linux/netdevice.
  F:    lib/net_utils.c
  F:    lib/random32.c
  F:    net/
 +F:    tools/net/
  F:    tools/testing/selftests/net/
  
  NETWORKING [IPSEC]
@@@ -14515,6 -14601,7 +14515,6 @@@ F:   tools/testing/selftests/net/ipsec.
  
  NETWORKING [IPv4/IPv6]
  M:    "David S. Miller" <davem@davemloft.net>
 -M:    Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org>
  M:    David Ahern <dsahern@kernel.org>
  L:    netdev@vger.kernel.org
  S:    Maintained
@@@ -14547,6 -14634,7 +14547,6 @@@ F:   net/netfilter/xt_SECMARK.
  F:    net/netlabel/
  
  NETWORKING [MPTCP]
 -M:    Mat Martineau <mathew.j.martineau@linux.intel.com>
  M:    Matthieu Baerts <matthieu.baerts@tessares.net>
  L:    netdev@vger.kernel.org
  L:    mptcp@lists.linux.dev
@@@ -14831,8 -14919,7 +14831,8 @@@ T:   git://git.infradead.org/nvme.gi
  F:    Documentation/nvme/
  F:    drivers/nvme/host/
  F:    drivers/nvme/common/
 -F:    include/linux/nvme*
 +F:    include/linux/nvme.h
 +F:    include/linux/nvme-*.h
  F:    include/uapi/linux/nvme_ioctl.h
  
  NVM EXPRESS FABRICS AUTHENTICATION
@@@ -15064,7 -15151,6 +15064,7 @@@ M:   Colin Foster <colin.foster@in-advant
  S:    Supported
  F:    Documentation/devicetree/bindings/mfd/mscc,ocelot.yaml
  F:    drivers/mfd/ocelot*
 +F:    drivers/net/dsa/ocelot/ocelot_ext.c
  F:    include/linux/mfd/ocelot.h
  
  OCXL (Open Coherent Accelerator Processor Interface OpenCAPI) DRIVER
@@@ -15228,6 -15314,7 +15228,6 @@@ Q:   http://patchwork.kernel.org/project/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap.git
  F:    arch/arm/configs/omap1_defconfig
  F:    arch/arm/mach-omap1/
 -F:    arch/arm/plat-omap/
  F:    drivers/i2c/busses/i2c-omap.c
  F:    include/linux/platform_data/ams-delta-fiq.h
  F:    include/linux/platform_data/i2c-omap.h
@@@ -15242,6 -15329,7 +15242,6 @@@ Q:   http://patchwork.kernel.org/project/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap.git
  F:    arch/arm/configs/omap2plus_defconfig
  F:    arch/arm/mach-omap2/
 -F:    arch/arm/plat-omap/
  F:    drivers/bus/ti-sysc.c
  F:    drivers/i2c/busses/i2c-omap.c
  F:    drivers/irqchip/irq-omap-intc.c
@@@ -15485,7 -15573,6 +15485,7 @@@ F:   drivers/mtd/nand/onenand
  F:    include/linux/mtd/onenand*.h
  
  ONEXPLAYER FAN DRIVER
 +M:    Derek John Clark <derekjohn.clark@gmail.com>
  M:    Joaquín Ignacio Aramendía <samsagax@gmail.com>
  L:    linux-hwmon@vger.kernel.org
  S:    Maintained
@@@ -15497,13 -15584,6 +15497,13 @@@ L: linux-mips@vger.kernel.or
  S:    Maintained
  F:    arch/mips/boot/dts/ralink/omega2p.dts
  
 +ONSEMI ETHERNET PHY DRIVERS
 +M:    Piergiorgio Beruto <piergiorgio.beruto@gmail.com>
 +L:    netdev@vger.kernel.org
 +S:    Supported
 +W:    http://www.onsemi.com
 +F:    drivers/net/phy/ncn*
 +
  OP-TEE DRIVER
  M:    Jens Wiklander <jens.wiklander@linaro.org>
  L:    op-tee@lists.trustedfirmware.org
@@@ -15578,7 -15658,7 +15578,7 @@@ OPENRISC ARCHITECTUR
  M:    Jonas Bonn <jonas@southpole.se>
  M:    Stefan Kristiansson <stefan.kristiansson@saunalahti.fi>
  M:    Stafford Horne <shorne@gmail.com>
 -L:    openrisc@lists.librecores.org
 +L:    linux-openrisc@vger.kernel.org
  S:    Maintained
  W:    http://openrisc.io
  T:    git https://github.com/openrisc/linux.git
@@@ -15669,12 -15749,6 +15669,12 @@@ S: Maintaine
  W:    https://wireless.wiki.kernel.org/en/users/Drivers/p54
  F:    drivers/net/wireless/intersil/p54/
  
 +PACKET SOCKETS
 +M:    Willem de Bruijn <willemdebruijn.kernel@gmail.com>
 +S:    Maintained
 +F:    include/uapi/linux/if_packet.h
 +F:    net/packet/af_packet.c
 +
  PACKING
  M:    Vladimir Oltean <olteanv@gmail.com>
  L:    netdev@vger.kernel.org
@@@ -15770,13 -15844,6 +15770,6 @@@ F:  arch/*/include/asm/paravirt*.
  F:    arch/*/kernel/paravirt*
  F:    include/linux/hypervisor.h
  
- PARIDE DRIVERS FOR PARALLEL PORT IDE DEVICES
- M:    Tim Waugh <tim@cyberelk.net>
- L:    linux-parport@lists.infradead.org (subscribers-only)
- S:    Maintained
- F:    Documentation/admin-guide/blockdev/paride.rst
- F:    drivers/block/paride/
  PARISC ARCHITECTURE
  M:    "James E.J. Bottomley" <James.Bottomley@HansenPartnership.com>
  M:    Helge Deller <deller@gmx.de>
@@@ -16034,7 -16101,7 +16027,7 @@@ F:   drivers/pci/controller/pci-v3-semi.
  
  PCI ENDPOINT SUBSYSTEM
  M:    Lorenzo Pieralisi <lpieralisi@kernel.org>
 -R:    Krzysztof WilczyÅ„ski <kw@linux.com>
 +M:    Krzysztof WilczyÅ„ski <kw@linux.com>
  R:    Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
  R:    Kishon Vijay Abraham I <kishon@kernel.org>
  L:    linux-pci@vger.kernel.org
@@@ -16042,7 -16109,7 +16035,7 @@@ S:   Supporte
  Q:    https://patchwork.kernel.org/project/linux-pci/list/
  B:    https://bugzilla.kernel.org
  C:    irc://irc.oftc.net/linux-pci
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/lpieralisi/pci.git
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/pci/pci.git
  F:    Documentation/PCI/endpoint/*
  F:    Documentation/misc-devices/pci-endpoint-test.rst
  F:    drivers/misc/pci_endpoint_test.c
@@@ -16077,7 -16144,7 +16070,7 @@@ S:   Supporte
  Q:    https://patchwork.kernel.org/project/linux-pci/list/
  B:    https://bugzilla.kernel.org
  C:    irc://irc.oftc.net/linux-pci
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/pci/pci.git
  F:    Documentation/driver-api/pci/p2pdma.rst
  F:    drivers/pci/p2pdma.c
  F:    include/linux/pci-p2pdma.h
@@@ -16099,14 -16166,14 +16092,14 @@@ F:        drivers/pci/controller/pci-xgene-msi
  
  PCI NATIVE HOST BRIDGE AND ENDPOINT DRIVERS
  M:    Lorenzo Pieralisi <lpieralisi@kernel.org>
 +M:    Krzysztof WilczyÅ„ski <kw@linux.com>
  R:    Rob Herring <robh@kernel.org>
 -R:    Krzysztof WilczyÅ„ski <kw@linux.com>
  L:    linux-pci@vger.kernel.org
  S:    Supported
  Q:    https://patchwork.kernel.org/project/linux-pci/list/
  B:    https://bugzilla.kernel.org
  C:    irc://irc.oftc.net/linux-pci
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/lpieralisi/pci.git
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/pci/pci.git
  F:    Documentation/devicetree/bindings/pci/
  F:    drivers/pci/controller/
  F:    drivers/pci/pci-bridge-emul.c
@@@ -16119,7 -16186,7 +16112,7 @@@ S:   Supporte
  Q:    https://patchwork.kernel.org/project/linux-pci/list/
  B:    https://bugzilla.kernel.org
  C:    irc://irc.oftc.net/linux-pci
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/pci/pci.git
  F:    Documentation/PCI/
  F:    Documentation/devicetree/bindings/pci/
  F:    arch/x86/kernel/early-quirks.c
@@@ -16536,26 -16603,12 +16529,26 @@@ S:        Supporte
  F:    Documentation/devicetree/bindings/input/pine64,pinephone-keyboard.yaml
  F:    drivers/input/keyboard/pinephone-keyboard.c
  
 +PKTCDVD DRIVER
 +M:    linux-block@vger.kernel.org
 +S:    Orphan
 +F:    drivers/block/pktcdvd.c
 +F:    include/linux/pktcdvd.h
 +F:    include/uapi/linux/pktcdvd.h
 +
  PLANTOWER PMS7003 AIR POLLUTION SENSOR DRIVER
  M:    Tomasz Duszynski <tduszyns@gmail.com>
  S:    Maintained
  F:    Documentation/devicetree/bindings/iio/chemical/plantower,pms7003.yaml
  F:    drivers/iio/chemical/pms7003.c
  
 +PLCA RECONCILIATION SUBLAYER (IEEE802.3 Clause 148)
 +M:    Piergiorgio Beruto <piergiorgio.beruto@gmail.com>
 +L:    netdev@vger.kernel.org
 +S:    Maintained
 +F:    drivers/net/phy/mdio-open-alliance.h
 +F:    net/ethtool/plca.c
 +
  PLDMFW LIBRARY
  M:    Jacob Keller <jacob.e.keller@intel.com>
  S:    Maintained
@@@ -17153,13 -17206,6 +17146,13 @@@ T: git git://git.kernel.org/pub/scm/lin
  F:    Documentation/devicetree/bindings/net/wireless/qcom,ath11k.yaml
  F:    drivers/net/wireless/ath/ath11k/
  
 +QUALCOMM ATH12K WIRELESS DRIVER
 +M:    Kalle Valo <kvalo@kernel.org>
 +L:    ath12k@lists.infradead.org
 +S:    Supported
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git
 +F:    drivers/net/wireless/ath/ath12k/
 +
  QUALCOMM ATHEROS ATH9K WIRELESS DRIVER
  M:    Toke Høiland-Jørgensen <toke@toke.dk>
  L:    linux-wireless@vger.kernel.org
@@@ -17177,7 -17223,7 +17170,7 @@@ F:   Documentation/devicetree/bindings/ne
  F:    drivers/net/wwan/qcom_bam_dmux.c
  
  QUALCOMM CAMERA SUBSYSTEM DRIVER
 -M:    Robert Foss <robert.foss@linaro.org>
 +M:    Robert Foss <rfoss@kernel.org>
  M:    Todor Tomov <todor.too@gmail.com>
  L:    linux-media@vger.kernel.org
  S:    Maintained
@@@ -17257,7 -17303,7 +17250,7 @@@ F:   drivers/dma/qcom/hidma
  
  QUALCOMM I2C CCI DRIVER
  M:    Loic Poulain <loic.poulain@linaro.org>
 -M:    Robert Foss <robert.foss@linaro.org>
 +M:    Robert Foss <rfoss@kernel.org>
  L:    linux-i2c@vger.kernel.org
  L:    linux-arm-msm@vger.kernel.org
  S:    Maintained
@@@ -17731,13 -17777,6 +17724,13 @@@ F: Documentation/devicetree/bindings/ne
  F:    drivers/net/ethernet/renesas/
  F:    include/linux/sh_eth.h
  
 +RENESAS IDT821034 ASoC CODEC
 +M:    Herve Codina <herve.codina@bootlin.com>
 +L:    alsa-devel@alsa-project.org (moderated for non-subscribers)
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/sound/renesas,idt821034.yaml
 +F:    sound/soc/codecs/idt821034.c
 +
  RENESAS R-CAR GYROADC DRIVER
  M:    Marek Vasut <marek.vasut@gmail.com>
  L:    linux-iio@vger.kernel.org
@@@ -17903,7 -17942,6 +17896,7 @@@ M:   Albert Ou <aou@eecs.berkeley.edu
  L:    linux-riscv@lists.infradead.org
  S:    Supported
  Q:    https://patchwork.kernel.org/project/linux-riscv/list/
 +C:    irc://irc.libera.chat/riscv
  P:    Documentation/riscv/patch-acceptance.rst
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux.git
  F:    arch/riscv/
@@@ -18169,7 -18207,6 +18162,7 @@@ L:   rust-for-linux@vger.kernel.or
  S:    Supported
  W:    https://github.com/Rust-for-Linux/linux
  B:    https://github.com/Rust-for-Linux/linux/issues
 +C:    zulip://rust-for-linux.zulipchat.com
  T:    git https://github.com/Rust-for-Linux/linux.git rust-next
  F:    Documentation/rust/
  F:    rust/
@@@ -18209,7 -18246,6 +18202,7 @@@ F:   Documentation/driver-api/s390-driver
  F:    Documentation/s390/
  F:    arch/s390/
  F:    drivers/s390/
 +F:    drivers/watchdog/diag288_wdt.c
  
  S390 COMMON I/O LAYER
  M:    Vineeth Vijayan <vneethv@linux.ibm.com>
@@@ -18270,13 -18306,6 +18263,13 @@@ F: arch/s390/pci
  F:    drivers/pci/hotplug/s390_pci_hpc.c
  F:    Documentation/s390/pci.rst
  
 +S390 SCM DRIVER
 +M:    Vineeth Vijayan <vneethv@linux.ibm.com>
 +L:    linux-s390@vger.kernel.org
 +S:    Supported
 +F:    drivers/s390/block/scm*
 +F:    drivers/s390/cio/scm.c
 +
  S390 VFIO AP DRIVER
  M:    Tony Krowiak <akrowiak@linux.ibm.com>
  M:    Halil Pasic <pasic@linux.ibm.com>
@@@ -18320,6 -18349,19 +18313,6 @@@ L:  linux-s390@vger.kernel.or
  S:    Supported
  F:    drivers/s390/scsi/zfcp_*
  
 -S3C ADC BATTERY DRIVER
 -M:    Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
 -L:    linux-samsung-soc@vger.kernel.org
 -S:    Odd Fixes
 -F:    drivers/power/supply/s3c_adc_battery.c
 -F:    include/linux/s3c_adc_battery.h
 -
 -S3C24XX SD/MMC Driver
 -M:    Ben Dooks <ben-linux@fluff.org>
 -L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 -S:    Supported
 -F:    drivers/mmc/host/s3cmci.*
 -
  SAA6588 RDS RECEIVER DRIVER
  M:    Hans Verkuil <hverkuil@xs4all.nl>
  L:    linux-media@vger.kernel.org
@@@ -18472,9 -18514,11 +18465,9 @@@ F:  Documentation/devicetree/bindings/cl
  F:    Documentation/devicetree/bindings/clock/samsung,s3c*
  F:    drivers/clk/samsung/
  F:    include/dt-bindings/clock/exynos*.h
 -F:    include/dt-bindings/clock/s3c*.h
  F:    include/dt-bindings/clock/s5p*.h
  F:    include/dt-bindings/clock/samsung,*.h
  F:    include/linux/clk/samsung.h
 -F:    include/linux/platform_data/clk-s3c2410.h
  
  SAMSUNG SPI DRIVERS
  M:    Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
@@@ -18485,6 -18529,7 +18478,6 @@@ S:   Maintaine
  F:    Documentation/devicetree/bindings/spi/samsung,spi*.yaml
  F:    drivers/spi/spi-s3c*
  F:    include/linux/platform_data/spi-s3c64xx.h
 -F:    include/linux/spi/s3c24xx-fiq.h
  
  SAMSUNG SXGBE DRIVERS
  M:    Byungho An <bh74.an@samsung.com>
@@@ -18618,9 -18663,9 +18611,9 @@@ F:   drivers/target
  F:    include/target/
  
  SCTP PROTOCOL
 -M:    Vlad Yasevich <vyasevich@gmail.com>
  M:    Neil Horman <nhorman@tuxdriver.com>
  M:    Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
 +M:    Xin Long <lucien.xin@gmail.com>
  L:    linux-sctp@vger.kernel.org
  S:    Maintained
  W:    http://lksctp.sourceforge.net
@@@ -18843,7 -18888,6 +18836,7 @@@ M:   Edward Cree <ecree.xilinx@gmail.com
  M:    Martin Habets <habetsm.xilinx@gmail.com>
  L:    netdev@vger.kernel.org
  S:    Supported
 +F:    Documentation/networking/devlink/sfc.rst
  F:    drivers/net/ethernet/sfc/
  
  SFF/SFP/SFP+ MODULE SUPPORT
@@@ -19055,6 -19099,14 +19048,6 @@@ M:  Simtec Linux Team <linux@simtec.co.u
  S:    Supported
  W:    http://www.simtec.co.uk/products/EB110ATX/
  
 -SIMTEC EB2410ITX (BAST)
 -M:    Simtec Linux Team <linux@simtec.co.uk>
 -S:    Supported
 -W:    http://www.simtec.co.uk/products/EB2410ITX/
 -F:    arch/arm/mach-s3c/bast-ide.c
 -F:    arch/arm/mach-s3c/bast-irq.c
 -F:    arch/arm/mach-s3c/mach-bast.c
 -
  SIOX
  M:    Thorsten Scherer <t.scherer@eckelmann.de>
  M:    Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
@@@ -19259,13 -19311,6 +19252,13 @@@ L: alsa-devel@alsa-project.org (moderat
  S:    Orphan
  F:    sound/soc/uniphier/
  
 +SOCKET TIMESTAMPING
 +M:    Willem de Bruijn <willemdebruijn.kernel@gmail.com>
 +S:    Maintained
 +F:    Documentation/networking/timestamping.rst
 +F:    include/uapi/linux/net_tstamp.h
 +F:    tools/testing/selftests/net/so_txtime.c
 +
  SOEKRIS NET48XX LED SUPPORT
  M:    Chris Boot <bootc@bootc.net>
  S:    Maintained
@@@ -19613,7 -19658,7 +19606,7 @@@ F:   drivers/clk/spear
  F:    drivers/pinctrl/spear/
  
  SPI NOR SUBSYSTEM
 -M:    Tudor Ambarus <tudor.ambarus@microchip.com>
 +M:    Tudor Ambarus <tudor.ambarus@linaro.org>
  M:    Pratyush Yadav <pratyush@kernel.org>
  R:    Michael Walle <michael@walle.cc>
  L:    linux-mtd@lists.infradead.org
@@@ -19839,15 -19884,13 +19832,15 @@@ F:        Documentation/devicetree/bindings/cl
  F:    drivers/clk/starfive/clk-starfive-jh7100*
  F:    include/dt-bindings/clock/starfive-jh7100*.h
  
 -STARFIVE JH7100 PINCTRL DRIVER
 +STARFIVE JH71X0 PINCTRL DRIVERS
  M:    Emil Renner Berthing <kernel@esmil.dk>
 +M:    Jianlong Huang <jianlong.huang@starfivetech.com>
  L:    linux-gpio@vger.kernel.org
  S:    Maintained
 -F:    Documentation/devicetree/bindings/pinctrl/starfive,jh7100-pinctrl.yaml
 -F:    drivers/pinctrl/starfive/
 +F:    Documentation/devicetree/bindings/pinctrl/starfive,jh71*.yaml
 +F:    drivers/pinctrl/starfive/pinctrl-starfive-jh71*
  F:    include/dt-bindings/pinctrl/pinctrl-starfive-jh7100.h
 +F:    include/dt-bindings/pinctrl/starfive,jh7110-pinctrl.h
  
  STARFIVE JH7100 RESET CONTROLLER DRIVER
  M:    Emil Renner Berthing <kernel@esmil.dk>
@@@ -19856,12 -19899,6 +19849,12 @@@ F: Documentation/devicetree/bindings/re
  F:    drivers/reset/reset-starfive-jh7100.c
  F:    include/dt-bindings/reset/starfive-jh7100.h
  
 +STARFIVE TRNG DRIVER
 +M:    Jia Jie Ho <jiajie.ho@starfivetech.com>
 +S:    Supported
 +F:    Documentation/devicetree/bindings/rng/starfive*
 +F:    drivers/char/hw_random/jh7110-trng.c
 +
  STATIC BRANCH/CALL
  M:    Peter Zijlstra <peterz@infradead.org>
  M:    Josh Poimboeuf <jpoimboe@kernel.org>
@@@ -20019,7 -20056,6 +20012,7 @@@ F:   drivers/watchdog/sunplus_wdt.
  SUPERH
  M:    Yoshinori Sato <ysato@users.sourceforge.jp>
  M:    Rich Felker <dalias@libc.org>
 +M:    John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
  L:    linux-sh@vger.kernel.org
  S:    Maintained
  Q:    http://patchwork.kernel.org/project/linux-sh/list/
@@@ -20035,8 -20071,7 +20028,8 @@@ L:   linux-pm@vger.kernel.or
  S:    Supported
  B:    https://bugzilla.kernel.org
  F:    Documentation/power/
 -F:    arch/x86/kernel/acpi/
 +F:    arch/x86/kernel/acpi/sleep*
 +F:    arch/x86/kernel/acpi/wakeup*
  F:    drivers/base/power/
  F:    include/linux/freezer.h
  F:    include/linux/pm.h
@@@ -20253,7 -20288,8 +20246,7 @@@ S:   Maintaine
  F:    drivers/platform/x86/system76_acpi.c
  
  SYSV FILESYSTEM
 -M:    Christoph Hellwig <hch@infradead.org>
 -S:    Maintained
 +S:    Orphan
  F:    Documentation/filesystems/sysv-fs.rst
  F:    fs/sysv/
  F:    include/linux/sysv_fs.h
@@@ -20644,7 -20680,6 +20637,7 @@@ S:   Supporte
  Q:    https://patchwork.kernel.org/project/linux-pm/list/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git thermal
  F:    Documentation/ABI/testing/sysfs-class-thermal
 +F:    Documentation/admin-guide/thermal/
  F:    Documentation/devicetree/bindings/thermal/
  F:    Documentation/driver-api/thermal/
  F:    drivers/thermal/
@@@ -20726,7 -20761,7 +20719,7 @@@ M:   Mika Westerberg <mika.westerberg@lin
  M:    Yehezkel Bernat <YehezkelShB@gmail.com>
  L:    netdev@vger.kernel.org
  S:    Maintained
 -F:    drivers/net/thunderbolt.c
 +F:    drivers/net/thunderbolt/
  
  THUNDERX GPIO DRIVER
  M:    Robert Richter <rric@kernel.org>
@@@ -20801,6 -20836,7 +20794,6 @@@ W:   https://linuxtv.or
  Q:    http://patchwork.linuxtv.org/project/linux-media/list/
  T:    git git://linuxtv.org/mhadli/v4l-dvb-davinci_devices.git
  F:    drivers/media/platform/ti/davinci/
 -F:    drivers/staging/media/deprecated/vpfe_capture/
  F:    include/media/davinci/
  
  TI ENHANCED CAPTURE (eCAP) DRIVER
@@@ -21660,7 -21696,6 +21653,7 @@@ F:   include/uapi/linux/uvcvideo.
  
  USB WEBCAM GADGET
  M:    Laurent Pinchart <laurent.pinchart@ideasonboard.com>
 +M:    Daniel Scally <dan.scally@ideasonboard.com>
  L:    linux-usb@vger.kernel.org
  S:    Maintained
  F:    drivers/usb/gadget/function/*uvc*
@@@ -21696,13 -21731,6 +21689,13 @@@ T: git git://linuxtv.org/media_tree.gi
  F:    Documentation/admin-guide/media/zr364xx*
  F:    drivers/staging/media/deprecated/zr364xx/
  
 +USER DATAGRAM PROTOCOL (UDP)
 +M:    Willem de Bruijn <willemdebruijn.kernel@gmail.com>
 +S:    Maintained
 +F:    include/linux/udp.h
 +F:    net/ipv4/udp.c
 +F:    net/ipv6/udp.c
 +
  USER-MODE LINUX (UML)
  M:    Richard Weinberger <richard@nod.at>
  M:    Anton Ivanov <anton.ivanov@cambridgegreys.com>
@@@ -21748,9 -21776,11 +21741,9 @@@ W:  http://en.wikipedia.org/wiki/Util-li
  T:    git git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git
  
  UUID HELPERS
 -M:    Christoph Hellwig <hch@lst.de>
  R:    Andy Shevchenko <andriy.shevchenko@linux.intel.com>
  L:    linux-kernel@vger.kernel.org
  S:    Maintained
 -T:    git git://git.infradead.org/users/hch/uuid.git
  F:    include/linux/uuid.h
  F:    include/uapi/linux/uuid.h
  F:    lib/test_uuid.c
@@@ -22209,9 -22239,7 +22202,9 @@@ F:   drivers/scsi/vmw_pvscsi.
  F:    drivers/scsi/vmw_pvscsi.h
  
  VMWARE VIRTUAL PTP CLOCK DRIVER
 -M:    Vivek Thampi <vithampi@vmware.com>
 +M:    Srivatsa S. Bhat (VMware) <srivatsa@csail.mit.edu>
 +M:    Deep Shah <sdeep@vmware.com>
 +R:    Alexey Makhalov <amakhalov@vmware.com>
  R:    VMware PV-Drivers Reviewers <pv-drivers@vmware.com>
  L:    netdev@vger.kernel.org
  S:    Supported
@@@ -22579,7 -22607,6 +22572,7 @@@ S:   Maintaine
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git
  F:    drivers/platform/olpc/
  F:    drivers/platform/x86/
 +F:    include/linux/platform_data/x86/
  
  X86 PLATFORM DRIVERS - ARCH
  R:    Darren Hart <dvhart@infradead.org>
@@@ -22865,13 -22892,6 +22858,13 @@@ F: Documentation/devicetree/bindings/dm
  F:    drivers/dma/xilinx/xilinx_dpdma.c
  F:    include/dt-bindings/dma/xlnx-zynqmp-dpdma.h
  
 +XILINX ZYNQMP OCM EDAC DRIVER
 +M:    Shubhrajyoti Datta <shubhrajyoti.datta@amd.com>
 +M:    Sai Krishna Potthuri <sai.krishna.potthuri@amd.com>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/memory-controllers/xlnx,zynqmp-ocmc-1.0.yaml
 +F:    drivers/edac/zynqmp_edac.c
 +
  XILINX ZYNQMP PSGTR PHY DRIVER
  M:    Anurag Kumar Vulisha <anurag.kumar.vulisha@xilinx.com>
  M:    Laurent Pinchart <laurent.pinchart@ideasonboard.com>
diff --combined block/blk-core.c
index 5fb6856745b4ee49ad789a8a2a9136a9c4fa0c31,c644aac498ef9b27b5d19e762ed0163372f958f2..82b5b2c53f1ee8e91150a03d3b4fa0453cbfad06
@@@ -283,9 -283,12 +283,9 @@@ static void blk_free_queue(struct reque
   *
   * Decrements the refcount of the request_queue and free it when the refcount
   * reaches 0.
 - *
 - * Context: Can sleep.
   */
  void blk_put_queue(struct request_queue *q)
  {
 -      might_sleep();
        if (refcount_dec_and_test(&q->refs))
                blk_free_queue(q);
  }
@@@ -570,7 -573,7 +570,7 @@@ static inline blk_status_t blk_check_zo
                return BLK_STS_NOTSUPP;
  
        /* The bio sector must point to the start of a sequential zone */
 -      if (bio->bi_iter.bi_sector & (bdev_zone_sectors(bio->bi_bdev) - 1) ||
 +      if (!bdev_is_zone_start(bio->bi_bdev, bio->bi_iter.bi_sector) ||
            !bio_zone_is_seq(bio))
                return BLK_STS_IOERR;
  
@@@ -684,18 -687,6 +684,18 @@@ static void __submit_bio_noacct_mq(stru
  
  void submit_bio_noacct_nocheck(struct bio *bio)
  {
 +      blk_cgroup_bio_start(bio);
 +      blkcg_bio_issue_init(bio);
 +
 +      if (!bio_flagged(bio, BIO_TRACE_COMPLETION)) {
 +              trace_block_bio_queue(bio);
 +              /*
 +               * Now that enqueuing has been traced, we need to trace
 +               * completion as well.
 +               */
 +              bio_set_flag(bio, BIO_TRACE_COMPLETION);
 +      }
 +
        /*
         * We only want one ->submit_bio to be active at a time, else stack
         * usage with stacked devices could be a problem.  Use current->bio_list
@@@ -753,12 -744,16 +753,16 @@@ void submit_bio_noacct(struct bio *bio
         * Filter flush bio's early so that bio based drivers without flush
         * support don't have to worry about them.
         */
-       if (op_is_flush(bio->bi_opf) &&
-           !test_bit(QUEUE_FLAG_WC, &q->queue_flags)) {
-               bio->bi_opf &= ~(REQ_PREFLUSH | REQ_FUA);
-               if (!bio_sectors(bio)) {
-                       status = BLK_STS_OK;
+       if (op_is_flush(bio->bi_opf)) {
+               if (WARN_ON_ONCE(bio_op(bio) != REQ_OP_WRITE &&
+                                bio_op(bio) != REQ_OP_ZONE_APPEND))
                        goto end_io;
+               if (!test_bit(QUEUE_FLAG_WC, &q->queue_flags)) {
+                       bio->bi_opf &= ~(REQ_PREFLUSH | REQ_FUA);
+                       if (!bio_sectors(bio)) {
+                               status = BLK_STS_OK;
+                               goto end_io;
+                       }
                }
        }
  
  
        if (blk_throtl_bio(bio))
                return;
 -
 -      blk_cgroup_bio_start(bio);
 -      blkcg_bio_issue_init(bio);
 -
 -      if (!bio_flagged(bio, BIO_TRACE_COMPLETION)) {
 -              trace_block_bio_queue(bio);
 -              /* Now that enqueuing has been traced, we need to trace
 -               * completion as well.
 -               */
 -              bio_set_flag(bio, BIO_TRACE_COMPLETION);
 -      }
        submit_bio_noacct_nocheck(bio);
        return;
  
@@@ -870,16 -876,7 +874,16 @@@ int bio_poll(struct bio *bio, struct io
         */
        blk_flush_plug(current->plug, false);
  
 -      if (bio_queue_enter(bio))
 +      /*
 +       * We need to be able to enter a frozen queue, similar to how
 +       * timeouts also need to do that. If that is blocked, then we can
 +       * have pending IO when a queue freeze is started, and then the
 +       * wait for the freeze to finish will wait for polled requests to
 +       * timeout as the poller is preventer from entering the queue and
 +       * completing them. As long as we prevent new IO from being queued,
 +       * that should be all that matters.
 +       */
 +      if (!percpu_ref_tryget(&q->q_usage_counter))
                return 0;
        if (queue_is_mq(q)) {
                ret = blk_mq_poll(q, cookie, iob, flags);
diff --combined drivers/Makefile
index cf5d8b86da8f0b4c014ad7d8c897ef7c944f1148,788e37269ee9d0d449b21057bf3c29d694ae6302..62b2acf2a7647e2d70cf44d0893c10cd8d0a0a6e
@@@ -98,7 -98,6 +98,6 @@@ obj-$(CONFIG_DIO)             += dio
  obj-$(CONFIG_SBUS)            += sbus/
  obj-$(CONFIG_ZORRO)           += zorro/
  obj-$(CONFIG_ATA_OVER_ETH)    += block/aoe/
- obj-$(CONFIG_PARIDE)          += block/paride/
  obj-$(CONFIG_TC)              += tc/
  obj-$(CONFIG_USB_PHY)         += usb/
  obj-$(CONFIG_USB)             += usb/
@@@ -137,7 -136,7 +136,7 @@@ obj-$(CONFIG_CRYPTO)               += crypto
  obj-$(CONFIG_SUPERH)          += sh/
  obj-y                         += clocksource/
  obj-$(CONFIG_DCA)             += dca/
 -obj-$(CONFIG_HID)             += hid/
 +obj-$(CONFIG_HID_SUPPORT)     += hid/
  obj-$(CONFIG_PPC_PS3)         += ps3/
  obj-$(CONFIG_OF)              += of/
  obj-$(CONFIG_SSB)             += ssb/
diff --combined drivers/ata/Kconfig
index 0b6358a5b31592bc9447763c7172d5b95e4f9cd0,2fa9e66ba824b74722741320b355695a55d84a58..b56fba76b43f48f7ccd29f094149282ce4fb612a
@@@ -640,7 -640,6 +640,7 @@@ config PATA_CS553
  config PATA_CS5535
        tristate "CS5535 PATA support (Experimental)"
        depends on PCI && (X86_32 || (X86_64 && COMPILE_TEST))
 +      depends on !UML
        help
          This option enables support for the NatSemi/AMD CS5535
          companion chip used with the Geode processor family.
@@@ -1083,6 -1082,15 +1083,6 @@@ config PATA_OPT
  
          If unsure, say N.
  
 -config PATA_PALMLD
 -      tristate "Palm LifeDrive PATA support"
 -      depends on MACH_PALMLD
 -      help
 -        This option enables support for Palm LifeDrive's internal ATA
 -        port via the new ATA layer.
 -
 -        If unsure, say N.
 -
  config PATA_PCMCIA
        tristate "PCMCIA PATA support"
        depends on PCMCIA
@@@ -1136,6 -1144,16 +1136,6 @@@ config PATA_RZ100
  
          If unsure, say N.
  
 -config PATA_SAMSUNG_CF
 -      tristate "Samsung SoC PATA support"
 -      depends on SAMSUNG_DEV_IDE || COMPILE_TEST
 -      select PATA_TIMINGS
 -      help
 -        This option enables basic support for Samsung's S3C/S5P board
 -        PATA controllers via the new ATA layer
 -
 -        If unsure, say N.
 -
  config PATA_WINBOND_VLB
        tristate "Winbond W83759A VLB PATA support (Experimental)"
        depends on ISA
          Support for the Winbond W83759A controller on Vesa Local Bus
          systems.
  
+ config PATA_PARPORT
+       tristate "Parallel port IDE device support"
+       depends on PARPORT_PC
+       help
+         There are many external CD-ROM and disk devices that connect through
+         your computer's parallel port. Most of them are actually IDE devices
+         using a parallel port IDE adapter. This option enables the
+         PATA_PARPORT subsystem which contains drivers for many of these
+         external drives.
+         Read <file:Documentation/admin-guide/blockdev/paride.rst> for more
+         information.
+ source "drivers/ata/pata_parport/Kconfig"
  comment "Generic fallback / legacy drivers"
  
  config PATA_ACPI
diff --combined drivers/ata/Makefile
index 4ee5c0761d903928fc257f80dfd0bf714b206d89,d846159123875a02dc6c51e3be0ab919b892a36a..20e6645ab737183d92fec21117286c5e354c272f
@@@ -105,13 -105,17 +105,15 @@@ obj-$(CONFIG_PATA_MPIIX)        += pata_mpiix.
  obj-$(CONFIG_PATA_NS87410)    += pata_ns87410.o
  obj-$(CONFIG_PATA_OPTI)               += pata_opti.o
  obj-$(CONFIG_PATA_PCMCIA)     += pata_pcmcia.o
 -obj-$(CONFIG_PATA_PALMLD)     += pata_palmld.o
  obj-$(CONFIG_PATA_PLATFORM)   += pata_platform.o
  obj-$(CONFIG_PATA_OF_PLATFORM)        += pata_of_platform.o
  obj-$(CONFIG_PATA_RB532)      += pata_rb532_cf.o
  obj-$(CONFIG_PATA_RZ1000)     += pata_rz1000.o
 -obj-$(CONFIG_PATA_SAMSUNG_CF) += pata_samsung_cf.o
  
  obj-$(CONFIG_PATA_PXA)                += pata_pxa.o
  
+ obj-$(CONFIG_PATA_PARPORT)    += pata_parport/
  # Should be last but two libata driver
  obj-$(CONFIG_PATA_ACPI)               += pata_acpi.o
  # Should be last but one libata driver
index c4c89d24f84c7f3f1114d68a1eb2147754767a19,36c1aca310e942bf726e9598dc1a3f7320e07474..14c17c3bda4e6f4dbae39c1cfa1abeab08804723
@@@ -552,7 -552,7 +552,7 @@@ static const u8 ata_rw_cmds[] = 
        0,
        0,
        0,
-       ATA_CMD_WRITE_MULTI_FUA_EXT,
+       0,
        /* pio */
        ATA_CMD_PIO_READ,
        ATA_CMD_PIO_WRITE,
  };
  
  /**
-  *    ata_rwcmd_protocol - set taskfile r/w commands and protocol
-  *    @tf: command to examine and configure
-  *    @dev: device tf belongs to
+  *    ata_set_rwcmd_protocol - set taskfile r/w command and protocol
+  *    @dev: target device for the taskfile
+  *    @tf: taskfile to examine and configure
   *
-  *    Examine the device configuration and tf->flags to calculate
-  *    the proper read/write commands and protocol to use.
+  *    Examine the device configuration and tf->flags to determine
+  *    the proper read/write command and protocol to use for @tf.
   *
   *    LOCKING:
   *    caller.
   */
- static int ata_rwcmd_protocol(struct ata_taskfile *tf, struct ata_device *dev)
+ static bool ata_set_rwcmd_protocol(struct ata_device *dev,
+                                  struct ata_taskfile *tf)
  {
        u8 cmd;
  
        }
  
        cmd = ata_rw_cmds[index + fua + lba48 + write];
-       if (cmd) {
-               tf->command = cmd;
-               return 0;
-       }
-       return -1;
+       if (!cmd)
+               return false;
+       tf->command = cmd;
+       return true;
  }
  
  /**
@@@ -725,7 -727,8 +727,8 @@@ int ata_build_rw_tf(struct ata_queued_c
        } else if (dev->flags & ATA_DFLAG_LBA) {
                tf->flags |= ATA_TFLAG_LBA;
  
-               if (lba_28_ok(block, n_block)) {
+               /* We need LBA48 for FUA writes */
+               if (!(tf->flags & ATA_TFLAG_FUA) && lba_28_ok(block, n_block)) {
                        /* use LBA28 */
                        tf->device |= (block >> 24) & 0xf;
                } else if (lba_48_ok(block, n_block)) {
                        tf->hob_lbah = (block >> 40) & 0xff;
                        tf->hob_lbam = (block >> 32) & 0xff;
                        tf->hob_lbal = (block >> 24) & 0xff;
-               } else
+               } else {
                        /* request too large even for LBA48 */
                        return -ERANGE;
+               }
  
-               if (unlikely(ata_rwcmd_protocol(tf, dev) < 0))
+               if (unlikely(!ata_set_rwcmd_protocol(dev, tf)))
                        return -EINVAL;
  
                tf->nsect = n_block & 0xff;
                if (!lba_28_ok(block, n_block))
                        return -ERANGE;
  
-               if (unlikely(ata_rwcmd_protocol(tf, dev) < 0))
+               if (unlikely(!ata_set_rwcmd_protocol(dev, tf)))
                        return -EINVAL;
  
                /* Convert LBA to CHS */
@@@ -1590,7 -1594,7 +1594,7 @@@ static unsigned ata_exec_internal_sg(st
                ap->ops->post_internal_cmd(qc);
  
        /* perform minimal error analysis */
-       if (qc->flags & ATA_QCFLAG_FAILED) {
+       if (qc->flags & ATA_QCFLAG_EH) {
                if (qc->result_tf.status & (ATA_ERR | ATA_DF))
                        qc->err_mask |= AC_ERR_DEV;
  
@@@ -2420,6 -2424,28 +2424,28 @@@ static void ata_dev_config_chs(struct a
                             dev->heads, dev->sectors);
  }
  
+ static void ata_dev_config_fua(struct ata_device *dev)
+ {
+       /* Ignore FUA support if its use is disabled globally */
+       if (!libata_fua)
+               goto nofua;
+       /* Ignore devices without support for WRITE DMA FUA EXT */
+       if (!(dev->flags & ATA_DFLAG_LBA48) || !ata_id_has_fua(dev->id))
+               goto nofua;
+       /* Ignore known bad devices and devices that lack NCQ support */
+       if (!ata_ncq_supported(dev) || (dev->horkage & ATA_HORKAGE_NO_FUA))
+               goto nofua;
+       dev->flags |= ATA_DFLAG_FUA;
+       return;
+ nofua:
+       dev->flags &= ~ATA_DFLAG_FUA;
+ }
  static void ata_dev_config_devslp(struct ata_device *dev)
  {
        u8 *sata_setting = dev->link->ap->sector_buf;
@@@ -2508,7 -2534,8 +2534,8 @@@ static void ata_dev_print_features(stru
                return;
  
        ata_dev_info(dev,
-                    "Features:%s%s%s%s%s%s\n",
+                    "Features:%s%s%s%s%s%s%s\n",
+                    dev->flags & ATA_DFLAG_FUA ? " FUA" : "",
                     dev->flags & ATA_DFLAG_TRUSTED ? " Trust" : "",
                     dev->flags & ATA_DFLAG_DA ? " Dev-Attention" : "",
                     dev->flags & ATA_DFLAG_DEVSLP ? " Dev-Sleep" : "",
@@@ -2669,6 -2696,7 +2696,7 @@@ int ata_dev_configure(struct ata_devic
                        ata_dev_config_chs(dev);
                }
  
+               ata_dev_config_fua(dev);
                ata_dev_config_devslp(dev);
                ata_dev_config_sense_reporting(dev);
                ata_dev_config_zac(dev);
@@@ -3109,7 -3137,7 +3137,7 @@@ int sata_down_spd_limit(struct ata_lin
         */
        if (spd > 1)
                mask &= (1 << (spd - 1)) - 1;
 -      else
 +      else if (link->sata_spd)
                return -EINVAL;
  
        /* were we already at the bottom? */
@@@ -4045,9 -4073,6 +4073,9 @@@ static const struct ata_blacklist_entr
        { "Samsung SSD 870*",           NULL,   ATA_HORKAGE_NO_NCQ_TRIM |
                                                ATA_HORKAGE_ZERO_AFTER_TRIM |
                                                ATA_HORKAGE_NO_NCQ_ON_ATI },
 +      { "SAMSUNG*MZ7LH*",             NULL,   ATA_HORKAGE_NO_NCQ_TRIM |
 +                                              ATA_HORKAGE_ZERO_AFTER_TRIM |
 +                                              ATA_HORKAGE_NO_NCQ_ON_ATI, },
        { "FCCT*M500*",                 NULL,   ATA_HORKAGE_NO_NCQ_TRIM |
                                                ATA_HORKAGE_ZERO_AFTER_TRIM },
  
         */
        { "SATADOM-ML 3ME",             NULL,   ATA_HORKAGE_NO_LOG_DIR },
  
+       /* Buggy FUA */
+       { "Maxtor",             "BANC1G10",     ATA_HORKAGE_NO_FUA },
+       { "WDC*WD2500J*",       NULL,           ATA_HORKAGE_NO_FUA },
+       { "OCZ-VERTEX*",        NULL,           ATA_HORKAGE_NO_FUA },
+       { "INTEL*SSDSC2CT*",    NULL,           ATA_HORKAGE_NO_FUA },
        /* End Marker */
        { }
  };
@@@ -4686,10 -4717,10 +4720,10 @@@ void ata_qc_complete(struct ata_queued_
        /* XXX: New EH and old EH use different mechanisms to
         * synchronize EH with regular execution path.
         *
-        * In new EH, a failed qc is marked with ATA_QCFLAG_FAILED.
+        * In new EH, a qc owned by EH is marked with ATA_QCFLAG_EH.
         * Normal execution path is responsible for not accessing a
-        * failed qc.  libata core enforces the rule by returning NULL
-        * from ata_qc_from_tag() for failed qcs.
+        * qc owned by EH.  libata core enforces the rule by returning NULL
+        * from ata_qc_from_tag() for qcs owned by EH.
         *
         * Old EH depends on ata_qc_complete() nullifying completion
         * requests if ATA_QCFLAG_EH_SCHEDULED is set.  Old EH does
                struct ata_eh_info *ehi = &dev->link->eh_info;
  
                if (unlikely(qc->err_mask))
-                       qc->flags |= ATA_QCFLAG_FAILED;
+                       qc->flags |= ATA_QCFLAG_EH;
  
                /*
                 * Finish internal commands without any further processing
                 * Non-internal qc has failed.  Fill the result TF and
                 * summon EH.
                 */
-               if (unlikely(qc->flags & ATA_QCFLAG_FAILED)) {
+               if (unlikely(qc->flags & ATA_QCFLAG_EH)) {
                        fill_result_tf(qc);
                        trace_ata_qc_complete_failed(qc);
                        ata_qc_schedule_eh(qc);
@@@ -6217,6 -6248,7 +6251,7 @@@ static const struct ata_force_param for
        force_horkage_onoff(lpm,        ATA_HORKAGE_NOLPM),
        force_horkage_onoff(setxfer,    ATA_HORKAGE_NOSETXFER),
        force_horkage_on(dump_id,       ATA_HORKAGE_DUMP_ID),
+       force_horkage_onoff(fua,        ATA_HORKAGE_NO_FUA),
  
        force_horkage_on(disable,       ATA_HORKAGE_DISABLE),
  };
diff --combined drivers/block/Kconfig
index a41145d52de9426b0b6c9ac0ba97c0f7e4c79b5d,89d5cca82f006145dd73393f2f7a94f9a5307081..f79f20430ef7a403a52d513f038316815a98b100
@@@ -103,35 -103,6 +103,6 @@@ config GDRO
          Most users will want to say "Y" here.
          You can also build this as a module which will be called gdrom.
  
- config PARIDE
-       tristate "Parallel port IDE device support"
-       depends on PARPORT_PC
-       help
-         There are many external CD-ROM and disk devices that connect through
-         your computer's parallel port. Most of them are actually IDE devices
-         using a parallel port IDE adapter. This option enables the PARIDE
-         subsystem which contains drivers for many of these external drives.
-         Read <file:Documentation/admin-guide/blockdev/paride.rst> for more information.
-         If you have said Y to the "Parallel-port support" configuration
-         option, you may share a single port between your printer and other
-         parallel port devices. Answer Y to build PARIDE support into your
-         kernel, or M if you would like to build it as a loadable module. If
-         your parallel port support is in a loadable module, you must build
-         PARIDE as a module. If you built PARIDE support into your kernel,
-         you may still build the individual protocol modules and high-level
-         drivers as loadable modules. If you build this support as a module,
-         it will be called paride.
-         To use the PARIDE support, you must say Y or M here and also to at
-         least one high-level driver (e.g. "Parallel port IDE disks",
-         "Parallel port ATAPI CD-ROMs", "Parallel port ATAPI disks" etc.) and
-         to at least one protocol driver (e.g. "ATEN EH-100 protocol",
-         "MicroSolutions backpack protocol", "DataStor Commuter protocol"
-         etc.).
- source "drivers/block/paride/Kconfig"
  source "drivers/block/mtip32xx/Kconfig"
  
  source "drivers/block/zram/Kconfig"
@@@ -285,49 -256,6 +256,49 @@@ config BLK_DEV_RAM_SIZ
          The default value is 4096 kilobytes. Only change this if you know
          what you are doing.
  
 +config CDROM_PKTCDVD
 +      tristate "Packet writing on CD/DVD media (DEPRECATED)"
 +      depends on !UML
 +      depends on SCSI
 +      select CDROM
 +      help
 +        Note: This driver is deprecated and will be removed from the
 +        kernel in the near future!
 +
 +        If you have a CDROM/DVD drive that supports packet writing, say
 +        Y to include support. It should work with any MMC/Mt Fuji
 +        compliant ATAPI or SCSI drive, which is just about any newer
 +        DVD/CD writer.
 +
 +        Currently only writing to CD-RW, DVD-RW, DVD+RW and DVDRAM discs
 +        is possible.
 +        DVD-RW disks must be in restricted overwrite mode.
 +
 +        See the file <file:Documentation/cdrom/packet-writing.rst>
 +        for further information on the use of this driver.
 +
 +        To compile this driver as a module, choose M here: the
 +        module will be called pktcdvd.
 +
 +config CDROM_PKTCDVD_BUFFERS
 +      int "Free buffers for data gathering"
 +      depends on CDROM_PKTCDVD
 +      default "8"
 +      help
 +        This controls the maximum number of active concurrent packets. More
 +        concurrent packets can increase write performance, but also require
 +        more memory. Each concurrent packet will require approximately 64Kb
 +        of non-swappable kernel memory, memory which will be allocated when
 +        a disc is opened for writing.
 +
 +config CDROM_PKTCDVD_WCACHE
 +      bool "Enable write caching"
 +      depends on CDROM_PKTCDVD
 +      help
 +        If enabled, write caching will be set for the CD-R/W device. For now
 +        this option is dangerous unless the CD-RW media is known good, as we
 +        don't do deferred write error handling yet.
 +
  config ATA_OVER_ETH
        tristate "ATA over Ethernet support"
        depends on NET
index 5e80225b5308228b753c7e0bb1ac4a598ea89c9d,ac8576e7f0b70e829a922a6c00443043de72b05e..12d9bdd11a4c3200622a7ccc6c276a8e05e665bd
@@@ -125,7 -125,7 +125,7 @@@ static void sas_ata_task_done(struct sa
                } else {
                        link->eh_info.err_mask |= ac_err_mask(dev->sata_dev.fis[2]);
                        if (unlikely(link->eh_info.err_mask))
-                               qc->flags |= ATA_QCFLAG_FAILED;
+                               qc->flags |= ATA_QCFLAG_EH;
                }
        } else {
                ac = sas_to_ata_err(stat);
                                qc->err_mask = ac;
                        } else {
                                link->eh_info.err_mask |= AC_ERR_DEV;
-                               qc->flags |= ATA_QCFLAG_FAILED;
+                               qc->flags |= ATA_QCFLAG_EH;
                        }
  
                        dev->sata_dev.fis[2] = ATA_ERR | ATA_DRDY; /* tf status */
@@@ -226,12 -226,11 +226,11 @@@ static unsigned int sas_ata_qc_issue(st
        return ret;
  }
  
- static bool sas_ata_qc_fill_rtf(struct ata_queued_cmd *qc)
+ static void sas_ata_qc_fill_rtf(struct ata_queued_cmd *qc)
  {
        struct domain_device *dev = qc->ap->private_data;
  
        ata_tf_from_fis(dev->sata_dev.fis, &qc->result_tf);
-       return true;
  }
  
  static struct sas_internal *dev_to_sas_internal(struct domain_device *dev)
@@@ -476,7 -475,7 +475,7 @@@ static void sas_ata_internal_abort(stru
  
  static void sas_ata_post_internal(struct ata_queued_cmd *qc)
  {
-       if (qc->flags & ATA_QCFLAG_FAILED)
+       if (qc->flags & ATA_QCFLAG_EH)
                qc->err_mask |= AC_ERR_OTHER;
  
        if (qc->err_mask) {
@@@ -631,7 -630,7 +630,7 @@@ void sas_ata_task_abort(struct sas_tas
  
        /* Internal command, fake a timeout and complete. */
        qc->flags &= ~ATA_QCFLAG_ACTIVE;
-       qc->flags |= ATA_QCFLAG_FAILED;
+       qc->flags |= ATA_QCFLAG_EH;
        qc->err_mask |= AC_ERR_TIMEOUT;
        waiting = qc->private_data;
        complete(waiting);
@@@ -889,9 -888,7 +888,9 @@@ void sas_ata_device_link_abort(struct d
  {
        struct ata_port *ap = device->sata_dev.ap;
        struct ata_link *link = &ap->link;
 +      unsigned long flags;
  
 +      spin_lock_irqsave(ap->lock, flags);
        device->sata_dev.fis[2] = ATA_ERR | ATA_DRDY; /* tf status */
        device->sata_dev.fis[3] = ATA_ABORTED; /* tf error */
  
        if (force_reset)
                link->eh_info.action |= ATA_EH_RESET;
        ata_link_abort(link);
 +      spin_unlock_irqrestore(ap->lock, flags);
  }
  EXPORT_SYMBOL_GPL(sas_ata_device_link_abort);