1. 21 10月, 2020 2 次提交
  2. 23 7月, 2020 1 次提交
  3. 14 7月, 2020 1 次提交
  4. 06 7月, 2020 1 次提交
  5. 30 5月, 2020 1 次提交
  6. 30 1月, 2020 1 次提交
  7. 29 1月, 2020 1 次提交
  8. 25 1月, 2020 2 次提交
  9. 22 11月, 2019 1 次提交
  10. 21 11月, 2019 2 次提交
  11. 18 9月, 2019 2 次提交
  12. 09 7月, 2019 1 次提交
  13. 24 4月, 2019 1 次提交
  14. 30 1月, 2019 1 次提交
  15. 14 12月, 2018 1 次提交
  16. 06 12月, 2018 1 次提交
  17. 19 10月, 2018 1 次提交
    • J
      PCI: vmd: Detach resources after stopping root bus · dc8af3a8
      Jon Derrick 提交于
      The VMD removal path calls pci_stop_root_busi(), which tears down the pcie
      tree, including detaching all of the attached drivers. During driver
      detachment, devices may use pci_release_region() to release resources.
      This path relies on the resource being accessible in resource tree.
      
      By detaching the child domain from the parent resource domain prior to
      stopping the bus, we are preventing the list traversal from finding the
      resource to be freed. If we instead detach the resource after stopping
      the bus, we will have properly freed the resource and detaching is
      simply accounting at that point.
      
      Without this order, the resource is never freed and is orphaned on VMD
      removal, leading to a warning:
      
      [  181.940162] Trying to free nonexistent resource <e5a10000-e5a13fff>
      
      Fixes: 2c2c5c5c ("x86/PCI: VMD: Attach VMD resources to parent domain's resource tree")
      Signed-off-by: NJon Derrick <jonathan.derrick@intel.com>
      [lorenzo.pieralisi@arm.com: updated commit log]
      Signed-off-by: NLorenzo Pieralisi <lorenzo.pieralisi@arm.com>
      Reviewed-by: NKeith Busch <keith.busch@intel.com>
      dc8af3a8
  18. 01 10月, 2018 1 次提交
  19. 29 6月, 2018 1 次提交
  20. 08 6月, 2018 1 次提交
  21. 25 5月, 2018 4 次提交
  22. 29 1月, 2018 1 次提交
  23. 31 8月, 2017 1 次提交
  24. 15 8月, 2017 1 次提交
  25. 04 8月, 2017 2 次提交
  26. 03 7月, 2017 3 次提交
  27. 23 6月, 2017 1 次提交
  28. 25 1月, 2017 1 次提交
    • B
      treewide: Constify most dma_map_ops structures · 5299709d
      Bart Van Assche 提交于
      Most dma_map_ops structures are never modified. Constify these
      structures such that these can be write-protected. This patch
      has been generated as follows:
      
      git grep -l 'struct dma_map_ops' |
        xargs -d\\n sed -i \
          -e 's/struct dma_map_ops/const struct dma_map_ops/g' \
          -e 's/const struct dma_map_ops {/struct dma_map_ops {/g' \
          -e 's/^const struct dma_map_ops;$/struct dma_map_ops;/' \
          -e 's/const const struct dma_map_ops /const struct dma_map_ops /g';
      sed -i -e 's/const \(struct dma_map_ops intel_dma_ops\)/\1/' \
        $(git grep -l 'struct dma_map_ops intel_dma_ops');
      sed -i -e 's/const \(struct dma_map_ops dma_iommu_ops\)/\1/' \
        $(git grep -l 'struct dma_map_ops' | grep ^arch/powerpc);
      sed -i -e '/^struct vmd_dev {$/,/^};$/ s/const \(struct dma_map_ops[[:blank:]]dma_ops;\)/\1/' \
             -e '/^static void vmd_setup_dma_ops/,/^}$/ s/const \(struct dma_map_ops \*dest\)/\1/' \
             -e 's/const \(struct dma_map_ops \*dest = \&vmd->dma_ops\)/\1/' \
          drivers/pci/host/*.c
      sed -i -e '/^void __init pci_iommu_alloc(void)$/,/^}$/ s/dma_ops->/intel_dma_ops./' arch/ia64/kernel/pci-dma.c
      sed -i -e 's/static const struct dma_map_ops sn_dma_ops/static struct dma_map_ops sn_dma_ops/' arch/ia64/sn/pci/pci_dma.c
      sed -i -e 's/(const struct dma_map_ops \*)//' drivers/misc/mic/bus/vop_bus.c
      Signed-off-by: NBart Van Assche <bart.vanassche@sandisk.com>
      Reviewed-by: NChristoph Hellwig <hch@lst.de>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>
      Cc: David Woodhouse <dwmw2@infradead.org>
      Cc: Juergen Gross <jgross@suse.com>
      Cc: H. Peter Anvin <hpa@zytor.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: linux-arch@vger.kernel.org
      Cc: linux-kernel@vger.kernel.org
      Cc: Russell King <linux@armlinux.org.uk>
      Cc: x86@kernel.org
      Signed-off-by: NDoug Ledford <dledford@redhat.com>
      5299709d
  29. 08 12月, 2016 2 次提交
    • B
      PCI: vmd: Fix suspend handlers defined-but-not-used warning · 42db500a
      Borislav Petkov 提交于
      Fix the following warnings:
      
        drivers/pci/host/vmd.c:731:12: warning: ‘vmd_suspend’ defined but not used [-Wunused-function]
         static int vmd_suspend(struct device *dev)
                    ^
        drivers/pci/host/vmd.c:739:12: warning: ‘vmd_resume’ defined but not used [-Wunused-function]
         static int vmd_resume(struct device *dev)
                    ^
      Signed-off-by: NBorislav Petkov <bp@suse.de>
      Signed-off-by: NBjorn Helgaas <helgaas@kernel.org>
      Reviewed-by: NKeith Busch <keith.busch@intel.com>
      42db500a
    • J
      PCI: vmd: Use SRCU as a local RCU to prevent delaying global RCU · 3906b918
      Jon Derrick 提交于
      SRCU lets synchronize_srcu() depend on VMD-local RCU primitives, preventing
      long delays from locking up RCU in other systems.  VMD performs a
      synchronize when removing a device, but will hit all IRQ lists if the
      device uses all VMD vectors.  This patch will not help VMD's RCU
      synchronization, but will isolate the read side delays to the VMD
      subsystem.  Additionally, the use of SRCU in VMD's ISR will keep it
      isolated from any other RCU waiters in the rest of the system.
      
      Tested using concurrent FIO and NVMe resets:
      
        [global]
        rw=read
        bs=4k
        direct=1
        ioengine=libaio
        iodepth=32
        norandommap
        timeout=300
        runtime=1000000000
      
        [nvme0]
        cpus_allowed=0-63
        numjobs=8
        filename=/dev/nvme0n1
      
        [nvme1]
        cpus_allowed=0-63
        numjobs=8
        filename=/dev/nvme1n1
      
        while (true) do
          for i in /sys/class/nvme/nvme*; do
            echo "Resetting ${i##*/}"
            echo 1 > $i/reset_controller;
            sleep 5
          done;
        done
      Signed-off-by: NJon Derrick <jonathan.derrick@intel.com>
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      Reviewed-by: NKeith Busch <keith.busch@intel.com>
      3906b918