All of lore.kernel.org
 help / color / mirror / Atom feed
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: linux-kernel@vger.kernel.org
Cc: rafael@kernel.org,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Joerg Roedel <joro@8bytes.org>, Will Deacon <will@kernel.org>,
	Robin Murphy <robin.murphy@arm.com>,
	iommu@lists.linux.dev
Subject: [PATCH 34/36] iommu: make the pointer to struct bus_type constant
Date: Mon, 13 Mar 2023 19:29:16 +0100	[thread overview]
Message-ID: <20230313182918.1312597-34-gregkh@linuxfoundation.org> (raw)
In-Reply-To: <20230313182918.1312597-1-gregkh@linuxfoundation.org>

A number of iommu functions take a struct bus_type * and never modify
the data passed in, so make them all const * as that is what the driver
core is expecting to have passed into as well.

This is a step toward making all struct bus_type pointers constant in
the kernel.

Cc: Joerg Roedel <joro@8bytes.org>
Cc: Will Deacon <will@kernel.org>
Cc: Robin Murphy <robin.murphy@arm.com>
Cc: iommu@lists.linux.dev
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
Note, this is a patch that is a prepatory cleanup as part of a larger
series of patches that is working on resolving some old driver core
design mistakes.  It will build and apply cleanly on top of 6.3-rc2 on
its own, but I'd prefer if I could take it through my driver-core tree
so that the driver core changes can be taken through there for 6.4-rc1.

 drivers/iommu/iommu.c | 14 +++++++-------
 include/linux/iommu.h | 10 +++++-----
 2 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c
index 10db680acaed..0b5e181998c9 100644
--- a/drivers/iommu/iommu.c
+++ b/drivers/iommu/iommu.c
@@ -89,7 +89,7 @@ static int iommu_bus_notifier(struct notifier_block *nb,
 			      unsigned long action, void *data);
 static int iommu_alloc_default_domain(struct iommu_group *group,
 				      struct device *dev);
-static struct iommu_domain *__iommu_domain_alloc(struct bus_type *bus,
+static struct iommu_domain *__iommu_domain_alloc(const struct bus_type *bus,
 						 unsigned type);
 static int __iommu_attach_device(struct iommu_domain *domain,
 				 struct device *dev);
@@ -1631,7 +1631,7 @@ static int iommu_get_def_domain_type(struct device *dev)
 	return 0;
 }
 
-static int iommu_group_alloc_default_domain(struct bus_type *bus,
+static int iommu_group_alloc_default_domain(const struct bus_type *bus,
 					    struct iommu_group *group,
 					    unsigned int type)
 {
@@ -1777,7 +1777,7 @@ static int probe_get_default_domain_type(struct device *dev, void *data)
 	return 0;
 }
 
-static void probe_alloc_default_domain(struct bus_type *bus,
+static void probe_alloc_default_domain(const struct bus_type *bus,
 				       struct iommu_group *group)
 {
 	struct __group_domain_type gtype;
@@ -1832,7 +1832,7 @@ static int iommu_group_create_direct_mappings(struct iommu_group *group)
 					  iommu_do_create_direct_mappings);
 }
 
-int bus_iommu_probe(struct bus_type *bus)
+int bus_iommu_probe(const struct bus_type *bus)
 {
 	struct iommu_group *group, *next;
 	LIST_HEAD(group_list);
@@ -1876,7 +1876,7 @@ int bus_iommu_probe(struct bus_type *bus)
 	return ret;
 }
 
-bool iommu_present(struct bus_type *bus)
+bool iommu_present(const struct bus_type *bus)
 {
 	return bus->iommu_ops != NULL;
 }
@@ -1951,7 +1951,7 @@ void iommu_set_fault_handler(struct iommu_domain *domain,
 }
 EXPORT_SYMBOL_GPL(iommu_set_fault_handler);
 
-static struct iommu_domain *__iommu_domain_alloc(struct bus_type *bus,
+static struct iommu_domain *__iommu_domain_alloc(const struct bus_type *bus,
 						 unsigned type)
 {
 	struct iommu_domain *domain;
@@ -1976,7 +1976,7 @@ static struct iommu_domain *__iommu_domain_alloc(struct bus_type *bus,
 	return domain;
 }
 
-struct iommu_domain *iommu_domain_alloc(struct bus_type *bus)
+struct iommu_domain *iommu_domain_alloc(const struct bus_type *bus)
 {
 	return __iommu_domain_alloc(bus, IOMMU_DOMAIN_UNMANAGED);
 }
diff --git a/include/linux/iommu.h b/include/linux/iommu.h
index 6595454d4f48..0fd4e6734d5b 100644
--- a/include/linux/iommu.h
+++ b/include/linux/iommu.h
@@ -455,11 +455,11 @@ static inline const struct iommu_ops *dev_iommu_ops(struct device *dev)
 	return dev->iommu->iommu_dev->ops;
 }
 
-extern int bus_iommu_probe(struct bus_type *bus);
-extern bool iommu_present(struct bus_type *bus);
+extern int bus_iommu_probe(const struct bus_type *bus);
+extern bool iommu_present(const struct bus_type *bus);
 extern bool device_iommu_capable(struct device *dev, enum iommu_cap cap);
 extern bool iommu_group_has_isolated_msi(struct iommu_group *group);
-extern struct iommu_domain *iommu_domain_alloc(struct bus_type *bus);
+extern struct iommu_domain *iommu_domain_alloc(const struct bus_type *bus);
 extern struct iommu_group *iommu_group_get_by_id(int id);
 extern void iommu_domain_free(struct iommu_domain *domain);
 extern int iommu_attach_device(struct iommu_domain *domain,
@@ -732,7 +732,7 @@ struct iommu_device {};
 struct iommu_fault_param {};
 struct iommu_iotlb_gather {};
 
-static inline bool iommu_present(struct bus_type *bus)
+static inline bool iommu_present(const struct bus_type *bus)
 {
 	return false;
 }
@@ -742,7 +742,7 @@ static inline bool device_iommu_capable(struct device *dev, enum iommu_cap cap)
 	return false;
 }
 
-static inline struct iommu_domain *iommu_domain_alloc(struct bus_type *bus)
+static inline struct iommu_domain *iommu_domain_alloc(const struct bus_type *bus)
 {
 	return NULL;
 }
-- 
2.39.2


  parent reply	other threads:[~2023-03-13 18:32 UTC|newest]

Thread overview: 89+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-03-13 18:28 [PATCH 01/36] EDAC/sysfs: move to use bus_get_dev_root() Greg Kroah-Hartman
2023-03-13 18:28 ` [PATCH 02/36] ACPI: LPIT: " Greg Kroah-Hartman
2023-03-13 18:43   ` Rafael J. Wysocki
2023-03-17 14:50     ` Greg Kroah-Hartman
2023-03-22  8:36     ` [PATCH v2 02/19] " Greg Kroah-Hartman
2023-03-22 14:15       ` Rafael J. Wysocki
2023-03-13 18:28 ` [PATCH 03/36] cpufreq: " Greg Kroah-Hartman
2023-03-13 18:45   ` Rafael J. Wysocki
2023-03-13 18:28 ` [PATCH 04/36] platform/x86: ibm_rtl: " Greg Kroah-Hartman
2023-03-15 12:46   ` Hans de Goede
2023-03-13 18:28 ` [PATCH 05/36] platform/x86: intel-uncore-freq: " Greg Kroah-Hartman
2023-03-13 19:14   ` srinivas pandruvada
2023-03-15 12:46   ` Hans de Goede
2023-03-13 18:28 ` [PATCH 06/36] cpuidle: " Greg Kroah-Hartman
2023-03-13 18:58   ` Rafael J. Wysocki
2023-03-22  9:04     ` Greg Kroah-Hartman
2023-03-22  9:05     ` [PATCH v2 03/19] " Greg Kroah-Hartman
2023-03-22 14:27       ` Rafael J. Wysocki
2023-03-24  8:56         ` Greg Kroah-Hartman
2023-03-13 18:28 ` [PATCH 07/36] cpu/hotplug: " Greg Kroah-Hartman
2023-03-20 13:59   ` Thomas Gleixner
2023-03-13 18:28 ` [PATCH 08/36] workqueue: " Greg Kroah-Hartman
2023-03-14  3:31   ` Tejun Heo
2023-03-13 18:28 ` [PATCH 09/36] x86/microcode: " Greg Kroah-Hartman
2023-03-13 18:28 ` [PATCH 10/36] x86/umwait: " Greg Kroah-Hartman
2023-03-13 18:28 ` [PATCH 11/36] arm64: cpufeature: " Greg Kroah-Hartman
2023-03-13 18:28   ` Greg Kroah-Hartman
2023-03-13 18:28 ` [PATCH 12/36] powerpc/sysfs: " Greg Kroah-Hartman
2023-03-13 18:28   ` Greg Kroah-Hartman
2023-03-13 18:28 ` [PATCH 13/36] powerpc/powernv: " Greg Kroah-Hartman
2023-03-13 18:28   ` Greg Kroah-Hartman
2023-03-13 18:28 ` [PATCH 14/36] powerpc/pseries: " Greg Kroah-Hartman
2023-03-13 18:28   ` Greg Kroah-Hartman
2023-03-15  2:00   ` Michael Ellerman
2023-03-15  2:00     ` Michael Ellerman
2023-03-13 18:28 ` [PATCH 15/36] powerpc/fsl: " Greg Kroah-Hartman
2023-03-13 18:28   ` Greg Kroah-Hartman
2023-03-13 18:28 ` [PATCH 16/36] sh: dma-sysfs: " Greg Kroah-Hartman
2023-03-13 18:38   ` John Paul Adrian Glaubitz
2023-03-13 18:48   ` John Paul Adrian Glaubitz
2023-03-13 18:28 ` [PATCH 17/36] sh: intc: " Greg Kroah-Hartman
2023-03-13 18:39   ` John Paul Adrian Glaubitz
2023-03-13 18:29 ` [PATCH 18/36] s390/topology: " Greg Kroah-Hartman
2023-03-14 11:34   ` Heiko Carstens
2023-03-13 18:29 ` [PATCH 19/36] s390/smp: " Greg Kroah-Hartman
2023-03-14 11:35   ` Heiko Carstens
2023-03-13 18:29 ` [PATCH 20/36] cpufreq: amd-pstate: " Greg Kroah-Hartman
2023-03-14  6:04   ` Huang Rui
2023-03-13 18:29 ` [PATCH 21/36] irqchip/mbigen: " Greg Kroah-Hartman
2023-03-13 18:29 ` [PATCH 22/36] driver core: bus: move dev_root out of struct bus_type Greg Kroah-Hartman
2023-03-13 18:29 ` [PATCH 23/36] driver core: bus: mark the struct bus_type for sysfs callbacks as constant Greg Kroah-Hartman
2023-03-13 19:14   ` Bjorn Helgaas
2023-03-13 22:41   ` Wei Liu
2023-03-13 23:01   ` Ira Weiny
2023-03-14  7:10   ` Harald Freudenberger
2023-03-14 17:43   ` Dan Williams
2023-03-15  2:33   ` Martin K. Petersen
2023-03-15 11:10   ` Ilya Dryomov
2023-03-15 11:51   ` Alex Shi
2023-03-15 15:05   ` Winiarska, Iwona
2023-03-13 18:29 ` [PATCH 24/36] driver core: bus: constantify bus_register() Greg Kroah-Hartman
2023-03-13 18:29 ` [PATCH 25/36] driver core: bus: constify bus_rescan_devices() Greg Kroah-Hartman
2023-03-13 18:29 ` [PATCH 26/36] driver core: bus: constify driver_find() Greg Kroah-Hartman
2023-03-13 18:29 ` [PATCH 27/36] driver core: bus: constify bus_get() Greg Kroah-Hartman
2023-03-13 18:29 ` [PATCH 28/36] driver core: make the bus_type in struct device_driver constant Greg Kroah-Hartman
2023-03-13 18:29 ` [PATCH 29/36] crypto: hisilicon/qm - make struct bus_type * const Greg Kroah-Hartman
2023-03-14  8:22   ` Herbert Xu
2023-03-13 18:29 ` [PATCH 30/36] drm/i915/huc: use const struct bus_type pointers Greg Kroah-Hartman
2023-03-13 18:29   ` Greg Kroah-Hartman
2023-03-13 18:29   ` [Intel-gfx] " Greg Kroah-Hartman
2023-03-15 10:15   ` Tvrtko Ursulin
2023-03-15 10:15     ` Tvrtko Ursulin
2023-03-15 10:15     ` [Intel-gfx] " Tvrtko Ursulin
2023-03-13 18:29 ` [PATCH 31/36] vhost-vdpa: vhost_vdpa_alloc_domain() should be using a const struct bus_type * Greg Kroah-Hartman
2023-03-13 18:29   ` Greg Kroah-Hartman
2023-03-13 18:29 ` [PATCH 32/36] dmaengine: idxd: use " Greg Kroah-Hartman
2023-03-13 19:07   ` Fenghua Yu
2023-03-16 10:16     ` Greg Kroah-Hartman
2023-03-16 23:57       ` Fenghua Yu
2023-03-24  8:57         ` Greg Kroah-Hartman
2023-03-17 17:19   ` Vinod Koul
2023-03-17 17:33   ` Dave Jiang
2023-03-13 18:29 ` [PATCH 33/36] ARM/dma-mapping: const a pointer to bus_type in arm_iommu_create_mapping() Greg Kroah-Hartman
2023-03-13 18:29   ` Greg Kroah-Hartman
2023-03-13 18:29 ` Greg Kroah-Hartman [this message]
2023-03-22 12:13   ` [PATCH 34/36] iommu: make the pointer to struct bus_type constant Joerg Roedel
2023-03-13 18:29 ` [PATCH 35/36] driver core: device.h: make struct bus_type a const * Greg Kroah-Hartman
2023-03-13 18:29 ` [PATCH 36/36] USB: mark all struct bus_type as const Greg Kroah-Hartman
2023-03-14  8:48   ` Heikki Krogerus

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230313182918.1312597-34-gregkh@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=iommu@lists.linux.dev \
    --cc=joro@8bytes.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rafael@kernel.org \
    --cc=robin.murphy@arm.com \
    --cc=will@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.