linux/drivers/xen/xenbus
Greg Kroah-Hartman d69d804845 driver core: have match() callback in struct bus_type take a const *
In the match() callback, the struct device_driver * should not be
changed, so change the function callback to be a const *.  This is one
step of many towards making the driver core safe to have struct
device_driver in read-only memory.

Because the match() callback is in all busses, all busses are modified
to handle this properly.  This does entail switching some container_of()
calls to container_of_const() to properly handle the constant *.

For some busses, like PCI and USB and HV, the const * is cast away in
the match callback as those busses do want to modify those structures at
this point in time (they have a local lock in the driver structure.)
That will have to be changed in the future if they wish to have their
struct device * in read-only-memory.

Cc: Rafael J. Wysocki <rafael@kernel.org>
Reviewed-by: Alex Elder <elder@kernel.org>
Acked-by: Sumit Garg <sumit.garg@linaro.org>
Link: https://lore.kernel.org/r/2024070136-wrongdoer-busily-01e8@gregkh
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-07-03 15:16:54 +02:00
..
Makefile xen/xenbus: Use *-y instead of *-objs in Makefile 2024-05-17 12:14:13 +02:00
xenbus_client.c xen/xenbus: document will_handle argument for xenbus_watch_path() 2024-02-12 18:03:14 +01:00
xenbus_comms.c xen: Fix event channel callback via INTX/GSI 2021-01-13 16:12:00 +01:00
xenbus_dev_backend.c
xenbus_dev_frontend.c xen/xenbus: Add __counted_by for struct read_buffer and use struct_size() 2023-10-16 15:18:33 +02:00
xenbus_probe_backend.c xenbus/backend: dynamically allocate the xen-backend shrinker 2023-10-04 10:32:23 -07:00
xenbus_probe_frontend.c xen: xenbus: Use helper function IS_ERR_OR_NULL() 2023-08-21 09:55:11 +02:00
xenbus_probe.c driver core: have match() callback in struct bus_type take a const * 2024-07-03 15:16:54 +02:00
xenbus_xs.c xen/xenbus: Avoid a lockdep warning when adding a watch 2023-08-22 08:04:59 +02:00
xenbus.h driver core: have match() callback in struct bus_type take a const * 2024-07-03 15:16:54 +02:00