diff options
author | Kay Sievers <kay.sievers@suse.de> | 2005-11-16 03:00:00 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2006-01-04 19:18:08 -0500 |
commit | 312c004d36ce6c739512bac83b452f4c20ab1f62 (patch) | |
tree | e61e8331680a0da29557fe21414d3b31e62c9293 /include/linux | |
parent | 5f123fbd80f4f788554636f02bf73e40f914e0d6 (diff) |
[PATCH] driver core: replace "hotplug" by "uevent"
Leave the overloaded "hotplug" word to susbsystems which are handling
real devices. The driver core does not "plug" anything, it just exports
the state to userspace and generates events.
Signed-off-by: Kay Sievers <kay.sievers@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/device.h | 14 | ||||
-rw-r--r-- | include/linux/firmware.h | 2 | ||||
-rw-r--r-- | include/linux/kobject.h | 40 | ||||
-rw-r--r-- | include/linux/sysctl.h | 2 | ||||
-rw-r--r-- | include/linux/usb.h | 2 |
5 files changed, 29 insertions, 31 deletions
diff --git a/include/linux/device.h b/include/linux/device.h index 17cbc6db67b4..0cdee78e5ce1 100644 --- a/include/linux/device.h +++ b/include/linux/device.h | |||
@@ -47,8 +47,8 @@ struct bus_type { | |||
47 | struct driver_attribute * drv_attrs; | 47 | struct driver_attribute * drv_attrs; |
48 | 48 | ||
49 | int (*match)(struct device * dev, struct device_driver * drv); | 49 | int (*match)(struct device * dev, struct device_driver * drv); |
50 | int (*hotplug) (struct device *dev, char **envp, | 50 | int (*uevent)(struct device *dev, char **envp, |
51 | int num_envp, char *buffer, int buffer_size); | 51 | int num_envp, char *buffer, int buffer_size); |
52 | int (*suspend)(struct device * dev, pm_message_t state); | 52 | int (*suspend)(struct device * dev, pm_message_t state); |
53 | int (*resume)(struct device * dev); | 53 | int (*resume)(struct device * dev); |
54 | }; | 54 | }; |
@@ -151,7 +151,7 @@ struct class { | |||
151 | struct class_attribute * class_attrs; | 151 | struct class_attribute * class_attrs; |
152 | struct class_device_attribute * class_dev_attrs; | 152 | struct class_device_attribute * class_dev_attrs; |
153 | 153 | ||
154 | int (*hotplug)(struct class_device *dev, char **envp, | 154 | int (*uevent)(struct class_device *dev, char **envp, |
155 | int num_envp, char *buffer, int buffer_size); | 155 | int num_envp, char *buffer, int buffer_size); |
156 | 156 | ||
157 | void (*release)(struct class_device *dev); | 157 | void (*release)(struct class_device *dev); |
@@ -209,9 +209,9 @@ extern int class_device_create_file(struct class_device *, | |||
209 | * set, this will be called instead of the class specific release function. | 209 | * set, this will be called instead of the class specific release function. |
210 | * Only use this if you want to override the default release function, like | 210 | * Only use this if you want to override the default release function, like |
211 | * when you are nesting class_device structures. | 211 | * when you are nesting class_device structures. |
212 | * @hotplug: pointer to a hotplug function for this struct class_device. If | 212 | * @uevent: pointer to a uevent function for this struct class_device. If |
213 | * set, this will be called instead of the class specific hotplug function. | 213 | * set, this will be called instead of the class specific uevent function. |
214 | * Only use this if you want to override the default hotplug function, like | 214 | * Only use this if you want to override the default uevent function, like |
215 | * when you are nesting class_device structures. | 215 | * when you are nesting class_device structures. |
216 | */ | 216 | */ |
217 | struct class_device { | 217 | struct class_device { |
@@ -227,7 +227,7 @@ struct class_device { | |||
227 | struct class_device *parent; /* parent of this child device, if there is one */ | 227 | struct class_device *parent; /* parent of this child device, if there is one */ |
228 | 228 | ||
229 | void (*release)(struct class_device *dev); | 229 | void (*release)(struct class_device *dev); |
230 | int (*hotplug)(struct class_device *dev, char **envp, | 230 | int (*uevent)(struct class_device *dev, char **envp, |
231 | int num_envp, char *buffer, int buffer_size); | 231 | int num_envp, char *buffer, int buffer_size); |
232 | char class_id[BUS_ID_SIZE]; /* unique to this class */ | 232 | char class_id[BUS_ID_SIZE]; /* unique to this class */ |
233 | }; | 233 | }; |
diff --git a/include/linux/firmware.h b/include/linux/firmware.h index 2063c0839d4f..2d716080be4a 100644 --- a/include/linux/firmware.h +++ b/include/linux/firmware.h | |||
@@ -14,7 +14,7 @@ struct device; | |||
14 | int request_firmware(const struct firmware **fw, const char *name, | 14 | int request_firmware(const struct firmware **fw, const char *name, |
15 | struct device *device); | 15 | struct device *device); |
16 | int request_firmware_nowait( | 16 | int request_firmware_nowait( |
17 | struct module *module, int hotplug, | 17 | struct module *module, int uevent, |
18 | const char *name, struct device *device, void *context, | 18 | const char *name, struct device *device, void *context, |
19 | void (*cont)(const struct firmware *fw, void *context)); | 19 | void (*cont)(const struct firmware *fw, void *context)); |
20 | 20 | ||
diff --git a/include/linux/kobject.h b/include/linux/kobject.h index 5b08248fba72..8eb21f2f25e1 100644 --- a/include/linux/kobject.h +++ b/include/linux/kobject.h | |||
@@ -26,15 +26,14 @@ | |||
26 | #include <linux/kernel.h> | 26 | #include <linux/kernel.h> |
27 | #include <asm/atomic.h> | 27 | #include <asm/atomic.h> |
28 | 28 | ||
29 | #define KOBJ_NAME_LEN 20 | 29 | #define KOBJ_NAME_LEN 20 |
30 | 30 | #define UEVENT_HELPER_PATH_LEN 256 | |
31 | #define HOTPLUG_PATH_LEN 256 | ||
32 | 31 | ||
33 | /* path to the userspace helper executed on an event */ | 32 | /* path to the userspace helper executed on an event */ |
34 | extern char hotplug_path[]; | 33 | extern char uevent_helper[]; |
35 | 34 | ||
36 | /* counter to tag the hotplug event, read only except for the kobject core */ | 35 | /* counter to tag the uevent, read only except for the kobject core */ |
37 | extern u64 hotplug_seqnum; | 36 | extern u64 uevent_seqnum; |
38 | 37 | ||
39 | /* the actions here must match the proper string in lib/kobject_uevent.c */ | 38 | /* the actions here must match the proper string in lib/kobject_uevent.c */ |
40 | typedef int __bitwise kobject_action_t; | 39 | typedef int __bitwise kobject_action_t; |
@@ -101,15 +100,14 @@ struct kobj_type { | |||
101 | * of object; multiple ksets can belong to one subsystem. All | 100 | * of object; multiple ksets can belong to one subsystem. All |
102 | * ksets of a subsystem share the subsystem's lock. | 101 | * ksets of a subsystem share the subsystem's lock. |
103 | * | 102 | * |
104 | * Each kset can support hotplugging; if it does, it will be given | 103 | * Each kset can support specific event variables; it can |
105 | * the opportunity to filter out specific kobjects from being | 104 | * supress the event generation or add subsystem specific |
106 | * reported, as well as to add its own "data" elements to the | 105 | * variables carried with the event. |
107 | * environment being passed to the hotplug helper. | ||
108 | */ | 106 | */ |
109 | struct kset_hotplug_ops { | 107 | struct kset_uevent_ops { |
110 | int (*filter)(struct kset *kset, struct kobject *kobj); | 108 | int (*filter)(struct kset *kset, struct kobject *kobj); |
111 | const char *(*name)(struct kset *kset, struct kobject *kobj); | 109 | const char *(*name)(struct kset *kset, struct kobject *kobj); |
112 | int (*hotplug)(struct kset *kset, struct kobject *kobj, char **envp, | 110 | int (*uevent)(struct kset *kset, struct kobject *kobj, char **envp, |
113 | int num_envp, char *buffer, int buffer_size); | 111 | int num_envp, char *buffer, int buffer_size); |
114 | }; | 112 | }; |
115 | 113 | ||
@@ -119,7 +117,7 @@ struct kset { | |||
119 | struct list_head list; | 117 | struct list_head list; |
120 | spinlock_t list_lock; | 118 | spinlock_t list_lock; |
121 | struct kobject kobj; | 119 | struct kobject kobj; |
122 | struct kset_hotplug_ops * hotplug_ops; | 120 | struct kset_uevent_ops * uevent_ops; |
123 | }; | 121 | }; |
124 | 122 | ||
125 | 123 | ||
@@ -167,20 +165,20 @@ struct subsystem { | |||
167 | struct rw_semaphore rwsem; | 165 | struct rw_semaphore rwsem; |
168 | }; | 166 | }; |
169 | 167 | ||
170 | #define decl_subsys(_name,_type,_hotplug_ops) \ | 168 | #define decl_subsys(_name,_type,_uevent_ops) \ |
171 | struct subsystem _name##_subsys = { \ | 169 | struct subsystem _name##_subsys = { \ |
172 | .kset = { \ | 170 | .kset = { \ |
173 | .kobj = { .name = __stringify(_name) }, \ | 171 | .kobj = { .name = __stringify(_name) }, \ |
174 | .ktype = _type, \ | 172 | .ktype = _type, \ |
175 | .hotplug_ops =_hotplug_ops, \ | 173 | .uevent_ops =_uevent_ops, \ |
176 | } \ | 174 | } \ |
177 | } | 175 | } |
178 | #define decl_subsys_name(_varname,_name,_type,_hotplug_ops) \ | 176 | #define decl_subsys_name(_varname,_name,_type,_uevent_ops) \ |
179 | struct subsystem _varname##_subsys = { \ | 177 | struct subsystem _varname##_subsys = { \ |
180 | .kset = { \ | 178 | .kset = { \ |
181 | .kobj = { .name = __stringify(_name) }, \ | 179 | .kobj = { .name = __stringify(_name) }, \ |
182 | .ktype = _type, \ | 180 | .ktype = _type, \ |
183 | .hotplug_ops =_hotplug_ops, \ | 181 | .uevent_ops =_uevent_ops, \ |
184 | } \ | 182 | } \ |
185 | } | 183 | } |
186 | 184 | ||
@@ -256,16 +254,16 @@ extern int subsys_create_file(struct subsystem * , struct subsys_attribute *); | |||
256 | extern void subsys_remove_file(struct subsystem * , struct subsys_attribute *); | 254 | extern void subsys_remove_file(struct subsystem * , struct subsys_attribute *); |
257 | 255 | ||
258 | #ifdef CONFIG_HOTPLUG | 256 | #ifdef CONFIG_HOTPLUG |
259 | void kobject_hotplug(struct kobject *kobj, enum kobject_action action); | 257 | void kobject_uevent(struct kobject *kobj, enum kobject_action action); |
260 | 258 | ||
261 | int add_hotplug_env_var(char **envp, int num_envp, int *cur_index, | 259 | int add_uevent_var(char **envp, int num_envp, int *cur_index, |
262 | char *buffer, int buffer_size, int *cur_len, | 260 | char *buffer, int buffer_size, int *cur_len, |
263 | const char *format, ...) | 261 | const char *format, ...) |
264 | __attribute__((format (printf, 7, 8))); | 262 | __attribute__((format (printf, 7, 8))); |
265 | #else | 263 | #else |
266 | static inline void kobject_hotplug(struct kobject *kobj, enum kobject_action action) { } | 264 | static inline void kobject_uevent(struct kobject *kobj, enum kobject_action action) { } |
267 | 265 | ||
268 | static inline int add_hotplug_env_var(char **envp, int num_envp, int *cur_index, | 266 | static inline int add_uevent_var(char **envp, int num_envp, int *cur_index, |
269 | char *buffer, int buffer_size, int *cur_len, | 267 | char *buffer, int buffer_size, int *cur_len, |
270 | const char *format, ...) | 268 | const char *format, ...) |
271 | { return 0; } | 269 | { return 0; } |
diff --git a/include/linux/sysctl.h b/include/linux/sysctl.h index 4be34ef8c2f7..501564264518 100644 --- a/include/linux/sysctl.h +++ b/include/linux/sysctl.h | |||
@@ -124,7 +124,7 @@ enum | |||
124 | KERN_OVERFLOWUID=46, /* int: overflow UID */ | 124 | KERN_OVERFLOWUID=46, /* int: overflow UID */ |
125 | KERN_OVERFLOWGID=47, /* int: overflow GID */ | 125 | KERN_OVERFLOWGID=47, /* int: overflow GID */ |
126 | KERN_SHMPATH=48, /* string: path to shm fs */ | 126 | KERN_SHMPATH=48, /* string: path to shm fs */ |
127 | KERN_HOTPLUG=49, /* string: path to hotplug policy agent */ | 127 | KERN_HOTPLUG=49, /* string: path to uevent helper (deprecated) */ |
128 | KERN_IEEE_EMULATION_WARNINGS=50, /* int: unimplemented ieee instructions */ | 128 | KERN_IEEE_EMULATION_WARNINGS=50, /* int: unimplemented ieee instructions */ |
129 | KERN_S390_USER_DEBUG_LOGGING=51, /* int: dumps of user faults */ | 129 | KERN_S390_USER_DEBUG_LOGGING=51, /* int: dumps of user faults */ |
130 | KERN_CORE_USES_PID=52, /* int: use core or core.%pid */ | 130 | KERN_CORE_USES_PID=52, /* int: use core or core.%pid */ |
diff --git a/include/linux/usb.h b/include/linux/usb.h index d81b050e5955..7a20997e8071 100644 --- a/include/linux/usb.h +++ b/include/linux/usb.h | |||
@@ -225,7 +225,7 @@ struct usb_interface_cache { | |||
225 | * Device drivers should not attempt to activate configurations. The choice | 225 | * Device drivers should not attempt to activate configurations. The choice |
226 | * of which configuration to install is a policy decision based on such | 226 | * of which configuration to install is a policy decision based on such |
227 | * considerations as available power, functionality provided, and the user's | 227 | * considerations as available power, functionality provided, and the user's |
228 | * desires (expressed through hotplug scripts). However, drivers can call | 228 | * desires (expressed through userspace tools). However, drivers can call |
229 | * usb_reset_configuration() to reinitialize the current configuration and | 229 | * usb_reset_configuration() to reinitialize the current configuration and |
230 | * all its interfaces. | 230 | * all its interfaces. |
231 | */ | 231 | */ |