aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf/scripts/python/flamegraph.py
diff options
context:
space:
mode:
authorJason Gunthorpe <jgg@nvidia.com>2024-06-25 09:37:41 -0300
committerWill Deacon <will@kernel.org>2024-07-02 15:39:48 +0100
commitd38c28dbefeee03d7dd02004ad80d9676ac54d86 (patch)
tree69cf2f2860115e7637d987b99e5ae08d4cbf5f7c /tools/perf/scripts/python/flamegraph.py
parentiommu/arm-smmu-v3: Keep track of arm_smmu_master_domain for SVA (diff)
downloadlinux-d38c28dbefeee03d7dd02004ad80d9676ac54d86.tar.gz
linux-d38c28dbefeee03d7dd02004ad80d9676ac54d86.zip
iommu/arm-smmu-v3: Put the SVA mmu notifier in the smmu_domain
This removes all the notifier de-duplication logic in the driver and relies on the core code to de-duplicate and allocate only one SVA domain per mm per smmu instance. This naturally gives a 1:1 relationship between SVA domain and mmu notifier. It is a significant simplication of the flow, as we end up with a single struct arm_smmu_domain for each MM and the invalidation can then be shifted to properly use the masters list like S1/S2 do. Remove all of the previous mmu_notifier, bond, shared cd, and cd refcount logic entirely. The logic here is tightly wound together with the unusued BTM support. Since the BTM logic requires holding all the iommu_domains in a global ASID xarray it conflicts with the design to have a single SVA domain per PASID, as multiple SMMU instances will need to have different domains. Following patches resolve this by making the ASID xarray per-instance instead of global. However, converting the BTM code over to this methodology requires many changes. Thus, since ARM_SMMU_FEAT_BTM is never enabled, remove the parts of the BTM support for ASID sharing that interact with SVA as well. A followup series is already working on fully enabling the BTM support, that requires iommufd's VIOMMU feature to bring in the KVM's VMID as well. It will come with an already written patch to bring back the ASID sharing using a per-instance ASID xarray. https://lore.kernel.org/linux-iommu/20240208151837.35068-1-shameerali.kolothum.thodi@huawei.com/ https://lore.kernel.org/linux-iommu/26-v6-228e7adf25eb+4155-smmuv3_newapi_p2_jgg@nvidia.com/ Tested-by: Nicolin Chen <nicolinc@nvidia.com> Tested-by: Shameer Kolothum <shameerali.kolothum.thodi@huawei.com> Reviewed-by: Nicolin Chen <nicolinc@nvidia.com> Reviewed-by: Michael Shavit <mshavit@google.com> Reviewed-by: Jerry Snitselaar <jsnitsel@redhat.com> Signed-off-by: Jason Gunthorpe <jgg@nvidia.com> Link: https://lore.kernel.org/r/10-v9-5cd718286059+79186-smmuv3_newapi_p2b_jgg@nvidia.com Signed-off-by: Will Deacon <will@kernel.org>
Diffstat (limited to 'tools/perf/scripts/python/flamegraph.py')
0 files changed, 0 insertions, 0 deletions
e='2016-08-08 08:11:37 +0530'>2016-08-08dmaengine: Add helper function to prep for error reportingDave Jiang1-0/+72 2016-08-07Linux 4.8-rc1v4.8-rc1Linus Torvalds1-2/+2 2016-08-07block: rename bio bi_rw to bi_opfJens Axboe51-157/+158 2016-08-07target: iblock_execute_sync_cache() should use bio_set_op_attrs()Jens Axboe1-1/+1 2016-08-07mm: make __swap_writepage() use bio_set_op_attrs()Jens Axboe1-2/+3 2016-08-07block/mm: make bdev_ops->rw_page() take a bool for read/writeJens Axboe11-53/+51 2016-08-07fs: return EPERM on immutable inodeEryu Guan4-4/+5 2016-08-05ramoops: use persistent_ram_free() instead of kfree() for freeing przHiraku Toyooka1-3/+3 2016-08-05ramoops: use DT reserved-memory bindingsKees Cook4-33/+56 2016-08-05NTB: ntb_hw_intel: use local variable pdevAllen Hubbe1-5/+5 2016-08-05NTB: ntb_hw_intel: show BAR size in debugfs infoAllen Hubbe1-1/+38 2016-08-05ntb_test: Add a selftest script for the NTB subsystemLogan Gunthorpe2-0/+423 2016-08-05ntb_perf: clear link_is_up flag when the link goes down.Logan Gunthorpe1-19/+9 2016-08-05ntb_pingpong: Add a debugfs file to get the ping countLogan Gunthorpe1-1/+61 2016-08-05ntb_tool: Add link status and files to debugfsLogan Gunthorpe1-0/+92 2016-08-05ntb_tool: Postpone memory window initialization for the userLogan Gunthorpe1-138/+228 2016-08-05ntb_perf: Wait for link before running testLogan Gunthorpe1-1/+4 2016-08-05ntb_perf: Return results by reading the run fileLogan Gunthorpe1-12/+55 2016-08-05ntb_perf: Improve thread handling to increase robustnessLogan Gunthorpe1-48/+76 2016-08-05ntb_perf: Schedule based on time not on performanceLogan Gunthorpe1-2/+4 2016-08-05ntb_transport: Check the number of spads the hardware supportsLogan Gunthorpe2-4/+13 2016-08-05ntb_tool: Add memory window debug supportLogan Gunthorpe1-1/+257 2016-08-05ntb_perf: Allow limiting the size of the memory windowsLogan Gunthorpe1-0/+8 2016-08-05NTB: allocate number transport entries depending on size of ring sizeDave Jiang1-2/+27 2016-08-05ntb_tool: BUG: Ensure the buffer size is large enough to return all spadsLogan Gunthorpe1-2/+8 2016-08-05ntb_tool: Fix infinite loop bug when writing spad/peer_spad fileLogan Gunthorpe1-4/+5