Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

pcmcia: cs: make pcmcia_socket_class constant

Since commit 43a7206b0963 ("driver core: class: make class_register() take
a const *"), the driver core allows for struct class to be in read-only
memory, so move the pcmcia_socket_class structure to be declared at build
time placing it into read-only memory, instead of having to be dynamically
allocated at boot time.

Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Suggested-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Ricardo B. Marliere <ricardo@marliere.net>
Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>

authored by

Ricardo B. Marliere and committed by
Dominik Brodowski
ccae53aa 1bec7691

+2 -2
+1 -1
drivers/pcmcia/cs.c
··· 892 892 893 893 #endif /* CONFIG_PM */ 894 894 895 - struct class pcmcia_socket_class = { 895 + const struct class pcmcia_socket_class = { 896 896 .name = "pcmcia_socket", 897 897 .dev_uevent = pcmcia_socket_uevent, 898 898 .dev_release = pcmcia_release_socket,
+1 -1
drivers/pcmcia/cs_internal.h
··· 113 113 /* cs.c */ 114 114 extern struct rw_semaphore pcmcia_socket_list_rwsem; 115 115 extern struct list_head pcmcia_socket_list; 116 - extern struct class pcmcia_socket_class; 116 + extern const struct class pcmcia_socket_class; 117 117 118 118 int pccard_register_pcmcia(struct pcmcia_socket *s, struct pcmcia_callback *c); 119 119 struct pcmcia_socket *pcmcia_get_socket_by_nr(unsigned int nr);