1. 23 Jun, 2022 3 commits
    • Paolo Bonzini's avatar
      MAINTAINERS: Reorganize KVM/x86 maintainership · 6945b214
      Paolo Bonzini authored
      For the last few years I have been the sole maintainer of KVM, albeit
      getting serious help from all the people who have reviewed hundreds of
      patches.  The volume of KVM x86 alone has gotten to the point where one
      maintainer is not enough; especially if that maintainer is not doing it
      full time and if they want to keep up with the evolution of ARM64 and
      RISC-V at both the architecture and the hypervisor level.
      
      So, this patch is the first step in restoring double maintainership
      or even transitioning to the submaintainer model of other architectures.
      
      The changes here were mostly proposed by Sean offlist and they are twofold:
      
      - revisiting the set of KVM x86 reviewers.  It's important to have an
        an accurate list of people that are actively reviewing patches ("R"),
        as well as people that are able to act on bug reports ("M").  Otherwise,
        voids to be filled are not easily visible.  The proposal is to split
        KVM on Hyper-V, which is where Vitaly has been the main contributor
        for quite some time now; likewise for KVM paravirt support, which
        has been the main interest of Wanpeng and to which Vitaly has also
        contributed (e.g., for async page faults).  Jim and Joerg have not been
        particularly active (though Joerg has worked on guest support for AMD
        SEV); knowing them a bit, I can't imagine they would object to their
        removal or even be surprised, but please speak up if you do.
      
      - promoting Sean to maintainer for KVM x86 host support.  While for
        now this changes little, let's treat it as a harbinger for future
        changes.  The plan is that I would keep the final integration testing
        for quite some time, and probably focus more on -rc work.  This will
        give me more time to clean up my ad hoc setup and moving towards a
        more public CI, with Sean focusing instead on next-release patches,
        and the testing up to where kvm-unit-tests and selftests pass.  In
        order to facilitate collaboration between Sean and myself, we'll
        also formalize a bit more the various branches of kvm.git.
      
      Nothing is going to change with respect to handling pull requests to Linus
      and from other architectures, as well as maintainance of the generic code
      (which I expect and hope to be more important as architectures try to
      share more code) and documentation.  However, it's not a coincidence
      that my entry is now the last for x86, ready to be demoted to reviewer
      if/when the right time comes.
      Suggested-by: default avatarSean Christopherson <seanjc@google.com>
      Co-developed-by: default avatarSean Christopherson <seanjc@google.com>
      Cc: kvm@vger.kernel.org
      Cc: Sean Christopherson <seanjc@google.com>
      Cc: Vitaly Kuznetsov <vkuznets@redhat.com>
      Cc: Wanpeng Li <wanpengli@tencent.com>
      Cc: Jim Mattson <jmattson@google.com>
      Cc: Joerg Roedel <joro@8bytes.org>
      Acked-by: default avatarVitaly Kuznetsov <vkuznets@redhat.com>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      6945b214
    • Paolo Bonzini's avatar
      Merge tag 'kvmarm-fixes-5.19-2' of... · 922d4578
      Paolo Bonzini authored
      Merge tag 'kvmarm-fixes-5.19-2' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into HEAD
      
      KVM/arm64 fixes for 5.19, take #2
      
      - Fix a regression with pKVM when kmemleak is enabled
      
      - Add Oliver Upton as an official KVM/arm64 reviewer
      922d4578
    • Raghavendra Rao Ananta's avatar
      selftests: KVM: Handle compiler optimizations in ucall · 9e2f6498
      Raghavendra Rao Ananta authored
      The selftests, when built with newer versions of clang, is found
      to have over optimized guests' ucall() function, and eliminating
      the stores for uc.cmd (perhaps due to no immediate readers). This
      resulted in the userspace side always reading a value of '0', and
      causing multiple test failures.
      
      As a result, prevent the compiler from optimizing the stores in
      ucall() with WRITE_ONCE().
      Suggested-by: default avatarRicardo Koller <ricarkol@google.com>
      Suggested-by: default avatarReiji Watanabe <reijiw@google.com>
      Signed-off-by: default avatarRaghavendra Rao Ananta <rananta@google.com>
      Message-Id: <20220615185706.1099208-1-rananta@google.com>
      Reviewed-by: default avatarAndrew Jones <drjones@redhat.com>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      9e2f6498
  2. 17 Jun, 2022 2 commits
    • Marc Zyngier's avatar
      KVM: arm64: Add Oliver as a reviewer · cbc6d448
      Marc Zyngier authored
      Oliver Upton has agreed to help with reviewing the KVM/arm64
      patches, and has been doing so for a while now, so adding him
      as to the reviewer list.
      
      Note that Oliver is using a different email address for this
      purpose, rather than the one his been using for his other
      contributions.
      Signed-off-by: default avatarMarc Zyngier <maz@kernel.org>
      Acked-by: default avatarOliver Upton <oupton@google.com>
      Link: https://lore.kernel.org/r/20220616085318.1303657-1-maz@kernel.org
      cbc6d448
    • Quentin Perret's avatar
      KVM: arm64: Prevent kmemleak from accessing pKVM memory · 56961c63
      Quentin Perret authored
      Commit a7259df7 ("memblock: make memblock_find_in_range method
      private") changed the API using which memory is reserved for the pKVM
      hypervisor. However, memblock_phys_alloc() differs from the original API in
      terms of kmemleak semantics -- the old one didn't report the reserved
      regions to kmemleak while the new one does. Unfortunately, when protected
      KVM is enabled, all kernel accesses to pKVM-private memory result in a
      fatal exception, which can now happen because of kmemleak scans:
      
      $ echo scan > /sys/kernel/debug/kmemleak
      [   34.991354] kvm [304]: nVHE hyp BUG at: [<ffff800008fa3750>] __kvm_nvhe_handle_host_mem_abort+0x270/0x290!
      [   34.991580] kvm [304]: Hyp Offset: 0xfffe8be807e00000
      [   34.991813] Kernel panic - not syncing: HYP panic:
      [   34.991813] PS:600003c9 PC:0000f418011a3750 ESR:00000000f2000800
      [   34.991813] FAR:ffff000439200000 HPFAR:0000000004792000 PAR:0000000000000000
      [   34.991813] VCPU:0000000000000000
      [   34.993660] CPU: 0 PID: 304 Comm: bash Not tainted 5.19.0-rc2 #102
      [   34.994059] Hardware name: linux,dummy-virt (DT)
      [   34.994452] Call trace:
      [   34.994641]  dump_backtrace.part.0+0xcc/0xe0
      [   34.994932]  show_stack+0x18/0x6c
      [   34.995094]  dump_stack_lvl+0x68/0x84
      [   34.995276]  dump_stack+0x18/0x34
      [   34.995484]  panic+0x16c/0x354
      [   34.995673]  __hyp_pgtable_total_pages+0x0/0x60
      [   34.995933]  scan_block+0x74/0x12c
      [   34.996129]  scan_gray_list+0xd8/0x19c
      [   34.996332]  kmemleak_scan+0x2c8/0x580
      [   34.996535]  kmemleak_write+0x340/0x4a0
      [   34.996744]  full_proxy_write+0x60/0xbc
      [   34.996967]  vfs_write+0xc4/0x2b0
      [   34.997136]  ksys_write+0x68/0xf4
      [   34.997311]  __arm64_sys_write+0x20/0x2c
      [   34.997532]  invoke_syscall+0x48/0x114
      [   34.997779]  el0_svc_common.constprop.0+0x44/0xec
      [   34.998029]  do_el0_svc+0x2c/0xc0
      [   34.998205]  el0_svc+0x2c/0x84
      [   34.998421]  el0t_64_sync_handler+0xf4/0x100
      [   34.998653]  el0t_64_sync+0x18c/0x190
      [   34.999252] SMP: stopping secondary CPUs
      [   35.000034] Kernel Offset: disabled
      [   35.000261] CPU features: 0x800,00007831,00001086
      [   35.000642] Memory Limit: none
      [   35.001329] ---[ end Kernel panic - not syncing: HYP panic:
      [   35.001329] PS:600003c9 PC:0000f418011a3750 ESR:00000000f2000800
      [   35.001329] FAR:ffff000439200000 HPFAR:0000000004792000 PAR:0000000000000000
      [   35.001329] VCPU:0000000000000000 ]---
      
      Fix this by explicitly excluding the hypervisor's memory pool from
      kmemleak like we already do for the hyp BSS.
      
      Cc: Mike Rapoport <rppt@kernel.org>
      Fixes: a7259df7 ("memblock: make memblock_find_in_range method private")
      Signed-off-by: default avatarQuentin Perret <qperret@google.com>
      Acked-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
      Signed-off-by: default avatarMarc Zyngier <maz@kernel.org>
      Link: https://lore.kernel.org/r/20220616161135.3997786-1-qperret@google.com
      56961c63
  3. 15 Jun, 2022 1 commit
    • Dmitry Klochkov's avatar
      tools/kvm_stat: fix display of error when multiple processes are found · 933b5f9f
      Dmitry Klochkov authored
      Instead of printing an error message, kvm_stat script fails when we
      restrict statistics to a guest by its name and there are multiple guests
      with such name:
      
        # kvm_stat -g my_vm
        Traceback (most recent call last):
          File "/usr/bin/kvm_stat", line 1819, in <module>
            main()
          File "/usr/bin/kvm_stat", line 1779, in main
            options = get_options()
          File "/usr/bin/kvm_stat", line 1718, in get_options
            options = argparser.parse_args()
          File "/usr/lib64/python3.10/argparse.py", line 1825, in parse_args
            args, argv = self.parse_known_args(args, namespace)
          File "/usr/lib64/python3.10/argparse.py", line 1858, in parse_known_args
            namespace, args = self._parse_known_args(args, namespace)
          File "/usr/lib64/python3.10/argparse.py", line 2067, in _parse_known_args
            start_index = consume_optional(start_index)
          File "/usr/lib64/python3.10/argparse.py", line 2007, in consume_optional
            take_action(action, args, option_string)
          File "/usr/lib64/python3.10/argparse.py", line 1935, in take_action
            action(self, namespace, argument_values, option_string)
          File "/usr/bin/kvm_stat", line 1649, in __call__
            ' to specify the desired pid'.format(" ".join(pids)))
        TypeError: sequence item 0: expected str instance, int found
      
      To avoid this, it's needed to convert pids int values to strings before
      pass them to join().
      Signed-off-by: default avatarDmitry Klochkov <kdmitry556@gmail.com>
      Message-Id: <20220614121141.160689-1-kdmitry556@gmail.com>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      933b5f9f
  4. 14 Jun, 2022 2 commits
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 24625f7d
      Linus Torvalds authored
      Pull kvm fixes from Paolo Bonzini:
       "While last week's pull request contained miscellaneous fixes for x86,
        this one covers other architectures, selftests changes, and a bigger
        series for APIC virtualization bugs that were discovered during 5.20
        development. The idea is to base 5.20 development for KVM on top of
        this tag.
      
        ARM64:
      
         - Properly reset the SVE/SME flags on vcpu load
      
         - Fix a vgic-v2 regression regarding accessing the pending state of a
           HW interrupt from userspace (and make the code common with vgic-v3)
      
         - Fix access to the idreg range for protected guests
      
         - Ignore 'kvm-arm.mode=protected' when using VHE
      
         - Return an error from kvm_arch_init_vm() on allocation failure
      
         - A bunch of small cleanups (comments, annotations, indentation)
      
        RISC-V:
      
         - Typo fix in arch/riscv/kvm/vmid.c
      
         - Remove broken reference pattern from MAINTAINERS entry
      
        x86-64:
      
         - Fix error in page tables with MKTME enabled
      
         - Dirty page tracking performance test extended to running a nested
           guest
      
         - Disable APICv/AVIC in cases that it cannot implement correctly"
      
      [ This merge also fixes a misplaced end parenthesis bug introduced in
        commit 3743c2f0 ("KVM: x86: inhibit APICv/AVIC on changes to APIC
        ID or APIC base") pointed out by Sean Christopherson ]
      
      Link: https://lore.kernel.org/all/20220610191813.371682-1-seanjc@google.com/
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (34 commits)
        KVM: selftests: Restrict test region to 48-bit physical addresses when using nested
        KVM: selftests: Add option to run dirty_log_perf_test vCPUs in L2
        KVM: selftests: Clean up LIBKVM files in Makefile
        KVM: selftests: Link selftests directly with lib object files
        KVM: selftests: Drop unnecessary rule for STATIC_LIBS
        KVM: selftests: Add a helper to check EPT/VPID capabilities
        KVM: selftests: Move VMX_EPT_VPID_CAP_AD_BITS to vmx.h
        KVM: selftests: Refactor nested_map() to specify target level
        KVM: selftests: Drop stale function parameter comment for nested_map()
        KVM: selftests: Add option to create 2M and 1G EPT mappings
        KVM: selftests: Replace x86_page_size with PG_LEVEL_XX
        KVM: x86: SVM: fix nested PAUSE filtering when L0 intercepts PAUSE
        KVM: x86: SVM: drop preempt-safe wrappers for avic_vcpu_load/put
        KVM: x86: disable preemption around the call to kvm_arch_vcpu_{un|}blocking
        KVM: x86: disable preemption while updating apicv inhibition
        KVM: x86: SVM: fix avic_kick_target_vcpus_fast
        KVM: x86: SVM: remove avic's broken code that updated APIC ID
        KVM: x86: inhibit APICv/AVIC on changes to APIC ID or APIC base
        KVM: x86: document AVIC/APICv inhibit reasons
        KVM: x86/mmu: Set memory encryption "value", not "mask", in shadow PDPTRs
        ...
      24625f7d
    • Linus Torvalds's avatar
      Merge tag 'x86-bugs-2022-06-01' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 8e8afafb
      Linus Torvalds authored
      Pull x86 MMIO stale data fixes from Thomas Gleixner:
       "Yet another hw vulnerability with a software mitigation: Processor
        MMIO Stale Data.
      
        They are a class of MMIO-related weaknesses which can expose stale
        data by propagating it into core fill buffers. Data which can then be
        leaked using the usual speculative execution methods.
      
        Mitigations include this set along with microcode updates and are
        similar to MDS and TAA vulnerabilities: VERW now clears those buffers
        too"
      
      * tag 'x86-bugs-2022-06-01' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/speculation/mmio: Print SMT warning
        KVM: x86/speculation: Disable Fill buffer clear within guests
        x86/speculation/mmio: Reuse SRBDS mitigation for SBDS
        x86/speculation/srbds: Update SRBDS mitigation selection
        x86/speculation/mmio: Add sysfs reporting for Processor MMIO Stale Data
        x86/speculation/mmio: Enable CPU Fill buffer clearing on idle
        x86/bugs: Group MDS, TAA & Processor MMIO Stale Data mitigations
        x86/speculation/mmio: Add mitigation for Processor MMIO Stale Data
        x86/speculation: Add a common function for MD_CLEAR mitigation update
        x86/speculation/mmio: Enumerate Processor MMIO Stale Data bug
        Documentation: Add documentation for Processor MMIO Stale Data
      8e8afafb
  5. 12 Jun, 2022 10 commits
  6. 11 Jun, 2022 9 commits
    • Linus Torvalds's avatar
      Merge tag 'gpio-fixes-for-v5.19-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux · 7a68065e
      Linus Torvalds authored
      Pull gpio fixes from Bartosz Golaszewski:
       "A set of fixes. Most address the new warning we emit at build time
        when irq chips are not immutable with some additional tweaks to
        gpio-crystalcove from Andy and a small tweak to gpio-dwapd.
      
         - make irq_chip structs immutable in several Diolan and intel drivers
           to get rid of the new warning we emit when fiddling with irq chips
      
         - don't print error messages on probe deferral in gpio-dwapb"
      
      * tag 'gpio-fixes-for-v5.19-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux:
        gpio: dwapb: Don't print error on -EPROBE_DEFER
        gpio: dln2: make irq_chip immutable
        gpio: sch: make irq_chip immutable
        gpio: merrifield: make irq_chip immutable
        gpio: wcove: make irq_chip immutable
        gpio: crystalcove: Join function declarations and long lines
        gpio: crystalcove: Use specific type and API for IRQ number
        gpio: crystalcove: make irq_chip immutable
      7a68065e
    • Linus Torvalds's avatar
      Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · cecb3540
      Linus Torvalds authored
      Pull SCSI fixes from James Bottomley:
       "Driver fixes and and one core patch.
      
        Nine of the driver patches are minor fixes and reworks to lpfc and the
        rest are trivial and minor fixes elsewhere"
      
      * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
        scsi: pmcraid: Fix missing resource cleanup in error case
        scsi: ipr: Fix missing/incorrect resource cleanup in error case
        scsi: mpt3sas: Fix out-of-bounds compiler warning
        scsi: lpfc: Update lpfc version to 14.2.0.4
        scsi: lpfc: Allow reduced polling rate for nvme_admin_async_event cmd completion
        scsi: lpfc: Add more logging of cmd and cqe information for aborted NVMe cmds
        scsi: lpfc: Fix port stuck in bypassed state after LIP in PT2PT topology
        scsi: lpfc: Resolve NULL ptr dereference after an ELS LOGO is aborted
        scsi: lpfc: Address NULL pointer dereference after starget_to_rport()
        scsi: lpfc: Resolve some cleanup issues following SLI path refactoring
        scsi: lpfc: Resolve some cleanup issues following abort path refactoring
        scsi: lpfc: Correct BDE type for XMIT_SEQ64_WQE in lpfc_ct_reject_event()
        scsi: vmw_pvscsi: Expand vcpuHint to 16 bits
        scsi: sd: Fix interpretation of VPD B9h length
      cecb3540
    • Linus Torvalds's avatar
      Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost · abe71eb3
      Linus Torvalds authored
      Pull virtio fixes from Michael Tsirkin:
       "Fixes all over the place, most notably fixes for latent bugs in
        drivers that got exposed by suppressing interrupts before DRIVER_OK,
        which in turn has been done by 8b4ec69d ("virtio: harden vring
        IRQ")"
      
      * tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost:
        um: virt-pci: set device ready in probe()
        vdpa: make get_vq_group and set_group_asid optional
        virtio: Fix all occurences of the "the the" typo
        vduse: Fix NULL pointer dereference on sysfs access
        vringh: Fix loop descriptors check in the indirect cases
        vdpa/mlx5: clean up indenting in handle_ctrl_vlan()
        vdpa/mlx5: fix error code for deleting vlan
        virtio-mmio: fix missing put_device() when vm_cmdline_parent registration failed
        vdpa/mlx5: Fix syntax errors in comments
        virtio-rng: make device ready before making request
      abe71eb3
    • Linus Torvalds's avatar
      Merge tag 'loongarch-fixes-5.19-1' of... · 0678afa6
      Linus Torvalds authored
      Merge tag 'loongarch-fixes-5.19-1' of git://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
      
      Pull LoongArch fixes from Huacai Chen.
       "Fix build errors and a stale comment"
      
      * tag 'loongarch-fixes-5.19-1' of git://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson:
        LoongArch: Remove MIPS comment about cycle counter
        LoongArch: Fix copy_thread() build errors
        LoongArch: Fix the !CONFIG_SMP build
      0678afa6
    • Linus Torvalds's avatar
      iov_iter: fix build issue due to possible type mis-match · 1c27f1fc
      Linus Torvalds authored
      Commit 6c776766 ("iov_iter: Fix iter_xarray_get_pages{,_alloc}()")
      introduced a problem on some 32-bit architectures (at least arm, xtensa,
      csky,sparc and mips), that have a 'size_t' that is 'unsigned int'.
      
      The reason is that we now do
      
          min(nr * PAGE_SIZE - offset, maxsize);
      
      where 'nr' and 'offset' and both 'unsigned int', and PAGE_SIZE is
      'unsigned long'.  As a result, the normal C type rules means that the
      first argument to 'min()' ends up being 'unsigned long'.
      
      In contrast, 'maxsize' is of type 'size_t'.
      
      Now, 'size_t' and 'unsigned long' are always the same physical type in
      the kernel, so you'd think this doesn't matter, and from an actual
      arithmetic standpoint it doesn't.
      
      But on 32-bit architectures 'size_t' is commonly 'unsigned int', even if
      it could also be 'unsigned long'.  In that situation, both are unsigned
      32-bit types, but they are not the *same* type.
      
      And as a result 'min()' will complain about the distinct types (ignore
      the "pointer types" part of the error message: that's an artifact of the
      way we have made 'min()' check types for being the same):
      
        lib/iov_iter.c: In function 'iter_xarray_get_pages':
        include/linux/minmax.h:20:35: error: comparison of distinct pointer types lacks a cast [-Werror]
           20 |         (!!(sizeof((typeof(x) *)1 == (typeof(y) *)1)))
              |                                   ^~
        lib/iov_iter.c:1464:16: note: in expansion of macro 'min'
         1464 |         return min(nr * PAGE_SIZE - offset, maxsize);
              |                ^~~
      
      This was not visible on 64-bit architectures (where we always define
      'size_t' to be 'unsigned long').
      
      Force these cases to use 'min_t(size_t, x, y)' to make the type explicit
      and avoid the issue.
      
      [ Nit-picky note: technically 'size_t' doesn't have to match 'unsigned
        long' arithmetically. We've certainly historically seen environments
        with 16-bit address spaces and 32-bit 'unsigned long'.
      
        Similarly, even in 64-bit modern environments, 'size_t' could be its
        own type distinct from 'unsigned long', even if it were arithmetically
        identical.
      
        So the above type commentary is only really descriptive of the kernel
        environment, not some kind of universal truth for the kinds of wild
        and crazy situations that are allowed by the C standard ]
      Reported-by: default avatarSudip Mukherjee <sudipm.mukherjee@gmail.com>
      Link: https://lore.kernel.org/all/YqRyL2sIqQNDfky2@debian/
      Cc: Jeff Layton <jlayton@kernel.org>
      Cc: David Howells <dhowells@redhat.com>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      1c27f1fc
    • Jason A. Donenfeld's avatar
      wireguard: selftests: use maximum cpu features and allow rng seeding · 17b0128a
      Jason A. Donenfeld authored
      By forcing the maximum CPU that QEMU has available, we expose additional
      capabilities, such as the RNDR instruction, which increases test
      coverage. This then allows the CI to skip the fake seeding step in some
      cases. Also enable STRICT_KERNEL_RWX to catch issues related to early
      jump labels when the RNG is initialized at boot.
      Signed-off-by: default avatarJason A. Donenfeld <Jason@zx2c4.com>
      17b0128a
    • Kuan-Ying Lee's avatar
      scripts/gdb: change kernel config dumping method · 1f7a6cf6
      Kuan-Ying Lee authored
      MAGIC_START("IKCFG_ST") and MAGIC_END("IKCFG_ED") are moved out
      from the kernel_config_data variable.
      
      Thus, we parse kernel_config_data directly instead of considering
      offset of MAGIC_START and MAGIC_END.
      
      Fixes: 13610aa9 ("kernel/configs: use .incbin directive to embed config_data.gz")
      Signed-off-by: default avatarKuan-Ying Lee <Kuan-Ying.Lee@mediatek.com>
      Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
      1f7a6cf6
    • Vincent Whitchurch's avatar
      um: virt-pci: set device ready in probe() · eacea844
      Vincent Whitchurch authored
      Call virtio_device_ready() to make this driver work after commit
      b4ec69d7e09 ("virtio: harden vring IRQ"), since the driver uses the
      virtqueues in the probe function.  (The virtio core sets the device
      ready when probe returns.)
      
      Fixes: 8b4ec69d ("virtio: harden vring IRQ")
      Fixes: 68f5d3f3 ("um: add PCI over virtio emulation driver")
      Signed-off-by: default avatarVincent Whitchurch <vincent.whitchurch@axis.com>
      Message-Id: <20220610151203.3492541-1-vincent.whitchurch@axis.com>
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      Tested-by: default avatarJohannes Berg <johannes@sipsolutions.net>
      eacea844
    • Linus Torvalds's avatar
      Merge tag 'nfsd-5.19-1' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux · 0885eacd
      Linus Torvalds authored
      Pull nfsd fixes from Chuck Lever:
       "Notable changes:
      
         - There is now a backup maintainer for NFSD
      
        Notable fixes:
      
         - Prevent array overruns in svc_rdma_build_writes()
      
         - Prevent buffer overruns when encoding NFSv3 READDIR results
      
         - Fix a potential UAF in nfsd_file_put()"
      
      * tag 'nfsd-5.19-1' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux:
        SUNRPC: Remove pointer type casts from xdr_get_next_encode_buffer()
        SUNRPC: Clean up xdr_get_next_encode_buffer()
        SUNRPC: Clean up xdr_commit_encode()
        SUNRPC: Optimize xdr_reserve_space()
        SUNRPC: Fix the calculation of xdr->end in xdr_get_next_encode_buffer()
        SUNRPC: Trap RDMA segment overflows
        NFSD: Fix potential use-after-free in nfsd_file_put()
        MAINTAINERS: reciprocal co-maintainership for file locking and nfsd
      0885eacd
  7. 10 Jun, 2022 13 commits