1. 11 Feb, 2023 1 commit
    • Dan Williams's avatar
      cxl/memdev: Fix endpoint port removal · 2345df54
      Dan Williams authored
      Testing of ram region support [1], stimulates a long standing bug in
      cxl_detach_ep() where some cxl_ep_remove() cleanup is skipped due to
      inability to walk ports after dports have been unregistered. That
      results in a failure to re-register a memdev after the port is
      re-enabled leading to a crash like the following:
      
          cxl_port_setup_targets: cxl region4: cxl_host_bridge.0:port4 iw: 1 ig: 256
          general protection fault, ...
          [..]
          RIP: 0010:cxl_region_setup_targets+0x897/0x9e0 [cxl_core]
          dev_name at include/linux/device.h:700
          (inlined by) cxl_port_setup_targets at drivers/cxl/core/region.c:1155
          (inlined by) cxl_region_setup_targets at drivers/cxl/core/region.c:1249
          [..]
          Call Trace:
           <TASK>
           attach_target+0x39a/0x760 [cxl_core]
           ? __mutex_unlock_slowpath+0x3a/0x290
           cxl_add_to_region+0xb8/0x340 [cxl_core]
           ? lockdep_hardirqs_on+0x7d/0x100
           discover_region+0x4b/0x80 [cxl_port]
           ? __pfx_discover_region+0x10/0x10 [cxl_port]
           device_for_each_child+0x58/0x90
           cxl_port_probe+0x10e/0x130 [cxl_port]
           cxl_bus_probe+0x17/0x50 [cxl_core]
      
      Change the port ancestry walk to be by depth rather than by dport. This
      ensures that even if a port has unregistered its dports a deferred
      memdev cleanup will still be able to cleanup the memdev's interest in
      that port.
      
      The parent_port->dev.driver check is only needed for determining if the
      bottom up removal beat the top-down removal, but cxl_ep_remove() can
      always proceed given the port is pinned. That is, the two sources of
      cxl_ep_remove() are in cxl_detach_ep() and cxl_port_release(), and
      cxl_port_release() can not run if cxl_detach_ep() holds a reference.
      
      Fixes: 2703c16c ("cxl/core/port: Add switch port enumeration")
      Link: http://lore.kernel.org/r/167564534874.847146.5222419648551436750.stgit@dwillia2-xfh.jf.intel.com [1]
      Reviewed-by: default avatarVishal Verma <vishal.l.verma@intel.com>
      Link: https://lore.kernel.org/r/167601992789.1924368.8083994227892600608.stgit@dwillia2-xfh.jf.intel.comSigned-off-by: default avatarDan Williams <dan.j.williams@intel.com>
      2345df54
  2. 25 Jan, 2023 4 commits
  3. 05 Jan, 2023 4 commits
  4. 01 Jan, 2023 6 commits
  5. 31 Dec, 2022 2 commits
  6. 30 Dec, 2022 19 commits
  7. 29 Dec, 2022 3 commits
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 2258c2dc
      Linus Torvalds authored
      Pull kvm fixes from Paolo Bonzini:
       "Changes that were posted too late for 6.1, or after the release.
      
        x86:
      
         - several fixes to nested VMX execution controls
      
         - fixes and clarification to the documentation for Xen emulation
      
         - do not unnecessarily release a pmu event with zero period
      
         - MMU fixes
      
         - fix Coverity warning in kvm_hv_flush_tlb()
      
        selftests:
      
         - fixes for the ucall mechanism in selftests
      
         - other fixes mostly related to compilation with clang"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (41 commits)
        KVM: selftests: restore special vmmcall code layout needed by the harness
        Documentation: kvm: clarify SRCU locking order
        KVM: x86: fix deadlock for KVM_XEN_EVTCHN_RESET
        KVM: x86/xen: Documentation updates and clarifications
        KVM: x86/xen: Add KVM_XEN_INVALID_GPA and KVM_XEN_INVALID_GFN to uapi
        KVM: x86/xen: Simplify eventfd IOCTLs
        KVM: x86/xen: Fix SRCU/RCU usage in readers of evtchn_ports
        KVM: x86/xen: Use kvm_read_guest_virt() instead of open-coding it badly
        KVM: x86/xen: Fix memory leak in kvm_xen_write_hypercall_page()
        KVM: Delete extra block of "};" in the KVM API documentation
        kvm: x86/mmu: Remove duplicated "be split" in spte.h
        kvm: Remove the unused macro KVM_MMU_READ_{,UN}LOCK()
        MAINTAINERS: adjust entry after renaming the vmx hyperv files
        KVM: selftests: Mark correct page as mapped in virt_map()
        KVM: arm64: selftests: Don't identity map the ucall MMIO hole
        KVM: selftests: document the default implementation of vm_vaddr_populate_bitmap
        KVM: selftests: Use magic value to signal ucall_alloc() failure
        KVM: selftests: Disable "gnu-variable-sized-type-not-at-end" warning
        KVM: selftests: Include lib.mk before consuming $(CC)
        KVM: selftests: Explicitly disable builtins for mem*() overrides
        ...
      2258c2dc
    • Jens Axboe's avatar
      Merge tag 'nvme-6.2-2022-12-29' of git://git.infradead.org/nvme into block-6.2 · 1551ed5a
      Jens Axboe authored
      Pull NVMe fixes from Christoph:
      
      "nvme fixes for Linux 6.2
      
       - fix various problems in handling the Command Supported and Effects log
         (Christoph Hellwig)
       - don't allow unprivileged passthrough of commands that don't transfer
         data but modify logical block content (Christoph Hellwig)
       - add a features and quirks policy document (Christoph Hellwig)
       - fix some really nasty code that was correct but made smatch complain
         (Sagi Grimberg)"
      
      * tag 'nvme-6.2-2022-12-29' of git://git.infradead.org/nvme:
        nvme-auth: fix smatch warning complaints
        nvme: consult the CSE log page for unprivileged passthrough
        nvme: also return I/O command effects from nvme_command_effects
        nvmet: don't defer passthrough commands with trivial effects to the workqueue
        nvmet: set the LBCC bit for commands that modify data
        nvmet: use NVME_CMD_EFFECTS_CSUPP instead of open coding it
        nvme: fix the NVME_CMD_EFFECTS_CSE_MASK definition
        docs, nvme: add a feature and quirk policy document
      1551ed5a
    • Bhaskar Chowdhury's avatar
      kconfig: Add static text for search information in help menu · da8daff9
      Bhaskar Chowdhury authored
      Add few static text to explain how one can bring up the search dialog
      box by pressing the forward slash key anywhere on this interface.
      Signed-off-by: default avatarBhaskar Chowdhury <unixbhaskar@gmail.com>
      Acked-by: default avatarRandy Dunlap <rdunlap@infradead.org>
      Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
      da8daff9
  8. 28 Dec, 2022 1 commit