From patchwork Thu Mar 9 22:21:51 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jacob Pan X-Patchwork-Id: 13168411 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id EFAE1C61DA4 for ; Thu, 9 Mar 2023 22:18:13 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230526AbjCIWSM (ORCPT ); Thu, 9 Mar 2023 17:18:12 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54030 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230088AbjCIWSK (ORCPT ); Thu, 9 Mar 2023 17:18:10 -0500 Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 40A762914F; Thu, 9 Mar 2023 14:18:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1678400288; x=1709936288; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=++gHGBV14UtCVgFfuEfnS3kCGAlJwlUHhQirNwHAb7U=; b=k+ZUszPc67Liw1CwwKeHx9KpTQWnKx0wy5kfzcn+lG0F5iJNhiUbDh/o HdNt/xvVlQDieYC8VAfPz9qtsQMEJLoZxyu1qnhV01mD/S3BhrRMpYVMr prs5wv/HpX4BsLTyQF4jpgAT0FeIjdNVvOWC8SaMiUHhjgSraniIe1qOa ghXQxcYvwHRwkWVznG3nizeO+S+Dm8ycZlB5tY2nrYMET1bKKxTe2boL0 1/YOa7QJj+LowNsW2SpVuDBz8V+6rA+bsbW0QnKHttN/Txgg1/FdEbIxL 6z0FfuZF/rUqhVeyzSzS6RLAIVaLd9xcrQ/nsPz1raMHI1UoTSqnTjtcS g==; X-IronPort-AV: E=McAfee;i="6500,9779,10644"; a="364235169" X-IronPort-AV: E=Sophos;i="5.98,247,1673942400"; d="scan'208";a="364235169" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Mar 2023 14:18:07 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10644"; a="707788820" X-IronPort-AV: E=Sophos;i="5.98,247,1673942400"; d="scan'208";a="707788820" Received: from srinivas-otcpl-7600.jf.intel.com (HELO jacob-builder.jf.intel.com) ([10.54.39.106]) by orsmga008.jf.intel.com with ESMTP; 09 Mar 2023 14:18:06 -0800 From: Jacob Pan To: LKML , iommu@lists.linux.dev, Jason Gunthorpe , "Lu Baolu" , Joerg Roedel , Jean-Philippe Brucker , Dave Hansen , Thomas Gleixner , X86 Kernel , bp@alien8.de, "H. Peter Anvin" , Peter Zijlstra , corbet@lwn.net, vkoul@kernel.org, dmaengine@vger.kernel.org, linux-doc@vger.kernel.org Cc: "Robin Murphy" , "Will Deacon" , David Woodhouse , Raj Ashok , "Tian, Kevin" , Yi Liu , "Yu, Fenghua" , Dave Jiang , Kirill Shutemov , Tony Luck , Jacob Pan Subject: [PATCH v5 0/7] Remove VT-d virtual command interface and IOASID Date: Thu, 9 Mar 2023 14:21:51 -0800 Message-Id: <20230309222159.487826-1-jacob.jun.pan@linux.intel.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: dmaengine@vger.kernel.org Hi all, This patch set removes unused VT-d virtual command interface followed by removal of the IOASID infrastructure. This has only been tested on x86 platforms, need help with testing on ARM SMMU and other architectures. Thanks, Jacob ChangeLog: v5: - rebased on v6.3-rc1 - put removing iommu_sva_find() in a separate patch (Kevin) - move definition of helpers to iommu code to be consistent with declarations. (Kevin) - misc fixes v4: - keep mm_pasid helpers inline as much as we can for fork performance - separate GFP_ATOMIC to GFP_KERNEL change for bisectability v3: - moved helper functions for PASID under SVA code, avoided circular inclusion between mm.h and iommu.h - deleted makefiles - put rename under a different patch Jacob Pan (5): iommu/vt-d: Remove virtual command interface iommu/sva: Move PASID helpers to sva code iommu/sva: Remove PASID to mm lookup function iommu/sva: Use GFP_KERNEL for pasid allocation iommu/ioasid: Rename INVALID_IOASID Jason Gunthorpe (2): iommu/sva: Stop using ioasid_set for SVA iommu: Remove ioasid infrastructure Documentation/x86/sva.rst | 2 +- arch/x86/kernel/traps.c | 5 +- drivers/dma/idxd/device.c | 8 +- drivers/dma/idxd/idxd.h | 2 +- drivers/dma/idxd/init.c | 2 +- drivers/dma/idxd/irq.c | 2 +- drivers/iommu/Kconfig | 5 - drivers/iommu/Makefile | 1 - drivers/iommu/intel/cap_audit.c | 2 - drivers/iommu/intel/dmar.c | 6 +- drivers/iommu/intel/iommu.c | 87 +------ drivers/iommu/intel/iommu.h | 3 - drivers/iommu/intel/svm.c | 3 +- drivers/iommu/ioasid.c | 422 -------------------------------- drivers/iommu/iommu-sva.c | 62 ++--- drivers/iommu/iommu-sva.h | 4 - include/linux/ioasid.h | 83 ------- include/linux/iommu-helper.h | 12 + include/linux/iommu.h | 8 +- include/linux/sched/mm.h | 27 +- mm/init-mm.c | 4 +- 21 files changed, 54 insertions(+), 696 deletions(-) delete mode 100644 drivers/iommu/ioasid.c delete mode 100644 include/linux/ioasid.h