On Fri, 20 Jul 2007 01:00:59 -0700, Greg KH <[EMAIL PROTECTED]> wrote:
> --- a/drivers/base/core.c > +++ b/drivers/base/core.c > @@ -250,6 +250,7 @@ static struct kset_uevent_ops device_uev > .uevent = dev_uevent, > }; > > +#ifdef CONFIG_HOTPLUG > static ssize_t show_uevent(struct device *dev, struct device_attribute *attr, > char *buf) > { > @@ -330,6 +331,23 @@ out: > static struct device_attribute uevent_attr = > __ATTR(uevent, S_IRUGO | S_IWUSR, show_uevent, store_uevent); > > +static int device_add_uevent_attr(struct device *dev) > +{ > + return device_create_file(dev, &uevent_attr); > +} > + > +static void device_remove_uevent_attr(struct device *dev) > +{ > + device_remove_file(dev, &uevent_attr); > +} > + > +#else /* CONFIG_HOTPLUG */ > + > +static inline int device_add_uevent_attr(struct device *dev) { return 0; } > +static inline void device_remove_uevent_attr(struct device *dev) { } > + > +#endif /* CONFIG_HOTPLUG */ > + > static int device_add_attributes(struct device *dev, > struct device_attribute *attrs) > { > @@ -787,7 +805,7 @@ int device_add(struct device *dev) > blocking_notifier_call_chain(&dev->bus->bus_notifier, > BUS_NOTIFY_ADD_DEVICE, dev); > > - error = device_create_file(dev, &uevent_attr); > + error = device_add_uevent_attr(dev); > if (error) > goto attrError; > > @@ -861,7 +879,7 @@ int device_add(struct device *dev) > } > } > ueventattrError: > - device_remove_file(dev, &uevent_attr); > + device_remove_uevent_attr(dev); > attrError: > kobject_uevent(&dev->kobj, KOBJ_REMOVE); > kobject_del(&dev->kobj); > @@ -994,7 +1012,7 @@ void device_del(struct device * dev) > up(&dev->class->sem); > } > } > - device_remove_file(dev, &uevent_attr); > + device_remove_uevent_attr(dev); > device_remove_attrs(dev); > bus_remove_device(dev); > Hm, this would be an interface change (the uevent attribute used to exist even for !CONFIG_HOTPLUG, it just triggered nothing). How about moving kobject_actions[] out of the #ifdef (maybe next to kobject_action)? - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/