1. 06 7月, 2022 7 次提交
  2. 22 6月, 2022 3 次提交
  3. 20 6月, 2022 1 次提交
  4. 19 6月, 2022 19 次提交
  5. 18 6月, 2022 10 次提交
    • K
      x86/tdx: Handle load_unaligned_zeropad() page-cross to a shared page · 1e776965
      Kirill A. Shutemov 提交于
      load_unaligned_zeropad() can lead to unwanted loads across page boundaries.
      The unwanted loads are typically harmless. But, they might be made to
      totally unrelated or even unmapped memory. load_unaligned_zeropad()
      relies on exception fixup (#PF, #GP and now #VE) to recover from these
      unwanted loads.
      
      In TDX guests, the second page can be shared page and a VMM may configure
      it to trigger #VE.
      
      The kernel assumes that #VE on a shared page is an MMIO access and tries to
      decode instruction to handle it. In case of load_unaligned_zeropad() it
      may result in confusion as it is not MMIO access.
      
      Fix it by detecting split page MMIO accesses and failing them.
      load_unaligned_zeropad() will recover using exception fixups.
      
      The issue was discovered by analysis and reproduced artificially. It was
      not triggered during testing.
      
      [ dhansen: fix up changelogs and comments for grammar and clarity,
      	   plus incorporate Kirill's off-by-one fix]
      Signed-off-by: NKirill A. Shutemov <kirill.shutemov@linux.intel.com>
      Signed-off-by: NDave Hansen <dave.hansen@linux.intel.com>
      Link: https://lkml.kernel.org/r/20220614120135.14812-4-kirill.shutemov@linux.intel.com
      1e776965
    • L
      Merge tag 'nfs-for-5.19-2' of git://git.linux-nfs.org/projects/anna/linux-nfs · 4b35035b
      Linus Torvalds 提交于
      Pull NFS client fixes from Anna Schumaker:
      
       - Add FMODE_CAN_ODIRECT support to NFSv4 so opens don't fail
      
       - Fix trunking detection & cl_max_connect setting
      
       - Avoid pnfs_update_layout() livelocks
      
       - Don't keep retrying pNFS if the server replies with NFS4ERR_UNAVAILABLE
      
      * tag 'nfs-for-5.19-2' of git://git.linux-nfs.org/projects/anna/linux-nfs:
        NFSv4: Add FMODE_CAN_ODIRECT after successful open of a NFS4.x file
        sunrpc: set cl_max_connect when cloning an rpc_clnt
        pNFS: Avoid a live lock condition in pnfs_update_layout()
        pNFS: Don't keep retrying if the server replied NFS4ERR_LAYOUTUNAVAILABLE
      4b35035b
    • L
      Merge tag 'pci-v5.19-fixes-2' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci · 32efdbff
      Linus Torvalds 提交于
      Pull pci fix from Bjorn Helgaas:
       "Revert clipping of PCI host bridge windows to avoid E820 regions,
        which broke several machines by forcing unnecessary BAR reassignments
        (Hans de Goede)"
      
      * tag 'pci-v5.19-fixes-2' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci:
        x86/PCI: Revert "x86/PCI: Clip only host bridge windows for E820 regions"
      32efdbff
    • L
      Merge tag 'printk-for-5.19-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/printk/linux · 93d17c1c
      Linus Torvalds 提交于
      Pull printk fixes from Petr Mladek:
       "Make the global console_sem available for CPU that is handling panic()
        or shutdown.
      
        This is an old problem when an existing console lock owner might block
        console output, but it became more visible with the kthreads"
      
      * tag 'printk-for-5.19-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/printk/linux:
        printk: Wait for the global console lock when the system is going down
        printk: Block console kthreads when direct printing will be required
      93d17c1c
    • H
      x86/PCI: Revert "x86/PCI: Clip only host bridge windows for E820 regions" · a2b36ffb
      Hans de Goede 提交于
      This reverts commit 4c5e242d.
      
      Prior to 4c5e242d ("x86/PCI: Clip only host bridge windows for E820
      regions"), E820 regions did not affect PCI host bridge windows.  We only
      looked at E820 regions and avoided them when allocating new MMIO space.
      If firmware PCI bridge window and BAR assignments used E820 regions, we
      left them alone.
      
      After 4c5e242d, we removed E820 regions from the PCI host bridge
      windows before looking at BARs, so firmware assignments in E820 regions
      looked like errors, and we moved things around to fit in the space left
      (if any) after removing the E820 regions.  This unnecessary BAR
      reassignment broke several machines.
      
      Guilherme reported that Steam Deck fails to boot after 4c5e242d.  We
      clipped the window that contained most 32-bit BARs:
      
        BIOS-e820: [mem 0x00000000a0000000-0x00000000a00fffff] reserved
        acpi PNP0A08:00: clipped [mem 0x80000000-0xf7ffffff window] to [mem 0xa0100000-0xf7ffffff window] for e820 entry [mem 0xa0000000-0xa00fffff]
      
      which forced us to reassign all those BARs, for example, this NVMe BAR:
      
        pci 0000:00:01.2: PCI bridge to [bus 01]
        pci 0000:00:01.2:   bridge window [mem 0x80600000-0x806fffff]
        pci 0000:01:00.0: BAR 0: [mem 0x80600000-0x80603fff 64bit]
        pci 0000:00:01.2: can't claim window [mem 0x80600000-0x806fffff]: no compatible bridge window
        pci 0000:01:00.0: can't claim BAR 0 [mem 0x80600000-0x80603fff 64bit]: no compatible bridge window
      
        pci 0000:00:01.2: bridge window: assigned [mem 0xa0100000-0xa01fffff]
        pci 0000:01:00.0: BAR 0: assigned [mem 0xa0100000-0xa0103fff 64bit]
      
      All the reassignments were successful, so the devices should have been
      functional at the new addresses, but some were not.
      
      Andy reported a similar failure on an Intel MID platform.  Benjamin
      reported a similar failure on a VMWare Fusion VM.
      
      Note: this is not a clean revert; this revert keeps the later change to
      make the clipping dependent on a new pci_use_e820 bool, moving the checking
      of this bool to arch_remove_reservations().
      
      [bhelgaas: commit log, add more reporters and testers]
      BugLink: https://bugzilla.kernel.org/show_bug.cgi?id=216109Reported-by: NGuilherme G. Piccoli <gpiccoli@igalia.com>
      Reported-by: NAndy Shevchenko <andy.shevchenko@gmail.com>
      Reported-by: NBenjamin Coddington <bcodding@redhat.com>
      Reported-by: NJongman Heo <jongman.heo@gmail.com>
      Fixes: 4c5e242d ("x86/PCI: Clip only host bridge windows for E820 regions")
      Link: https://lore.kernel.org/r/20220612144325.85366-1-hdegoede@redhat.comTested-by: NGuilherme G. Piccoli <gpiccoli@igalia.com>
      Tested-by: NAndy Shevchenko <andriy.shevchenko@linux.intel.com>
      Tested-by: NBenjamin Coddington <bcodding@redhat.com>
      Signed-off-by: NHans de Goede <hdegoede@redhat.com>
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      a2b36ffb
    • L
      Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · ef06e682
      Linus Torvalds 提交于
      Pull arm64 fixes from Catalin Marinas:
      
       - Revert the moving of the jump labels initialisation before
         setup_machine_fdt(). The bug was fixed in drivers/char/random.c.
      
       - Ftrace fixes: branch range check and consistent handling of PLTs.
      
       - Clean rather than invalidate FROM_DEVICE buffers at start of DMA
         transfer (safer if such buffer is mapped in user space). A cache
         invalidation is done already at the end of the transfer.
      
       - A couple of clean-ups (unexport symbol, remove unused label).
      
      * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
        arm64: mm: Don't invalidate FROM_DEVICE buffers at start of DMA transfer
        arm64/cpufeature: Unexport set_cpu_feature()
        arm64: ftrace: remove redundant label
        arm64: ftrace: consistently handle PLTs.
        arm64: ftrace: fix branch range checks
        Revert "arm64: Initialize jump labels before setup_machine_fdt()"
      ef06e682
    • L
      Merge tag 'loongarch-fixes-5.19-2' of... · cc2fb31d
      Linus Torvalds 提交于
      Merge tag 'loongarch-fixes-5.19-2' of git://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
      
      Pull LoongArch fixes from Huacai Chen:
       "Add missing ELF_DETAILS in vmlinux.lds.S and fix document rendering"
      
      * tag 'loongarch-fixes-5.19-2' of git://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson:
        docs/zh_CN/LoongArch: Fix notes rendering by using reST directives
        docs/LoongArch: Fix notes rendering by using reST directives
        LoongArch: vmlinux.lds.S: Add missing ELF_DETAILS
      cc2fb31d
    • L
      Merge tag 'riscv-for-linus-5.19-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux · f1051632
      Linus Torvalds 提交于
      Pull RISC-V fixes from Palmer Dabbelt:
      
       - A fix for the PolarFire SOC's device tree
      
       - A handful of fixes for the recently added Svpmbt support
      
       - An improvement to the Kconfig text for Svpbmt
      
      * tag 'riscv-for-linus-5.19-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux:
        riscv: Improve description for RISCV_ISA_SVPBMT Kconfig symbol
        riscv: drop cpufeature_apply_feature tracking variable
        riscv: fix dependency for t-head errata
        riscv: dts: microchip: re-add pdma to mpfs device tree
      f1051632
    • L
      Merge tag 'hyperv-fixes-signed-20220617' of... · 2d806a68
      Linus Torvalds 提交于
      Merge tag 'hyperv-fixes-signed-20220617' of git://git.kernel.org/pub/scm/linux/kernel/git/hyperv/linux
      
      Pull hyperv fixes from Wei Liu:
      
       - Fix hv_init_clocksource annotation (Masahiro Yamada)
      
       - Two bug fixes for vmbus driver (Saurabh Sengar)
      
       - Fix SEV negotiation (Tianyu Lan)
      
       - Fix comments in code (Xiang Wang)
      
       - One minor fix to HID driver (Michael Kelley)
      
      * tag 'hyperv-fixes-signed-20220617' of git://git.kernel.org/pub/scm/linux/kernel/git/hyperv/linux:
        x86/Hyper-V: Add SEV negotiate protocol support in Isolation VM
        Drivers: hv: vmbus: Release cpu lock in error case
        HID: hyperv: Correctly access fields declared as __le16
        clocksource: hyper-v: unexport __init-annotated hv_init_clocksource()
        Drivers: hv: Fix syntax errors in comments
        Drivers: hv: vmbus: Don't assign VMbus channel interrupts to isolated CPUs
      2d806a68
    • L
      Merge tag 'block-5.19-2022-06-16' of git://git.kernel.dk/linux-block · 462abc9d
      Linus Torvalds 提交于
      Pull block fixes from Jens Axboe:
      
       - NVMe pull request from Christoph
            - Quirks, quirks, quirks to work around buggy consumer grade
              devices (Keith Bush, Ning Wang, Stefan Reiter, Rasheed Hsueh)
            - Better kernel messages for devices that need quirking (Keith
              Bush)
            - Make a kernel message more useful (Thomas Weißschuh)
      
       - MD pull request from Song, with a few fixes
      
       - blk-mq sysfs locking fixes (Ming)
      
       - BFQ stats fix (Bart)
      
       - blk-mq offline queue fix (Bart)
      
       - blk-mq flush request tag fix (Ming)
      
      * tag 'block-5.19-2022-06-16' of git://git.kernel.dk/linux-block:
        block/bfq: Enable I/O statistics
        blk-mq: don't clear flush_rq from tags->rqs[]
        blk-mq: avoid to touch q->elevator without any protection
        blk-mq: protect q->elevator by ->sysfs_lock in blk_mq_elv_switch_none
        block: Fix handling of offline queues in blk_mq_alloc_request_hctx()
        md/raid5-ppl: Fix argument order in bio_alloc_bioset()
        Revert "md: don't unregister sync_thread with reconfig_mutex held"
        nvme-pci: disable write zeros support on UMIC and Samsung SSDs
        nvme-pci: avoid the deepest sleep state on ZHITAI TiPro7000 SSDs
        nvme-pci: sk hynix p31 has bogus namespace ids
        nvme-pci: smi has bogus namespace ids
        nvme-pci: phison e12 has bogus namespace ids
        nvme-pci: add NVME_QUIRK_BOGUS_NID for ADATA XPG GAMMIX S50
        nvme-pci: add trouble shooting steps for timeouts
        nvme: add bug report info for global duplicate id
        nvme: add device name to warning in uuid_show()
      462abc9d