Commit 38370c4e authored by Greg Kroah-Hartman's avatar Greg Kroah-Hartman

driver core: bus: constify bus_get()

It's funny to think about getting a reference count of a constant
structure pointer, but this locks into place the private data
"underneath" the struct bus_type() which is important to not go away
while we are working with the bus structure for some callbacks.

Cc: "Rafael J. Wysocki" <rafael@kernel.org>
Link: https://lore.kernel.org/r/20230313182918.1312597-27-gregkh@linuxfoundation.orgSigned-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 7c06be04
...@@ -84,7 +84,7 @@ static struct subsys_private *bus_to_subsys(const struct bus_type *bus) ...@@ -84,7 +84,7 @@ static struct subsys_private *bus_to_subsys(const struct bus_type *bus)
return sp; return sp;
} }
static struct bus_type *bus_get(struct bus_type *bus) static const struct bus_type *bus_get(const struct bus_type *bus)
{ {
struct subsys_private *sp = bus_to_subsys(bus); struct subsys_private *sp = bus_to_subsys(bus);
...@@ -233,7 +233,7 @@ static const struct kset_uevent_ops bus_uevent_ops = { ...@@ -233,7 +233,7 @@ static const struct kset_uevent_ops bus_uevent_ops = {
static ssize_t unbind_store(struct device_driver *drv, const char *buf, static ssize_t unbind_store(struct device_driver *drv, const char *buf,
size_t count) size_t count)
{ {
struct bus_type *bus = bus_get(drv->bus); const struct bus_type *bus = bus_get(drv->bus);
struct device *dev; struct device *dev;
int err = -ENODEV; int err = -ENODEV;
...@@ -256,7 +256,7 @@ static DRIVER_ATTR_IGNORE_LOCKDEP(unbind, 0200, NULL, unbind_store); ...@@ -256,7 +256,7 @@ static DRIVER_ATTR_IGNORE_LOCKDEP(unbind, 0200, NULL, unbind_store);
static ssize_t bind_store(struct device_driver *drv, const char *buf, static ssize_t bind_store(struct device_driver *drv, const char *buf,
size_t count) size_t count)
{ {
struct bus_type *bus = bus_get(drv->bus); const struct bus_type *bus = bus_get(drv->bus);
struct device *dev; struct device *dev;
int err = -ENODEV; int err = -ENODEV;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment