31 Aug, 2022

1 commit

  • commit 00da0cb385d05a89226e150a102eb49d8abb0359 upstream.

    While reporting for the AMD retbleed vulnerability was added in

    6b80b59b3555 ("x86/bugs: Report AMD retbleed vulnerability")

    the new sysfs file was not mentioned so far in the ABI documentation for
    sysfs-devices-system-cpu. Fix that.

    Fixes: 6b80b59b3555 ("x86/bugs: Report AMD retbleed vulnerability")
    Signed-off-by: Salvatore Bonaccorso
    Signed-off-by: Borislav Petkov
    Link: https://lore.kernel.org/r/20220801091529.325327-1-carnil@debian.org
    Signed-off-by: Greg Kroah-Hartman

    Salvatore Bonaccorso
     

17 Aug, 2022

2 commits

  • commit 402c43ea6b34a1b371ffeed9adf907402569eaf5 upstream.

    In some use cases[1], the backend is created while the frontend doesn't
    support the persistent grants feature, but later the frontend can be
    changed to support the feature and reconnect. In the past, 'blkback'
    enabled the persistent grants feature since it unconditionally checked
    if frontend supports the persistent grants feature for every connect
    ('connect_ring()') and decided whether it should use persistent grans or
    not.

    However, commit aac8a70db24b ("xen-blkback: add a parameter for
    disabling of persistent grants") has mistakenly changed the behavior.
    It made the frontend feature support check to not be repeated once it
    shown the 'feature_persistent' as 'false', or the frontend doesn't
    support persistent grants.

    Similar behavioral change has made on 'blkfront' by commit 74a852479c68
    ("xen-blkfront: add a parameter for disabling of persistent grants").
    This commit changes the behavior of the parameter to make effect for
    every connect, so that the previous behavior of 'blkfront' can be
    restored.

    [1] https://lore.kernel.org/xen-devel/CAJwUmVB6H3iTs-C+U=v-pwJB7-_ZRHPxHzKRJZ22xEPW7z8a=g@mail.gmail.com/

    Fixes: 74a852479c68 ("xen-blkfront: add a parameter for disabling of persistent grants")
    Cc: # 5.10.x
    Signed-off-by: SeongJae Park
    Reviewed-by: Maximilian Heyne
    Reviewed-by: Juergen Gross
    Link: https://lore.kernel.org/r/20220715225108.193398-4-sj@kernel.org
    Signed-off-by: Juergen Gross
    Signed-off-by: Greg Kroah-Hartman

    SeongJae Park
     
  • commit e94c6101e151b019b8babc518ac2a6ada644a5a1 upstream.

    In some use cases[1], the backend is created while the frontend doesn't
    support the persistent grants feature, but later the frontend can be
    changed to support the feature and reconnect. In the past, 'blkback'
    enabled the persistent grants feature since it unconditionally checked
    if frontend supports the persistent grants feature for every connect
    ('connect_ring()') and decided whether it should use persistent grans or
    not.

    However, commit aac8a70db24b ("xen-blkback: add a parameter for
    disabling of persistent grants") has mistakenly changed the behavior.
    It made the frontend feature support check to not be repeated once it
    shown the 'feature_persistent' as 'false', or the frontend doesn't
    support persistent grants.

    This commit changes the behavior of the parameter to make effect for
    every connect, so that the previous workflow can work again as expected.

    [1] https://lore.kernel.org/xen-devel/CAJwUmVB6H3iTs-C+U=v-pwJB7-_ZRHPxHzKRJZ22xEPW7z8a=g@mail.gmail.com/

    Reported-by: Andrii Chepurnyi
    Fixes: aac8a70db24b ("xen-blkback: add a parameter for disabling of persistent grants")
    Cc: # 5.10.x
    Signed-off-by: Maximilian Heyne
    Signed-off-by: SeongJae Park
    Reviewed-by: Maximilian Heyne
    Reviewed-by: Juergen Gross
    Link: https://lore.kernel.org/r/20220715225108.193398-3-sj@kernel.org
    Signed-off-by: Juergen Gross
    Signed-off-by: Greg Kroah-Hartman

    Maximilian Heyne
     

29 Jun, 2022

1 commit

  • [ Upstream commit f1a633b15cd5371a2a83f02c513984e51132dd68 ]

    The documentation missed the "in_" prefix for this IIO_SHARED_BY_DIR
    entry.

    Fixes: bf04c1a367e3 ("iio: adc: vf610: implement configurable conversion modes")
    Signed-off-by: Baruch Siach
    Acked-by: Haibo Chen
    Link: https://lore.kernel.org/r/560dc93fafe5ef7e9a409885fd20b6beac3973d8.1653900626.git.baruch@tkos.co.il
    Signed-off-by: Jonathan Cameron
    Signed-off-by: Sasha Levin

    Baruch Siach
     

16 Jun, 2022

1 commit

  • commit 8d50cdf8b8341770bc6367bce40c0c1bb0e1d5b3 upstream

    Add the sysfs reporting file for Processor MMIO Stale Data
    vulnerability. It exposes the vulnerability and mitigation state similar
    to the existing files for the other hardware vulnerabilities.

    Signed-off-by: Pawan Gupta
    Signed-off-by: Borislav Petkov
    Signed-off-by: Thomas Gleixner
    Signed-off-by: Greg Kroah-Hartman

    Pawan Gupta
     

15 Jun, 2022

1 commit

  • commit 72aad489f992871e908ff6d9055b26c6366fb864 upstream.

    The {dma|pio}_mode sysfs files are incorrectly documented as having a
    list of the supported DMA/PIO transfer modes, while the corresponding
    fields of the *struct* ata_device hold the transfer mode IDs, not masks.

    To match these docs, the {dma|pio}_mode (and even xfer_mode!) sysfs
    files are handled by the ata_bitfield_name_match() macro which leads to
    reading such kind of nonsense from them:

    $ cat /sys/class/ata_device/dev3.0/pio_mode
    XFER_UDMA_7, XFER_UDMA_6, XFER_UDMA_5, XFER_UDMA_4, XFER_MW_DMA_4,
    XFER_PIO_6, XFER_PIO_5, XFER_PIO_4, XFER_PIO_3, XFER_PIO_2, XFER_PIO_1,
    XFER_PIO_0

    Using the correct ata_bitfield_name_search() macro fixes that:

    $ cat /sys/class/ata_device/dev3.0/pio_mode
    XFER_PIO_4

    While fixing the file documentation, somewhat reword the {dma|pio}_mode
    file doc and add a note about being mostly useful for PATA devices to
    the xfer_mode file doc...

    Fixes: d9027470b886 ("[libata] Add ATA transport class")
    Signed-off-by: Sergey Shtylyov
    Cc: stable@vger.kernel.org
    Signed-off-by: Damien Le Moal
    Signed-off-by: Greg Kroah-Hartman

    Sergey Shtylyov
     

08 Apr, 2022

1 commit

  • [ Upstream commit ba900534f807f0b327c92d5141c85d2313e2d55c ]

    Let's purge inode cache in order to avoid the below deadlock.

    [freeze test] shrinkder
    freeze_super
    - pwercpu_down_write(SB_FREEZE_FS)
    - super_cache_scan
    - down_read(&sb->s_umount)
    - prune_icache_sb
    - dispose_list
    - evict
    - f2fs_evict_inode
    thaw_super
    - down_write(&sb->s_umount);
    - __percpu_down_read(SB_FREEZE_FS)

    Reviewed-by: Chao Yu
    Signed-off-by: Jaegeuk Kim
    Signed-off-by: Sasha Levin

    Jaegeuk Kim
     

11 Sep, 2021

1 commit

  • Pull habanalabs updates from Greg KH:
    "Here is another round of misc driver patches for 5.15-rc1.

    In here is only updates for the Habanalabs driver. This request is
    late because the previously-objected-to dma-buf patches are all
    removed and some fixes that you and others found are now included in
    here as well.

    All of these have been in linux-next for well over a week with no
    reports of problems, and they are all self-contained to only this one
    driver. Full details are in the shortlog"

    * tag 'char-misc-5.15-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (61 commits)
    habanalabs/gaudi: hwmon default card name
    habanalabs: add support for f/w reset
    habanalabs/gaudi: block ICACHE_BASE_ADDERESS_HIGH in TPC
    habanalabs: cannot sleep while holding spinlock
    habanalabs: never copy_from_user inside spinlock
    habanalabs: remove unnecessary device status check
    habanalabs: disable IRQ in user interrupts spinlock
    habanalabs: add "in device creation" status
    habanalabs/gaudi: invalidate PMMU mem cache on init
    habanalabs/gaudi: size should be printed in decimal
    habanalabs/gaudi: define DC POWER for secured PMC
    habanalabs/gaudi: unmask out of bounds SLM access interrupt
    habanalabs: add userptr_lookup node in debugfs
    habanalabs/gaudi: fetch TPC/MME ECC errors from F/W
    habanalabs: modify multi-CS to wait on stream masters
    habanalabs/gaudi: add monitored SOBs to state dump
    habanalabs/gaudi: restore user registers when context opens
    habanalabs/gaudi: increase boot fit timeout
    habanalabs: update to latest firmware headers
    habanalabs/gaudi: minimize number of register reads
    ...

    Linus Torvalds
     

10 Sep, 2021

1 commit

  • Pull dmaengine updates from Vinod Koul:
    "New drivers/devices
    - Support for Renesas RZ/G2L dma controller
    - New driver for AMD PTDMA controller

    Updates:
    - Big pile of idxd updates
    - Updates for Altera driver, stm32-dma, dw etc"

    * tag 'dmaengine-5.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/dmaengine: (83 commits)
    dmaengine: sh: fix some NULL dereferences
    dmaengine: sh: Fix unused initialization of pointer lmdesc
    MAINTAINERS: Fix AMD PTDMA DRIVER entry
    dmaengine: ptdma: remove PT_OFFSET to avoid redefnition
    dmaengine: ptdma: Add debugfs entries for PTDMA
    dmaengine: ptdma: register PTDMA controller as a DMA resource
    dmaengine: ptdma: Initial driver for the AMD PTDMA
    dmaengine: fsl-dpaa2-qdma: Fix spelling mistake "faile" -> "failed"
    dmaengine: idxd: remove interrupt disable for dev_lock
    dmaengine: idxd: remove interrupt disable for cmd_lock
    dmaengine: idxd: fix setting up priv mode for dwq
    dmaengine: xilinx_dma: Set DMA mask for coherent APIs
    dmaengine: ti: k3-psil-j721e: Add entry for CSI2RX
    dmaengine: sh: Add DMAC driver for RZ/G2L SoC
    dmaengine: Extend the dma_slave_width for 128 bytes
    dt-bindings: dma: Document RZ/G2L bindings
    dmaengine: ioat: depends on !UML
    dmaengine: idxd: set descriptor allocation size to threshold for swq
    dmaengine: idxd: make submit failure path consistent on desc freeing
    dmaengine: idxd: remove interrupt flag for completion list spinlock
    ...

    Linus Torvalds
     

08 Sep, 2021

1 commit

  • Pull PCI updates from Bjorn Helgaas:
    "Enumeration:
    - Convert controller drivers to generic_handle_domain_irq() (Marc
    Zyngier)
    - Simplify VPD (Vital Product Data) access and search (Heiner
    Kallweit)
    - Update bnx2, bnx2x, bnxt, cxgb4, cxlflash, sfc, tg3 drivers to use
    simplified VPD interfaces (Heiner Kallweit)
    - Run Max Payload Size quirks before configuring MPS; work around
    ASMedia ASM1062 SATA MPS issue (Marek Behún)

    Resource management:
    - Refactor pci_ioremap_bar() and pci_ioremap_wc_bar() (Krzysztof
    Wilczyński)
    - Optimize pci_resource_len() to reduce kernel size (Zhen Lei)

    PCI device hotplug:
    - Fix a double unmap in ibmphp (Vishal Aslot)

    PCIe port driver:
    - Enable Bandwidth Notification only if port supports it (Stuart
    Hayes)

    Sysfs/proc/syscalls:
    - Add schedule point in proc_bus_pci_read() (Krzysztof Wilczyński)
    - Return ~0 data on pciconfig_read() CAP_SYS_ADMIN failure (Krzysztof
    Wilczyński)
    - Return "int" from pciconfig_read() syscall (Krzysztof Wilczyński)

    Virtualization:
    - Extend "pci=noats" to also turn on Translation Blocking to protect
    against some DMA attacks (Alex Williamson)
    - Add sysfs mechanism to control the type of reset used between
    device assignments to VMs (Amey Narkhede)
    - Add support for ACPI _RST reset method (Shanker Donthineni)
    - Add ACS quirks for Cavium multi-function devices (George Cherian)
    - Add ACS quirks for NXP LX2xx0 and LX2xx2 platforms (Wasim Khan)
    - Allow HiSilicon AMBA devices that appear as fake PCI devices to use
    PASID and SVA (Zhangfei Gao)

    Endpoint framework:
    - Add support for SR-IOV Endpoint devices (Kishon Vijay Abraham I)
    - Zero-initialize endpoint test tool parameters so we don't use
    random parameters (Shunyong Yang)

    APM X-Gene PCIe controller driver:
    - Remove redundant dev_err() call in xgene_msi_probe() (ErKun Yang)

    Broadcom iProc PCIe controller driver:
    - Don't fail devm_pci_alloc_host_bridge() on missing 'ranges' because
    it's optional on BCMA devices (Rob Herring)
    - Fix BCMA probe resource handling (Rob Herring)

    Cadence PCIe driver:
    - Work around J7200 Link training electrical issue by increasing
    delays in LTSSM (Nadeem Athani)

    Intel IXP4xx PCI controller driver:
    - Depend on ARCH_IXP4XX to avoid useless config questions (Geert
    Uytterhoeven)

    Intel Keembay PCIe controller driver:
    - Add Intel Keem Bay PCIe controller (Srikanth Thokala)

    Marvell Aardvark PCIe controller driver:
    - Work around config space completion handling issues (Evan Wang)
    - Increase timeout for config access completions (Pali Rohár)
    - Emulate CRS Software Visibility bit (Pali Rohár)
    - Configure resources from DT 'ranges' property to fix I/O space
    access (Pali Rohár)
    - Serialize INTx mask/unmask (Pali Rohár)

    MediaTek PCIe controller driver:
    - Add MT7629 support in DT (Chuanjia Liu)
    - Fix an MSI issue (Chuanjia Liu)
    - Get syscon regmap ("mediatek,generic-pciecfg"), IRQ number
    ("pci_irq"), PCI domain ("linux,pci-domain") from DT properties if
    present (Chuanjia Liu)

    Microsoft Hyper-V host bridge driver:
    - Add ARM64 support (Boqun Feng)
    - Support "Create Interrupt v3" message (Sunil Muthuswamy)

    NVIDIA Tegra PCIe controller driver:
    - Use seq_puts(), move err_msg from stack to static, fix OF node leak
    (Christophe JAILLET)

    NVIDIA Tegra194 PCIe driver:
    - Disable suspend when in Endpoint mode (Om Prakash Singh)
    - Fix MSI-X address programming error (Om Prakash Singh)
    - Disable interrupts during suspend to avoid spurious AER link down
    (Om Prakash Singh)

    Renesas R-Car PCIe controller driver:
    - Work around hardware issue that prevents Link L1->L0 transition
    (Marek Vasut)
    - Fix runtime PM refcount leak (Dinghao Liu)

    Rockchip DesignWare PCIe controller driver:
    - Add Rockchip RK356X host controller driver (Simon Xue)

    TI J721E PCIe driver:
    - Add support for J7200 and AM64 (Kishon Vijay Abraham I)

    Toshiba Visconti PCIe controller driver:
    - Add Toshiba Visconti PCIe host controller driver (Nobuhiro
    Iwamatsu)

    Xilinx NWL PCIe controller driver:
    - Enable PCIe reference clock via CCF (Hyun Kwon)

    Miscellaneous:
    - Convert sta2x11 from 'pci_' to 'dma_' API (Christophe JAILLET)
    - Fix pci_dev_str_match_path() alloc while atomic bug (used for
    kernel parameters that specify devices) (Dan Carpenter)
    - Remove pointless Precision Time Management warning when PTM is
    present but not enabled (Jakub Kicinski)
    - Remove surplus "break" statements (Krzysztof Wilczyński)"

    * tag 'pci-v5.15-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (132 commits)
    PCI: ibmphp: Fix double unmap of io_mem
    x86/PCI: sta2x11: switch from 'pci_' to 'dma_' API
    PCI/VPD: Use unaligned access helpers
    PCI/VPD: Clean up public VPD defines and inline functions
    cxgb4: Use pci_vpd_find_id_string() to find VPD ID string
    PCI/VPD: Add pci_vpd_find_id_string()
    PCI/VPD: Include post-processing in pci_vpd_find_tag()
    PCI/VPD: Stop exporting pci_vpd_find_info_keyword()
    PCI/VPD: Stop exporting pci_vpd_find_tag()
    PCI: Set dma-can-stall for HiSilicon chips
    PCI: rockchip-dwc: Add Rockchip RK356X host controller driver
    PCI: dwc: Remove surplus break statement after return
    PCI: artpec6: Remove local code block from switch statement
    PCI: artpec6: Remove surplus break statement after return
    MAINTAINERS: Add entries for Toshiba Visconti PCIe controller
    PCI: visconti: Add Toshiba Visconti PCIe host controller driver
    PCI/portdrv: Enable Bandwidth Notification only if port supports it
    PCI: Allow PASID on fake PCIe devices without TLP prefixes
    PCI: mediatek: Use PCI domain to handle ports detection
    PCI: mediatek: Add new method to get irq number
    ...

    Linus Torvalds
     

05 Sep, 2021

1 commit

  • Pull f2fs updates from Jaegeuk Kim:
    "In this cycle, we've addressed some performance issues such as lock
    contention, misbehaving compress_cache, allowing extent_cache for
    compressed files, and new sysfs to adjust ra_size for fadvise.

    In order to diagnose the performance issues quickly, we also added an
    iostat which shows the IO latencies periodically.

    On the stability side, we've found two memory leakage cases in the
    error path in compression flow. And, we've also fixed various corner
    cases in fiemap, quota, checkpoint=disable, zstd, and so on.

    Enhancements:
    - avoid long checkpoint latency by releasing nat_tree_lock
    - collect and show iostats periodically
    - support extent_cache for compressed files
    - add a sysfs entry to manage ra_size given fadvise(POSIX_FADV_SEQUENTIAL)
    - report f2fs GC status via sysfs
    - add discard_unit=%s in mount option to handle zoned device

    Bug fixes:
    - fix two memory leakages when an error happens in the compressed IO flow
    - fix commpress_cache to get the right LBA
    - fix fiemap to deal with compressed case correctly
    - fix wrong EIO returns due to SBI_NEED_FSCK
    - fix missing writes when enabling checkpoint back
    - fix quota deadlock
    - fix zstd level mount option

    In addition to the above major updates, we've cleaned up several code
    paths such as dio, unnecessary operations, debugfs/f2fs/status, sanity
    check, and typos"

    * tag 'f2fs-for-5.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs: (46 commits)
    f2fs: should put a page beyond EOF when preparing a write
    f2fs: deallocate compressed pages when error happens
    f2fs: enable realtime discard iff device supports discard
    f2fs: guarantee to write dirty data when enabling checkpoint back
    f2fs: fix to unmap pages from userspace process in punch_hole()
    f2fs: fix unexpected ENOENT comes from f2fs_map_blocks()
    f2fs: fix to account missing .skipped_gc_rwsem
    f2fs: adjust unlock order for cleanup
    f2fs: Don't create discard thread when device doesn't support realtime discard
    f2fs: rebuild nat_bits during umount
    f2fs: introduce periodic iostat io latency traces
    f2fs: separate out iostat feature
    f2fs: compress: do sanity check on cluster
    f2fs: fix description about main_blkaddr node
    f2fs: convert S_IRUGO to 0444
    f2fs: fix to keep compatibility of fault injection interface
    f2fs: support fault injection for f2fs_kmem_cache_alloc()
    f2fs: compress: allow write compress released file after truncate to zero
    f2fs: correct comment in segment.h
    f2fs: improve sbi status info in debugfs/f2fs/status
    ...

    Linus Torvalds
     

04 Sep, 2021

3 commits

  • Pull iommu updates from Joerg Roedel:

    - New DART IOMMU driver for Apple Silicon M1 chips

    - Optimizations for iommu_[map/unmap] performance

    - Selective TLB flush support for the AMD IOMMU driver to make it more
    efficient on emulated IOMMUs

    - Rework IOVA setup and default domain type setting to move more code
    out of IOMMU drivers and to support runtime switching between certain
    types of default domains

    - VT-d Updates from Lu Baolu:
    - Update the virtual command related registers
    - Enable Intel IOMMU scalable mode by default
    - Preset A/D bits for user space DMA usage
    - Allow devices to have more than 32 outstanding PRs
    - Various cleanups

    - ARM SMMU Updates from Will Deacon:
    SMMUv3:
    - Minor optimisation to avoid zeroing struct members on CMD submission
    - Increased use of batched commands to reduce submission latency
    - Refactoring in preparation for ECMDQ support
    SMMUv2:
    - Fix races when probing devices with identical StreamIDs
    - Optimise walk cache flushing for Qualcomm implementations
    - Allow deep sleep states for some Qualcomm SoCs with shared clocks

    - Various smaller optimizations, cleanups, and fixes

    * tag 'iommu-updates-v5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu: (85 commits)
    iommu/io-pgtable: Abstract iommu_iotlb_gather access
    iommu/arm-smmu: Fix missing unlock on error in arm_smmu_device_group()
    iommu/vt-d: Add present bit check in pasid entry setup helpers
    iommu/vt-d: Use pasid_pte_is_present() helper function
    iommu/vt-d: Drop the kernel doc annotation
    iommu/vt-d: Allow devices to have more than 32 outstanding PRs
    iommu/vt-d: Preset A/D bits for user space DMA usage
    iommu/vt-d: Enable Intel IOMMU scalable mode by default
    iommu/vt-d: Refactor Kconfig a bit
    iommu/vt-d: Remove unnecessary oom message
    iommu/vt-d: Update the virtual command related registers
    iommu: Allow enabling non-strict mode dynamically
    iommu: Merge strictness and domain type configs
    iommu: Only log strictness for DMA domains
    iommu: Expose DMA domain strictness via sysfs
    iommu: Express DMA strictness via the domain type
    iommu/vt-d: Prepare for multiple DMA domain types
    iommu/arm-smmu: Prepare for multiple DMA domain types
    iommu/amd: Prepare for multiple DMA domain types
    iommu: Introduce explicit type for non-strict DMA domains
    ...

    Linus Torvalds
     
  • Merge misc updates from Andrew Morton:
    "173 patches.

    Subsystems affected by this series: ia64, ocfs2, block, and mm (debug,
    pagecache, gup, swap, shmem, memcg, selftests, pagemap, mremap,
    bootmem, sparsemem, vmalloc, kasan, pagealloc, memory-failure,
    hugetlb, userfaultfd, vmscan, compaction, mempolicy, memblock,
    oom-kill, migration, ksm, percpu, vmstat, and madvise)"

    * emailed patches from Andrew Morton : (173 commits)
    mm/madvise: add MADV_WILLNEED to process_madvise()
    mm/vmstat: remove unneeded return value
    mm/vmstat: simplify the array size calculation
    mm/vmstat: correct some wrong comments
    mm/percpu,c: remove obsolete comments of pcpu_chunk_populated()
    selftests: vm: add COW time test for KSM pages
    selftests: vm: add KSM merging time test
    mm: KSM: fix data type
    selftests: vm: add KSM merging across nodes test
    selftests: vm: add KSM zero page merging test
    selftests: vm: add KSM unmerge test
    selftests: vm: add KSM merge test
    mm/migrate: correct kernel-doc notation
    mm: wire up syscall process_mrelease
    mm: introduce process_mrelease system call
    memblock: make memblock_find_in_range method private
    mm/mempolicy.c: use in_task() in mempolicy_slab_node()
    mm/mempolicy: unify the create() func for bind/interleave/prefer-many policies
    mm/mempolicy: advertise new MPOL_PREFERRED_MANY
    mm/hugetlb: add support for mempolicy MPOL_PREFERRED_MANY
    ...

    Linus Torvalds
     
  • Some method is obviously needed to enable reclaim-based migration.

    Just like traditional autonuma, there will be some workloads that will
    benefit like workloads with more "static" configurations where hot pages
    stay hot and cold pages stay cold. If pages come and go from the hot and
    cold sets, the benefits of this approach will be more limited.

    The benefits are truly workload-based and *not* hardware-based. We do not
    believe that there is a viable threshold where certain hardware
    configurations should have this mechanism enabled while others do not.

    To be conservative, earlier work defaulted to disable reclaim- based
    migration and did not include a mechanism to enable it. This proposes add
    a new sysfs file

    /sys/kernel/mm/numa/demotion_enabled

    as a method to enable it.

    We are open to any alternative that allows end users to enable this
    mechanism or disable it if workload harm is detected (just like
    traditional autonuma).

    Once this is enabled page demotion may move data to a NUMA node that does
    not fall into the cpuset of the allocating process. This could be
    construed to violate the guarantees of cpusets. However, since this is an
    opt-in mechanism, the assumption is that anyone enabling it is content to
    relax the guarantees.

    Link: https://lkml.kernel.org/r/20210721063926.3024591-9-ying.huang@intel.com
    Link: https://lkml.kernel.org/r/20210715055145.195411-10-ying.huang@intel.com
    Signed-off-by: Huang Ying
    Originally-by: Dave Hansen
    Cc: Michal Hocko
    Cc: Wei Xu
    Cc: Yang Shi
    Cc: Zi Yan
    Cc: David Rientjes
    Cc: Dan Williams
    Cc: David Hildenbrand
    Cc: Greg Thelen
    Cc: Keith Busch
    Cc: Oscar Salvador
    Cc: Yang Shi
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Huang Ying
     

03 Sep, 2021

3 commits

  • Pull SCSI updates from James Bottomley:
    "This series consists of the usual driver updates (ufs, qla2xxx,
    target, smartpqi, lpfc, mpt3sas).

    The core change causing the most churn was replacing the command
    request field request with a macro, allowing us to offset map to it
    and remove the redundant field; the same was also done for the tag
    field.

    The most impactful change is the final removal of scsi_ioctl, which
    has been deprecated for over a decade"

    * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (293 commits)
    scsi: ufs: Fix ufshcd_request_sense_async() for Samsung KLUFG8RHDA-B2D1
    scsi: ufs: ufs-exynos: Fix static checker warning
    scsi: mpt3sas: Use the proper SCSI midlayer interfaces for PI
    scsi: lpfc: Use the proper SCSI midlayer interfaces for PI
    scsi: lpfc: Copyright updates for 14.0.0.1 patches
    scsi: lpfc: Update lpfc version to 14.0.0.1
    scsi: lpfc: Add bsg support for retrieving adapter cmf data
    scsi: lpfc: Add cmf_info sysfs entry
    scsi: lpfc: Add debugfs support for cm framework buffers
    scsi: lpfc: Add support for maintaining the cm statistics buffer
    scsi: lpfc: Add rx monitoring statistics
    scsi: lpfc: Add support for the CM framework
    scsi: lpfc: Add cmfsync WQE support
    scsi: lpfc: Add support for cm enablement buffer
    scsi: lpfc: Add cm statistics buffer support
    scsi: lpfc: Add EDC ELS support
    scsi: lpfc: Expand FPIN and RDF receive logging
    scsi: lpfc: Add MIB feature enablement support
    scsi: lpfc: Add SET_HOST_DATA mbox cmd to pass date/time info to firmware
    scsi: fc: Add EDC ELS definition
    ...

    Linus Torvalds
     
  • …ernel/git/pdx86/platform-drivers-x86

    Pull x86 platform driver updates from Hans de Goede:
    "Highlights:

    - Move all the Intel drivers into their own subdir(s) (mostly Kate's
    work)

    - New meraki-mx100 platform driver

    - Asus WMI driver enhancements, including support for
    /sys/firmware/acpi/platform_profile

    - New BIOS SAR driver for Intel M.2 WWAM modems

    - Alder Lake support for the Intel PMC driver

    - A whole bunch of cleanups + fixes all over the place"

    * tag 'platform-drivers-x86-v5.15-1' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86: (65 commits)
    platform/x86: dell-smbios-wmi: Add missing kfree in error-exit from run_smbios_call
    platform/x86: dell-smbios-wmi: Avoid false-positive memcpy() warning
    platform/x86: ISST: use semi-colons instead of commas
    platform/x86: asus-wmi: Fix "unsigned 'retval' is never less than zero" smatch warning
    platform/x86: asus-wmi: Delete impossible condition
    platform/x86: hp_accel: Convert to be a platform driver
    platform/x86: hp_accel: Remove _INI method call
    platform/mellanox: mlxbf-pmc: fix kernel-doc notation
    platform/x86/intel: pmc/core: Add GBE Package C10 fix for Alder Lake PCH
    platform/x86/intel: pmc/core: Add Alder Lake low power mode support for pmc core
    platform/x86/intel: pmc/core: Add Latency Tolerance Reporting (LTR) support to Alder Lake
    platform/x86/intel: pmc/core: Add Alderlake support to pmc core driver
    platform/x86: intel-wmi-thunderbolt: Move to intel sub-directory
    platform/x86: intel-wmi-sbl-fw-update: Move to intel sub-directory
    platform/x86: intel-vbtn: Move to intel sub-directory
    platform/x86: intel_oaktrail: Move to intel sub-directory
    platform/x86: intel_int0002_vgpio: Move to intel sub-directory
    platform/x86: intel-hid: Move to intel sub-directory
    platform/x86: intel_atomisp2: Move to intel sub-directory
    platform/x86: intel_speed_select_if: Move to intel sub-directory
    ...

    Linus Torvalds
     
  • Pull integrity subsystem updates from Mimi Zohar:

    - Limit the allowed hash algorithms when writing security.ima xattrs or
    verifying them, based on the IMA policy and the configured hash
    algorithms.

    - Return the calculated "critical data" measurement hash and size to
    avoid code duplication. (Preparatory change for a proposed LSM.)

    - and a single patch to address a compiler warning.

    * tag 'integrity-v5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity:
    IMA: reject unknown hash algorithms in ima_get_hash_algo
    IMA: prevent SETXATTR_CHECK policy rules with unavailable algorithms
    IMA: introduce a new policy option func=SETXATTR_CHECK
    IMA: add a policy option to restrict xattr hash algorithms on appraisal
    IMA: add support to restrict the hash algorithms used for file appraisal
    IMA: block writes of the security.ima xattr with unsupported algorithms
    IMA: remove the dependency on CRYPTO_MD5
    ima: Add digest and digest_len params to the functions to measure a buffer
    ima: Return int in the functions to measure a buffer
    ima: Introduce ima_get_current_hash_algo()
    IMA: remove -Wmissing-prototypes warning

    Linus Torvalds
     

02 Sep, 2021

5 commits

  • Pull arm64 updates from Catalin Marinas:

    - Support for 32-bit tasks on asymmetric AArch32 systems (on top of the
    scheduler changes merged via the tip tree).

    - More entry.S clean-ups and conversion to C.

    - MTE updates: allow a preferred tag checking mode to be set per CPU
    (the overhead of synchronous mode is smaller for some CPUs than
    others); optimisations for kernel entry/exit path; optionally disable
    MTE on the kernel command line.

    - Kselftest improvements for SVE and signal handling, PtrAuth.

    - Fix unlikely race where a TLBI could use stale ASID on an ASID
    roll-over (found by inspection).

    - Miscellaneous fixes: disable trapping of PMSNEVFR_EL1 to higher
    exception levels; drop unnecessary sigdelsetmask() call in the
    signal32 handling; remove BUG_ON when failing to allocate SVE state
    (just signal the process); SYM_CODE annotations.

    - Other trivial clean-ups: use macros instead of magic numbers, remove
    redundant returns, typos.

    * tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: (56 commits)
    arm64: Do not trap PMSNEVFR_EL1
    arm64: mm: fix comment typo of pud_offset_phys()
    arm64: signal32: Drop pointless call to sigdelsetmask()
    arm64/sve: Better handle failure to allocate SVE register storage
    arm64: Document the requirement for SCR_EL3.HCE
    arm64: head: avoid over-mapping in map_memory
    arm64/sve: Add a comment documenting the binutils needed for SVE asm
    arm64/sve: Add some comments for sve_save/load_state()
    kselftest/arm64: signal: Add a TODO list for signal handling tests
    kselftest/arm64: signal: Add test case for SVE register state in signals
    kselftest/arm64: signal: Verify that signals can't change the SVE vector length
    kselftest/arm64: signal: Check SVE signal frame shows expected vector length
    kselftest/arm64: signal: Support signal frames with SVE register data
    kselftest/arm64: signal: Add SVE to the set of features we can check for
    arm64: replace in_irq() with in_hardirq()
    kselftest/arm64: pac: Fix skipping of tests on systems without PAC
    Documentation: arm64: describe asymmetric 32-bit support
    arm64: Remove logic to kill 32-bit tasks on 64-bit-only cores
    arm64: Hook up cmdline parameter to allow mismatched 32-bit EL0
    arm64: Advertise CPUs capable of running 32-bit applications in sysfs
    ...

    Linus Torvalds
     
  • Pull drm updates from Dave Airlie:
    "Highlights:

    - i915 has seen a lot of refactoring and uAPI cleanups due to a
    change in the upstream direction going forward

    This has all been audited with known userspace, but there may be
    some pitfalls that were missed.

    - i915 now uses common TTM to enable discrete memory on DG1/2 GPUs

    - i915 enables Jasper and Elkhart Lake by default and has preliminary
    XeHP/DG2 support

    - amdgpu adds support for Cyan Skillfish

    - lots of implicit fencing rules documented and fixed up in drivers

    - msm now uses the core scheduler

    - the irq midlayer has been removed for non-legacy drivers

    - the sysfb code now works on more than x86.

    Otherwise the usual smattering of stuff everywhere, panels, bridges,
    refactorings.

    Detailed summary:

    core:
    - extract i915 eDP backlight into core
    - DP aux bus support
    - drm_device.irq_enabled removed
    - port drivers to native irq interfaces
    - export gem shadow plane handling for vgem
    - print proper driver name in framebuffer registration
    - driver fixes for implicit fencing rules
    - ARM fixed rate compression modifier added
    - updated fb damage handling
    - rmfb ioctl logging/docs
    - drop drm_gem_object_put_locked
    - define DRM_FORMAT_MAX_PLANES
    - add gem fb vmap/vunmap helpers
    - add lockdep_assert(once) helpers
    - mark drm irq midlayer as legacy
    - use offset adjusted bo mapping conversion

    vgaarb:
    - cleanups

    fbdev:
    - extend efifb handling to all arches
    - div by 0 fixes for multiple drivers

    udmabuf:
    - add hugepage mapping support

    dma-buf:
    - non-dynamic exporter fixups
    - document implicit fencing rules

    amdgpu:
    - Initial Cyan Skillfish support
    - switch virtual DCE over to vkms based atomic
    - VCN/JPEG power down fixes
    - NAVI PCIE link handling fixes
    - AMD HDMI freesync fixes
    - Yellow Carp + Beige Goby fixes
    - Clockgating/S0ix/SMU/EEPROM fixes
    - embed hw fence in job
    - rework dma-resv handling
    - ensure eviction to system ram

    amdkfd:
    - uapi: SVM address range query added
    - sysfs leak fix
    - GPUVM TLB optimizations
    - vmfault/migration counters

    i915:
    - Enable JSL and EHL by default
    - preliminary XeHP/DG2 support
    - remove all CNL support (never shipped)
    - move to TTM for discrete memory support
    - allow mixed object mmap handling
    - GEM uAPI spring cleaning
    - add I915_MMAP_OBJECT_FIXED
    - reinstate ADL-P mmap ioctls
    - drop a bunch of unused by userspace features
    - disable and remove GPU relocations
    - revert some i915 misfeatures
    - major refactoring of GuC for Gen11+
    - execbuffer object locking separate step
    - reject caching/set-domain on discrete
    - Enable pipe DMC loading on XE-LPD and ADL-P
    - add PSF GV point support
    - Refactor and fix DDI buffer translations
    - Clean up FBC CFB allocation code
    - Finish INTEL_GEN() and friends macro conversions

    nouveau:
    - add eDP backlight support
    - implicit fence fix

    msm:
    - a680/7c3 support
    - drm/scheduler conversion

    panfrost:
    - rework GPU reset

    virtio:
    - fix fencing for planes

    ast:
    - add detect support

    bochs:
    - move to tiny GPU driver

    vc4:
    - use hotplug irqs
    - HDMI codec support

    vmwgfx:
    - use internal vmware device headers

    ingenic:
    - demidlayering irq

    rcar-du:
    - shutdown fixes
    - convert to bridge connector helpers

    zynqmp-dsub:
    - misc fixes

    mgag200:
    - convert PLL handling to atomic

    mediatek:
    - MT8133 AAL support
    - gem mmap object support
    - MT8167 support

    etnaviv:
    - NXP Layerscape LS1028A SoC support
    - GEM mmap cleanups

    tegra:
    - new user API

    exynos:
    - missing unlock fix
    - build warning fix
    - use refcount_t"

    * tag 'drm-next-2021-08-31-1' of git://anongit.freedesktop.org/drm/drm: (1318 commits)
    drm/amd/display: Move AllowDRAMSelfRefreshOrDRAMClockChangeInVblank to bounding box
    drm/amd/display: Remove duplicate dml init
    drm/amd/display: Update bounding box states (v2)
    drm/amd/display: Update number of DCN3 clock states
    drm/amdgpu: disable GFX CGCG in aldebaran
    drm/amdgpu: Clear RAS interrupt status on aldebaran
    drm/amdgpu: Add support for RAS XGMI err query
    drm/amdkfd: Account for SH/SE count when setting up cu masks.
    drm/amdgpu: rename amdgpu_bo_get_preferred_pin_domain
    drm/amdgpu: drop redundant cancel_delayed_work_sync call
    drm/amdgpu: add missing cleanups for more ASICs on UVD/VCE suspend
    drm/amdgpu: add missing cleanups for Polaris12 UVD/VCE on suspend
    drm/amdkfd: map SVM range with correct access permission
    drm/amdkfd: check access permisson to restore retry fault
    drm/amdgpu: Update RAS XGMI Error Query
    drm/amdgpu: Add driver infrastructure for MCA RAS
    drm/amd/display: Add Logging for HDMI color depth information
    drm/amd/amdgpu: consolidate PSP TA init shared buf functions
    drm/amd/amdgpu: add name field back to ras_common_if
    drm/amdgpu: Fix build with missing pm_suspend_target_state module export
    ...

    Linus Torvalds
     
  • …nux/kernel/git/ogabbay/linux into char-misc-next

    Oded writes:

    This tag contains habanalabs driver changes for v5.15:

    - Add a new uAPI (under the cs ioctl) to enable to user to reserve
    signals and signal them from within its workloads, while the driver
    performs the waiting. This allows finer granularity of pipelining
    between the different engines and resource utilization.

    - Add a new uAPI (under the wait_for_cs ioctl) to allow waiting
    on multiple command submissions (workloads) at the same time. This
    is an optimization for the user process so it won't need to call
    multiple times to the wait_for_cs ioctl.

    - Add new feature of "state dump", which can be triggered through new
    debugfs node. This is a similar concept to the kernel panic dump.
    This new mechanism retrieves information from the device in case
    one of the workloads that was sent by the user got stuck. This is
    very helpful for debugging the hang.

    - Add a new debugfs node to perform lookup of user pointers that are
    mapped to habana device's pmmu.

    - Fix to the tracking of user process when running inside a container.

    - Allow user to map more than 4GB of memory to the device MMU in single
    IOCTL call.

    - Minimize number of register reads done in GAUDI during user operation.

    - Allow user to retrieve the device's server type that the device is
    connected to.

    - Several fixes to the code of waiting on interrupts on behalf of the
    user.

    - Fixes and improvements to the hint mechanism in our VA allocation.

    - Update the firmware header files to the latest version while
    maintaining backward compatibility with older firmware versions.

    - Multiple fixes to various bugs.

    * tag 'misc-habanalabs-next-2021-09-01' of https://git.kernel.org/pub/scm/linux/kernel/git/ogabbay/linux: (61 commits)
    habanalabs/gaudi: hwmon default card name
    habanalabs: add support for f/w reset
    habanalabs/gaudi: block ICACHE_BASE_ADDERESS_HIGH in TPC
    habanalabs: cannot sleep while holding spinlock
    habanalabs: never copy_from_user inside spinlock
    habanalabs: remove unnecessary device status check
    habanalabs: disable IRQ in user interrupts spinlock
    habanalabs: add "in device creation" status
    habanalabs/gaudi: invalidate PMMU mem cache on init
    habanalabs/gaudi: size should be printed in decimal
    habanalabs/gaudi: define DC POWER for secured PMC
    habanalabs/gaudi: unmask out of bounds SLM access interrupt
    habanalabs: add userptr_lookup node in debugfs
    habanalabs/gaudi: fetch TPC/MME ECC errors from F/W
    habanalabs: modify multi-CS to wait on stream masters
    habanalabs/gaudi: add monitored SOBs to state dump
    habanalabs/gaudi: restore user registers when context opens
    habanalabs/gaudi: increase boot fit timeout
    habanalabs: update to latest firmware headers
    habanalabs/gaudi: minimize number of register reads
    ...

    Greg Kroah-Hartman
     
  • Pull USB / Thunderbolt updates from Greg KH:
    "Here is the big set of USB and Thunderbolt patches for 5.15-rc1.

    Nothing huge in here, just lots of constant forward progress on a
    number of different drivers and hardware support:

    - more USB 4/Thunderbolt support added

    - dwc3 driver updates and additions

    - usb gadget fixes and addtions for new types

    - udc gadget driver updates

    - host controller updates

    - removal of obsolete drivers

    - other minor driver updates

    All of these have been in linux-next for a while with no reported
    issues"

    * tag 'usb-5.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (148 commits)
    usb: isp1760: otg control register access
    usb: isp1760: use the right irq status bit
    usb: isp1760: write to status and address register
    usb: isp1760: fix qtd fill length
    usb: isp1760: fix memory pool initialization
    usb: typec: tcpm: Fix spelling mistake "atleast" -> "at least"
    usb: dwc2: Fix spelling mistake "was't" -> "wasn't"
    usb: renesas_usbhs: Fix spelling mistake "faile" -> "failed"
    usb: host: xhci-rcar: Don't reload firmware after the completion
    usb: xhci-mtk: allow bandwidth table rollover
    usb: mtu3: fix random remote wakeup
    usb: mtu3: return successful suspend status
    usb: xhci-mtk: Do not use xhci's virt_dev in drop_endpoint
    usb: xhci-mtk: modify the SOF/ITP interval for mt8195
    usb: xhci-mtk: add a member of num_esit
    usb: xhci-mtk: check boundary before check tt
    usb: xhci-mtk: update fs bus bandwidth by bw_budget_table
    usb: xhci-mtk: fix issue of out-of-bounds array access
    usb: xhci-mtk: support option to disable usb2 ports
    usb: xhci-mtk: fix use-after-free of mtk->hcd
    ...

    Linus Torvalds
     
  • Pull IIO and staging driver updates from Greg KH:
    "Here is the big set of staging and IIO driver updates for 5.15-rc1.
    Also included in here are the counter driver subsystem updates as the
    IIO drivers needed them.

    Lots of churn in some staging drivers, we dropped the "old" rtl8188eu
    driver and replaced it with a newer version of the driver that had
    been maintained out-of-tree by Larry with the end goal of actually
    being able to get this driver out of staging eventually. Despite that
    driver being "newer" the line count of this pull request is going up.

    Some drivers moved out of staging as well, which is always nice to
    see, that is why there are additions to the mfc and misc driver
    subsystems. All of these were acked by the various subsystem
    maintainers involved.

    But by far, as normal, it's coding style cleanups all over the
    drivers/staging/ tree in here.

    Full details of these changes are in the shortlog.

    All of these have been in linux-next for a while with no reported
    problems"

    [ Note: the r8188eu merge clashed with commit 89939e890605 ("staging:
    rtlwifi: use siocdevprivate") from the networking tree. When resolving
    the issue, I noted that the whole r8188eu rtw_android code is dead
    since commit ae7471cae00a ("staging: r8188eu: remove rtw_ioctl
    function").

    End result: the merge resolution was to throw all of that away,
    rather than do the mindless fixup to code that isn't actually
    reachable - Linus ]

    * tag 'staging-5.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (551 commits)
    staging: vt6655: Remove filenames in files
    staging: r8188eu: add extra TODO entries
    staging: vt6656: Remove filenames in files
    staging: wlan-ng: fix invalid assignment warning
    staging: r8188eu: rename fields of struct rtl_ps
    staging: r8188eu: remove ODM_DynamicPrimaryCCA_DupRTS()
    staging: r8188eu: rename fields of struct dyn_primary_cca
    staging: r8188eu: rename struct field Wifi_Error_Status
    staging: r8188eu: Provide a TODO file for this driver
    staging: r8188eu: remove unneeded variable
    staging: r8188eu: remove unneeded conversions to bool
    staging: r8188eu: remove {read,write}_macreg
    staging: r8188eu: core: remove condition with no effect
    staging: r8188eu: remove ethernet.h header file
    staging: r8188eu: remove ip.h header file
    staging: r8188eu: remove if_ether.h header file
    staging: r8188eu: make rtw_deinit_intf_priv return void
    staging: r8188eu: use is_multicast_ether_addr in os_dep/recv_linux.c
    staging: r8188eu: use is_multicast_ether_addr in hal/rtl8188eu_xmit.c
    staging: r8188eu: use is_multicast_ether_addr in core/rtw_xmit.c
    ...

    Linus Torvalds
     

01 Sep, 2021

3 commits

  • It is useful to have the ability to see which user address was pinned
    to which physical address during the initial mapping. We already have
    all that info stored, but no means to search this data (which may be
    quite large).

    Signed-off-by: Yuri Nudelman
    Reviewed-by: Oded Gabbay
    Signed-off-by: Oded Gabbay

    Yuri Nudelman
     
  • Pull char / misc driver updates from Greg KH:
    "Here is the big set of char/misc driver changes for 5.15-rc1.

    Lots of different driver subsystems are being updated in here,
    notably:

    - mhi subsystem update

    - fpga subsystem update

    - coresight/hwtracing subsystem update

    - interconnect subsystem update

    - nvmem subsystem update

    - parport drivers update

    - phy subsystem update

    - soundwire subsystem update

    and there are some other char/misc drivers being updated as well:

    - binder driver additions

    - new misc drivers

    - lkdtm driver updates

    - mei driver updates

    - sram driver updates

    - other minor driver updates.

    Note, there are no habanalabs driver updates in this pull request,
    that will probably come later before -rc1 is out in a different
    request.

    All of these have been in linux-next for a while with no reported
    problems"

    * tag 'char-misc-5.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (169 commits)
    Revert "bus: mhi: Add inbound buffers allocation flag"
    misc/pvpanic: fix set driver data
    VMCI: fix NULL pointer dereference when unmapping queue pair
    char: mware: fix returnvar.cocci warnings
    parport: remove non-zero check on count
    soundwire: cadence: do not extend reset delay
    soundwire: intel: conditionally exit clock stop mode on system suspend
    soundwire: intel: skip suspend/resume/wake when link was not started
    soundwire: intel: fix potential race condition during power down
    phy: qcom-qmp: Add support for SM6115 UFS phy
    dt-bindings: phy: qcom,qmp: Add SM6115 UFS PHY bindings
    phy: qmp: Provide unique clock names for DP clocks
    lkdtm: remove IDE_CORE_CP crashpoint
    lkdtm: replace SCSI_DISPATCH_CMD with SCSI_QUEUE_RQ
    coresight: Replace deprecated CPU-hotplug functions.
    Documentation: coresight: Add documentation for CoreSight config
    coresight: syscfg: Add initial configfs support
    coresight: config: Add preloaded configurations
    coresight: etm4x: Add complex configuration handlers to etmv4
    coresight: etm-perf: Update to activate selected configuration
    ...

    Linus Torvalds
     
  • Pull ACPI updates from Rafael Wysocki:
    "These update the ACPICA kernel code to upstream revision 20210730,
    clean up the ACPI companion binding code, optimize the I2C handling in
    the XPower PMIC driver, add 16550-compatible Serial Port Subtype
    support to the SPCR parsing code, add a few LoongArch support bits,
    add a ne quirk to the button driver, add new PCH FIVR methods to the
    DPTF code, replace deprecated CPU-hotplug functions in the processor
    driver, improve the acpi_os_map_memory() handling on non-x86 and do
    some assorted cleanups.

    Specifics:

    - Update ACPICA code in the kernel to upstream revision 20210730
    including the following changes:
    - Add support for the AEST table (data compiler) to iASL (Bob
    Moore)
    - Fix an if statement (add parens) (Bob Moore)
    - Drop trailing semicolon from some macros (Bob Moore)
    - Fix compilation of WPBT table with no command-line arguments in
    iASL (Bob Moore)
    - Add method name "_DIS" for use with aslmethod.c (Bob Moore)
    - Add new DBG2 Serial Port Subtypes (Marcin Wojtas)

    - Add new PCH FIVR methods to the DPTF code (Srinivas Pandruvada)

    - Add support for the new 16550-compatible Serial Port Subtype to the
    SPCR table parsing code (Marcin Wojtas)

    - Add DMI quirk for Lenovo Yoga 9 (14INTL5) to the ACPI button driver
    (Ulrich Huber)

    - Add LoongArch support for ACPI_PROCESSOR/ACPI_NUMA (Huacai Chen)

    - Add memory semantics to acpi_os_map_memory() (Lorenzo Pieralisi)

    - Replace deprecated CPU-hotplug functions in the ACPI processor
    driver (Sebastian Andrzej Siewior)

    - Optimize I2C-bus handling in the XPower PMIC driver (Hans de Goede)

    - Make platform-profile catch profile changes initiated by user space
    and notify user processes of them (Hans de Goede)

    - Clean up the ACPI companion binding and unbinding code and update
    debug messaging in the ACPI power resources code (Rafael Wysocki)

    - Clean up a couple of code pieces related to configfs (Andy
    Shevchenko)

    - Rearrange the FPDT table parsing code to avoid printing warning
    messages for reserved record types (Adrian Huang)"

    * tag 'acpi-5.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (27 commits)
    ACPI: power: Drop name from struct acpi_power_resource
    ACPI: power: Use acpi_handle_debug() to print debug messages
    ACPI: tables: FPDT: Do not print FW_BUG message if record types are reserved
    ACPI: button: Add DMI quirk for Lenovo Yoga 9 (14INTL5)
    ACPI: Add memory semantics to acpi_os_map_memory()
    ACPI: SPCR: Add support for the new 16550-compatible Serial Port Subtype
    ACPI: platform-profile: call sysfs_notify() from platform_profile_store()
    ACPICA: Update version to 20210730
    ACPICA: Add method name "_DIS" For use with aslmethod.c
    ACPICA: iASL: Fix for WPBT table with no command-line arguments
    ACPICA: Headers: Add new DBG2 Serial Port Subtypes
    ACPICA: Macros should not use a trailing semicolon
    ACPICA: Fix an if statement (add parens)
    ACPICA: iASL: Add support for the AEST table (data compiler)
    ACPI: processor: Replace deprecated CPU-hotplug functions
    ACPI: DPTF: Add new PCH FIVR methods
    ACPI: configfs: Make get_header() to return error pointer
    ACPI: configfs: Use sysfs_emit() in "show" functions
    driver core: Split device_platform_notify()
    software nodes: Split software_node_notify()
    ...

    Linus Torvalds
     

31 Aug, 2021

5 commits

  • * tip/sched/arm64: (785 commits)
    Documentation: arm64: describe asymmetric 32-bit support
    arm64: Remove logic to kill 32-bit tasks on 64-bit-only cores
    arm64: Hook up cmdline parameter to allow mismatched 32-bit EL0
    arm64: Advertise CPUs capable of running 32-bit applications in sysfs
    arm64: Prevent offlining first CPU with 32-bit EL0 on mismatched system
    arm64: exec: Adjust affinity for compat tasks with mismatched 32-bit EL0
    arm64: Implement task_cpu_possible_mask()
    sched: Introduce dl_task_check_affinity() to check proposed affinity
    sched: Allow task CPU affinity to be restricted on asymmetric systems
    sched: Split the guts of sched_setaffinity() into a helper function
    sched: Introduce task_struct::user_cpus_ptr to track requested affinity
    sched: Reject CPU affinity changes based on task_cpu_possible_mask()
    cpuset: Cleanup cpuset_cpus_allowed_fallback() use in select_fallback_rq()
    cpuset: Honour task_cpu_possible_mask() in guarantee_online_cpus()
    cpuset: Don't use the cpu_possible_mask as a last resort for cgroup v1
    sched: Introduce task_cpu_possible_mask() to limit fallback rq selection
    sched: Cgroup SCHED_IDLE support
    sched/topology: Skip updating masks for non-online nodes
    Linux 5.14-rc6
    lib: use PFN_PHYS() in devmem_is_allowed()
    ...

    Catalin Marinas
     
  • Pull libata updates from Jens Axboe:
    "libata changes for the 5.15 release:

    - NCQ priority improvements (Damien, Niklas)

    - coccinelle warning fix (Jing)

    - dwc_460ex phy fix (Andy)"

    * tag 'for-5.15/libata-2021-08-30' of git://git.kernel.dk/linux-block:
    include:libata: fix boolreturn.cocci warnings
    docs: sysfs-block-device: document ncq_prio_supported
    docs: sysfs-block-device: improve ncq_prio_enable documentation
    libata: Introduce ncq_prio_supported sysfs sttribute
    libata: print feature list on device scan
    libata: fix ata_read_log_page() warning
    libata: cleanup NCQ priority handling
    libata: cleanup ata_dev_configure()
    libata: cleanup device sleep capability detection
    libata: simplify ata_scsi_rbuf_fill()
    libata: fix ata_host_start()
    ata: sata_dwc_460ex: No need to call phy_exit() befre phy_init()

    Linus Torvalds
     
  • Pull block updates from Jens Axboe:
    "Nothing major in here - lots of good cleanups and tech debt handling,
    which is also evident in the diffstats. In particular:

    - Add disk sequence numbers (Matteo)

    - Discard merge fix (Ming)

    - Relax disk zoned reporting restrictions (Niklas)

    - Bio error handling zoned leak fix (Pavel)

    - Start of proper add_disk() error handling (Luis, Christoph)

    - blk crypto fix (Eric)

    - Non-standard GPT location support (Dmitry)

    - IO priority improvements and cleanups (Damien)o

    - blk-throtl improvements (Chunguang)

    - diskstats_show() stack reduction (Abd-Alrhman)

    - Loop scheduler selection (Bart)

    - Switch block layer to use kmap_local_page() (Christoph)

    - Remove obsolete disk_name helper (Christoph)

    - block_device refcounting improvements (Christoph)

    - Ensure gendisk always has a request queue reference (Christoph)

    - Misc fixes/cleanups (Shaokun, Oliver, Guoqing)"

    * tag 'for-5.15/block-2021-08-30' of git://git.kernel.dk/linux-block: (129 commits)
    sg: pass the device name to blk_trace_setup
    block, bfq: cleanup the repeated declaration
    blk-crypto: fix check for too-large dun_bytes
    blk-zoned: allow BLKREPORTZONE without CAP_SYS_ADMIN
    blk-zoned: allow zone management send operations without CAP_SYS_ADMIN
    block: mark blkdev_fsync static
    block: refine the disk_live check in del_gendisk
    mmc: sdhci-tegra: Enable MMC_CAP2_ALT_GPT_TEGRA
    mmc: block: Support alternative_gpt_sector() operation
    partitions/efi: Support non-standard GPT location
    block: Add alternative_gpt_sector() operation
    bio: fix page leak bio_add_hw_page failure
    block: remove CONFIG_DEBUG_BLOCK_EXT_DEVT
    block: remove a pointless call to MINOR() in device_add_disk
    null_blk: add error handling support for add_disk()
    virtio_blk: add error handling support for add_disk()
    block: add error handling for device_add_disk / add_disk
    block: return errors from disk_alloc_events
    block: return errors from blk_integrity_add
    block: call blk_register_queue earlier in device_add_disk
    ...

    Linus Torvalds
     
  • Pull irq updates from Thomas Gleixner:
    "Updates to the interrupt core and driver subsystems:

    Core changes:

    - The usual set of small fixes and improvements all over the place,
    but nothing stands out

    MSI changes:

    - Further consolidation of the PCI/MSI interrupt chip code

    - Make MSI sysfs code independent of PCI/MSI and expose the MSI
    interrupts of platform devices in the same way as PCI exposes them.

    Driver changes:

    - Support for ARM GICv3 EPPI partitions

    - Treewide conversion to generic_handle_domain_irq() for all chained
    interrupt controllers

    - Conversion to bitmap_zalloc() throughout the irq chip drivers

    - The usual set of small fixes and improvements"

    * tag 'irq-core-2021-08-30' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (57 commits)
    platform-msi: Add ABI to show msi_irqs of platform devices
    genirq/msi: Move MSI sysfs handling from PCI to MSI core
    genirq/cpuhotplug: Demote debug printk to KERN_DEBUG
    irqchip/qcom-pdc: Trim unused levels of the interrupt hierarchy
    irqdomain: Export irq_domain_disconnect_hierarchy()
    irqchip/gic-v3: Fix priority comparison when non-secure priorities are used
    irqchip/apple-aic: Fix irq_disable from within irq handlers
    pinctrl/rockchip: drop the gpio related codes
    gpio/rockchip: drop irq_gc_lock/irq_gc_unlock for irq set type
    gpio/rockchip: support next version gpio controller
    gpio/rockchip: use struct rockchip_gpio_regs for gpio controller
    gpio/rockchip: add driver for rockchip gpio
    dt-bindings: gpio: change items restriction of clock for rockchip,gpio-bank
    pinctrl/rockchip: add pinctrl device to gpio bank struct
    pinctrl/rockchip: separate struct rockchip_pin_bank to a head file
    pinctrl/rockchip: always enable clock for gpio controller
    genirq: Fix kernel doc indentation
    EDAC/altera: Convert to generic_handle_domain_irq()
    powerpc: Bulk conversion to generic_handle_domain_irq()
    nios2: Bulk conversion to generic_handle_domain_irq()
    ...

    Linus Torvalds
     
  • * acpi-dptf:
    ACPI: DPTF: Add new PCH FIVR methods

    * acpi-processor:
    ACPI: processor: Replace deprecated CPU-hotplug functions

    * acpi-tables:
    ACPI: tables: FPDT: Do not print FW_BUG message if record types are reserved
    ACPI: SPCR: Add support for the new 16550-compatible Serial Port Subtype

    * acpi-platform:
    ACPI: platform-profile: call sysfs_notify() from platform_profile_store()

    Rafael J. Wysocki
     

29 Aug, 2021

1 commit

  • To improve the user's ability to debug the case where a workload that
    is part of executing training/inference of a topology is getting stuck,
    we need to add a 'core dump' each time a CS times-out. The 'core dump'
    shall contain all relevant Sync Manager information and corresponding
    fence values.

    The most recent dumps shall be accessible via debugfs, under
    'state_dump' node. Reading from the node will provide the oldest dump
    available. Writing an integer value X will discard X dumps, starting
    with the oldest one, i.e. subsequent read will now return newer
    dumps.

    Signed-off-by: Yuri Nudelman
    Reviewed-by: Oded Gabbay
    Signed-off-by: Oded Gabbay

    Yuri Nudelman
     

26 Aug, 2021

1 commit


24 Aug, 2021

1 commit

  • PCI devices expose the associated MSI interrupts via sysfs, but platform
    devices which utilize MSI interrupts do not. This information is important
    for user space tools to optimize affinity settings.

    Utilize the generic MSI sysfs facility to expose this information for
    platform MSI.

    Signed-off-by: Barry Song
    Signed-off-by: Thomas Gleixner
    Acked-by: Greg Kroah-Hartman
    Acked-by: Bjorn Helgaas
    Acked-by: Marc Zyngier
    Link: https://lore.kernel.org/r/20210813035628.6844-3-21cnbao@gmail.com

    Barry Song
     

20 Aug, 2021

2 commits

  • Since 32-bit applications will be killed if they are caught trying to
    execute on a 64-bit-only CPU in a mismatched system, advertise the set
    of 32-bit capable CPUs to userspace in sysfs.

    Signed-off-by: Will Deacon
    Signed-off-by: Peter Zijlstra (Intel)
    Reviewed-by: Greg Kroah-Hartman
    Reviewed-by: Catalin Marinas
    Link: https://lore.kernel.org/r/20210730112443.23245-14-will@kernel.org

    Will Deacon
     
  • Dynamic BIOS SAR driver exposing dynamic SAR information from BIOS

    The Dynamic SAR (Specific Absorption Rate) driver uses ACPI DSM
    (Device Specific Method) to communicate with BIOS and retrieve
    dynamic SAR information and change notifications. The driver uses
    sysfs to expose this data to userspace via read and notify.

    Sysfs interface is documented in detail under:
    Documentation/ABI/testing/sysfs-driver-intc_sar

    Signed-off-by: Shravan S
    Link: https://lore.kernel.org/r/20210723211452.27995-2-s.shravan@intel.com
    Reviewed-by: Hans de Goede
    Signed-off-by: Hans de Goede

    Shravan S
     

19 Aug, 2021

1 commit

  • Add "reset_method" sysfs attribute to enable user to query and set
    preferred device reset methods and their ordering.

    [bhelgaas: on invalid sysfs input, return error and preserve previous
    config, as in earlier patch versions]
    Co-developed-by: Alex Williamson
    Link: https://lore.kernel.org/r/20210817180500.1253-6-ameynarkhede03@gmail.com
    Signed-off-by: Alex Williamson
    Signed-off-by: Amey Narkhede
    Signed-off-by: Bjorn Helgaas
    Reviewed-by: Raphael Norwitz

    Amey Narkhede
     

18 Aug, 2021

4 commits

  • Add documentation for the new device attribute file ncq_prio_supported,
    and its SAS HBA equivalent sas_ncq_prio_supported.

    Signed-off-by: Damien Le Moal
    Reviewed-by: Hannes Reinecke
    Link: https://lore.kernel.org/r/20210816014456.2191776-12-damien.lemoal@wdc.com
    Signed-off-by: Jens Axboe

    Damien Le Moal
     
  • NCQ priority is an optional feature of the NCQ feature set and should
    not be confused with the NCQ feature set itself. Clarify the
    description of the ncq_prio_enable attribute to avoid this confusion.

    Also add the missing documentation for the equivalent
    sas_ncq_prio_enable attribute.

    Signed-off-by: Niklas Cassel
    Signed-off-by: Damien Le Moal
    Reviewed-by: Hannes Reinecke
    Link: https://lore.kernel.org/r/20210816014456.2191776-11-damien.lemoal@wdc.com
    Signed-off-by: Jens Axboe

    Niklas Cassel
     
  • The sysfs interface for default domain types exists primarily so users
    can choose the performance/security tradeoff relevant to their own
    workload. As such, the choice between the policies for DMA domains fits
    perfectly as an additional point on that scale - downgrading a
    particular device from a strict default to non-strict may be enough to
    let it reach the desired level of performance, while still retaining
    more peace of mind than with a wide-open identity domain. Now that we've
    abstracted non-strict mode as a distinct type of DMA domain, allow it to
    be chosen through the user interface as well.

    Reviewed-by: Lu Baolu
    Reviewed-by: John Garry
    Signed-off-by: Robin Murphy
    Link: https://lore.kernel.org/r/0e08da5ed4069fd3473cfbadda758ca983becdbf.1628682049.git.robin.murphy@arm.com
    Signed-off-by: Joerg Roedel

    Robin Murphy
     
  • Many Lenovo BIOS's support the ability to send a debug command which
    is useful for debugging and testing unreleased or early features.

    Adding support for this feature as a module parameter.

    Signed-off-by: Mark Pearson
    Link: https://lore.kernel.org/r/20210817001501.293501-1-markpearson@lenovo.com
    Reviewed-by: Hans de Goede
    Signed-off-by: Hans de Goede

    Mark Pearson