Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp632676ybz; Wed, 29 Apr 2020 06:43:42 -0700 (PDT) X-Google-Smtp-Source: APiQypKIzdqowzHdavzEtG/mgXj4C1OdGxmcue3vBH7Xg733GlnripHIm8ERA3lSx4PmULHs3cTj X-Received: by 2002:a17:906:1ec3:: with SMTP id m3mr2740736ejj.88.1588167822430; Wed, 29 Apr 2020 06:43:42 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1588167822; cv=none; d=google.com; s=arc-20160816; b=lIXlKPMyqbk6ks4lqNtkaw1vYVpZLrjmFooMEoJEa/JIBQqy2O9epP/59rItRzlnnY vQc8tyzopLY99k2Hc0dL5lZfI8FruSBKTfqcOLL+KrdZCPWABkO9kfK34Zcb8mMH/33J ZBD6Qc6ZLXmpVqSBnjOHOwgbdUR+7tLqGrFflNGmrFYV7lHVLW65S/aQH7MD1m6+wKlf Ph/KyNpKLlW7Sf/Rzgx3BVmEUUKFfYyo9RQ+dipiZeOCoVMnRzlg3hkSCM84ekqt9D0C ZauGs8KCpyI6WvN/RZxqY4sZcXT/yJl1FlXJPWyHntMNm+kh5uF/854MLQFdjqUrlcww F8qQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from; bh=feRkGyttXKsk92552FOdDqqMKSClgxqPbkY3SDoEFgw=; b=I762J2v3/uSAOeGPGFSM0fTOPTT3VeLwtgYWGxYBJi6EDsiaIMtrvX04uvs7q59WXJ /NKV8UvQp5rjco/j6r7XfY//M52xbfeeWY6bYKZ4O/vll2VsHSNyAwad1xx1qem1M2u0 vqebjnlDdHIaXePoOII0r/uLY8muW7cV9F/ZC6Mdvbb7ILxqeMrnu6q3ThMjBDuqxUIW Fc8fAbXGhZXllHugslmZOzNi28w0bgjp55JhYTB6cj4XV45MAutiLoMMxEWXDa1n+iIt c/Mkj/bUxnh4RCV9E3i2oMeNrQRcijc8k9phRb+G9Zk5Sg37gc700D1BEa6frJAM4DiA XLBQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=8bytes.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id cf5si3918579ejb.171.2020.04.29.06.43.18; Wed, 29 Apr 2020 06:43:42 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=8bytes.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728604AbgD2NlG (ORCPT + 99 others); Wed, 29 Apr 2020 09:41:06 -0400 Received: from 8bytes.org ([81.169.241.247]:39514 "EHLO theia.8bytes.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727865AbgD2Nhh (ORCPT ); Wed, 29 Apr 2020 09:37:37 -0400 Received: by theia.8bytes.org (Postfix, from userid 1000) id 49DD72E2; Wed, 29 Apr 2020 15:37:35 +0200 (CEST) From: Joerg Roedel To: Joerg Roedel , Will Deacon , Robin Murphy , Marek Szyprowski , Kukjin Kim , Krzysztof Kozlowski , David Woodhouse , Lu Baolu , Andy Gross , Bjorn Andersson , Matthias Brugger , Rob Clark , Heiko Stuebner , Gerald Schaefer , Thierry Reding , Jonathan Hunter , Jean-Philippe Brucker Cc: Daniel Drake , jonathan.derrick@intel.com, iommu@lists.linux-foundation.org, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, linux-arm-msm@vger.kernel.org, linux-mediatek@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-s390@vger.kernel.org, linux-tegra@vger.kernel.org, virtualization@lists.linux-foundation.org Subject: [PATCH v3 00/34] iommu: Move iommu_group setup to IOMMU core code Date: Wed, 29 Apr 2020 15:36:38 +0200 Message-Id: <20200429133712.31431-1-joro@8bytes.org> X-Mailer: git-send-email 2.17.1 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, here is the third version of this patch-set. Older versions can be found here: v1: https://lore.kernel.org/lkml/20200407183742.4344-1-joro@8bytes.org/ (Has some more introductory text) v2: https://lore.kernel.org/lkml/20200414131542.25608-1-joro@8bytes.org/ Changes v2 -> v3: * Rebased v5.7-rc3 * Added a missing iommu_group_put() as reported by Lu Baolu. * Added a patch to consolidate more initialization work in __iommu_probe_device(), fixing a bug where no 'struct device_iommu' was allocated in the hotplug path. There is also a git-branch available with these patches applied: https://git.kernel.org/pub/scm/linux/kernel/git/joro/linux.git/log/?h=iommu-probe-device-v3 Please review. If there are no objections I plan to put these patches into the IOMMU tree early next week. Thanks, Joerg Joerg Roedel (33): iommu: Move default domain allocation to separate function iommu/amd: Implement iommu_ops->def_domain_type call-back iommu/vt-d: Wire up iommu_ops->def_domain_type iommu/amd: Remove dma_mask check from check_device() iommu/amd: Return -ENODEV in add_device when device is not handled by IOMMU iommu: Add probe_device() and release_device() call-backs iommu: Move default domain allocation to iommu_probe_device() iommu: Keep a list of allocated groups in __iommu_probe_device() iommu: Move new probe_device path to separate function iommu: Split off default domain allocation from group assignment iommu: Move iommu_group_create_direct_mappings() out of iommu_group_add_device() iommu: Export bus_iommu_probe() and make is safe for re-probing iommu/amd: Remove dev_data->passthrough iommu/amd: Convert to probe/release_device() call-backs iommu/vt-d: Convert to probe/release_device() call-backs iommu/arm-smmu: Convert to probe/release_device() call-backs iommu/pamu: Convert to probe/release_device() call-backs iommu/s390: Convert to probe/release_device() call-backs iommu/virtio: Convert to probe/release_device() call-backs iommu/msm: Convert to probe/release_device() call-backs iommu/mediatek: Convert to probe/release_device() call-backs iommu/mediatek-v1 Convert to probe/release_device() call-backs iommu/qcom: Convert to probe/release_device() call-backs iommu/rockchip: Convert to probe/release_device() call-backs iommu/tegra: Convert to probe/release_device() call-backs iommu/renesas: Convert to probe/release_device() call-backs iommu/omap: Remove orphan_dev tracking iommu/omap: Convert to probe/release_device() call-backs iommu/exynos: Use first SYSMMU in controllers list for IOMMU core iommu/exynos: Convert to probe/release_device() call-backs iommu: Remove add_device()/remove_device() code-paths iommu: Move more initialization to __iommu_probe_device() iommu: Unexport iommu_group_get_for_dev() Sai Praneeth Prakhya (1): iommu: Add def_domain_type() callback in iommu_ops drivers/iommu/amd_iommu.c | 97 ++++---- drivers/iommu/amd_iommu_types.h | 1 - drivers/iommu/arm-smmu-v3.c | 38 +--- drivers/iommu/arm-smmu.c | 39 ++-- drivers/iommu/exynos-iommu.c | 24 +- drivers/iommu/fsl_pamu_domain.c | 22 +- drivers/iommu/intel-iommu.c | 68 +----- drivers/iommu/iommu.c | 387 +++++++++++++++++++++++++------- drivers/iommu/ipmmu-vmsa.c | 60 ++--- drivers/iommu/msm_iommu.c | 34 +-- drivers/iommu/mtk_iommu.c | 24 +- drivers/iommu/mtk_iommu_v1.c | 50 ++--- drivers/iommu/omap-iommu.c | 99 ++------ drivers/iommu/qcom_iommu.c | 24 +- drivers/iommu/rockchip-iommu.c | 26 +-- drivers/iommu/s390-iommu.c | 22 +- drivers/iommu/tegra-gart.c | 24 +- drivers/iommu/tegra-smmu.c | 31 +-- drivers/iommu/virtio-iommu.c | 41 +--- include/linux/iommu.h | 21 +- 20 files changed, 531 insertions(+), 601 deletions(-) -- 2.17.1