at v2.6.13 1.7 kB view raw
1/* 2 * kobject_uevent.h - list of kobject user events that can be generated 3 * 4 * Copyright (C) 2004 IBM Corp. 5 * Copyright (C) 2004 Greg Kroah-Hartman <greg@kroah.com> 6 * 7 * This file is released under the GPLv2. 8 * 9 */ 10 11#ifndef _KOBJECT_EVENT_H_ 12#define _KOBJECT_EVENT_H_ 13 14#define HOTPLUG_PATH_LEN 256 15 16/* path to the hotplug userspace helper executed on an event */ 17extern char hotplug_path[]; 18 19/* 20 * If you add an action here, you must also add the proper string to the 21 * lib/kobject_uevent.c file. 22 */ 23typedef int __bitwise kobject_action_t; 24enum kobject_action { 25 KOBJ_ADD = (__force kobject_action_t) 0x01, /* add event, for hotplug */ 26 KOBJ_REMOVE = (__force kobject_action_t) 0x02, /* remove event, for hotplug */ 27 KOBJ_CHANGE = (__force kobject_action_t) 0x03, /* a sysfs attribute file has changed */ 28 KOBJ_MOUNT = (__force kobject_action_t) 0x04, /* mount event for block devices */ 29 KOBJ_UMOUNT = (__force kobject_action_t) 0x05, /* umount event for block devices */ 30 KOBJ_OFFLINE = (__force kobject_action_t) 0x06, /* offline event for hotplug devices */ 31 KOBJ_ONLINE = (__force kobject_action_t) 0x07, /* online event for hotplug devices */ 32}; 33 34 35#ifdef CONFIG_KOBJECT_UEVENT 36int kobject_uevent(struct kobject *kobj, 37 enum kobject_action action, 38 struct attribute *attr); 39int kobject_uevent_atomic(struct kobject *kobj, 40 enum kobject_action action, 41 struct attribute *attr); 42#else 43static inline int kobject_uevent(struct kobject *kobj, 44 enum kobject_action action, 45 struct attribute *attr) 46{ 47 return 0; 48} 49static inline int kobject_uevent_atomic(struct kobject *kobj, 50 enum kobject_action action, 51 struct attribute *attr) 52{ 53 return 0; 54} 55#endif 56 57#endif