linux/drivers/input
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
..
gameport driver core: have match() callback in struct bus_type take a const * 2024-07-03 15:16:54 +02:00
joystick Input updates for v6.10-rc0 2024-05-24 09:01:21 -07:00
keyboard Input updates for v6.10-rc0 2024-05-24 09:01:21 -07:00
misc Input updates for v6.10-rc0 2024-05-24 09:01:21 -07:00
mouse Merge branch 'next' into for-linus 2024-05-22 17:39:34 -07:00
rmi4 driver core: have match() callback in struct bus_type take a const * 2024-07-03 15:16:54 +02:00
serio driver core: have match() callback in struct bus_type take a const * 2024-07-03 15:16:54 +02:00
tablet Input: pegasus-notetaker - check pipe type when probing 2023-04-09 19:19:14 -07:00
tests Input: tests - add test to cover all input_grab_device() function 2023-05-23 14:50:28 -07:00
touchscreen Input: silead - Always support 10 fingers 2024-06-03 11:10:08 +02:00
apm-power.c
evbug.c
evdev.c Input: evdev - annotate struct evdev_client with __counted_by 2023-09-30 09:24:16 -07:00
ff-core.c Input: ff-core - prefer struct_size over open coded arithmetic 2024-04-30 14:04:31 -07:00
ff-memless.c
input-compat.c
input-compat.h
input-core-private.h
input-leds.c Input: leds - change config symbol dependency for audio mute trigger 2024-03-03 14:46:06 -08:00
input-mt.c
input-poller.c
input-poller.h
input.c Input: try trimming too long modalias strings 2024-05-19 17:58:45 -07:00
joydev.c
Kconfig Input: tests - modular KUnit tests should not depend on KUNIT=y 2023-05-02 10:39:00 -07:00
Makefile Input: Add KUnit tests for some of the input core helper functions 2023-04-01 22:47:04 -07:00
matrix-keymap.c
mousedev.c
sparse-keymap.c
touchscreen.c
vivaldi-fmap.c Input: vivaldi - convert to use sysfs_emit_at() API 2023-12-13 21:26:12 -08:00