diff options
| author | Greg Kroah-Hartman <gregkh@suse.de> | 2008-05-30 09:22:13 -0700 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@suse.de> | 2008-05-30 09:22:13 -0700 |
| commit | be8daa4743b8f810137e29fef7281a47c25b8c8b (patch) | |
| tree | d932df37e90c923153cc0dd66825b5107741e40c | |
| parent | fe8069ab64007b5ca27db3e0f608e1ac0a6bb5b4 (diff) | |
| download | patches-be8daa4743b8f810137e29fef7281a47c25b8c8b.tar.gz | |
2.6.26-rc4-git3 resync
15 files changed, 97 insertions, 99 deletions
diff --git a/driver-core.current/kobject-fix-kobject_rename-and-config_sysfs.patch b/driver-core.current/kobject-fix-kobject_rename-and-config_sysfs.patch index b83f3f201fa3db..ed37ca3b705902 100644 --- a/driver-core.current/kobject-fix-kobject_rename-and-config_sysfs.patch +++ b/driver-core.current/kobject-fix-kobject_rename-and-config_sysfs.patch @@ -67,7 +67,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> incorrect and needs to be fixed. --- a/drivers/base/core.c +++ b/drivers/base/core.c -@@ -1305,6 +1305,11 @@ EXPORT_SYMBOL_GPL(device_destroy); +@@ -1259,6 +1259,11 @@ EXPORT_SYMBOL_GPL(device_destroy); * device_rename - renames a device * @dev: the pointer to the struct device to be renamed * @new_name: the new name of the device diff --git a/driver-core/class-change-internal-semaphore-to-a-mutex.patch b/driver-core/class-change-internal-semaphore-to-a-mutex.patch index 5dfa46e64f64e8..7fc9e1b79a3df2 100644 --- a/driver-core/class-change-internal-semaphore-to-a-mutex.patch +++ b/driver-core/class-change-internal-semaphore-to-a-mutex.patch @@ -160,7 +160,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> #include "base.h" #include "power/power.h" -@@ -948,7 +949,7 @@ int device_add(struct device *dev) +@@ -906,7 +907,7 @@ int device_add(struct device *dev) klist_add_tail(&dev->knode_parent, &parent->klist_children); if (dev->class) { @@ -169,7 +169,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> /* tie the class to the device */ list_add_tail(&dev->node, &dev->class->p->class_devices); -@@ -957,7 +958,7 @@ int device_add(struct device *dev) +@@ -915,7 +916,7 @@ int device_add(struct device *dev) &dev->class->p->class_interfaces, node) if (class_intf->add_dev) class_intf->add_dev(dev, class_intf); @@ -178,7 +178,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> } Done: put_device(dev); -@@ -1059,7 +1060,7 @@ void device_del(struct device *dev) +@@ -1016,7 +1017,7 @@ void device_del(struct device *dev) if (dev->class) { device_remove_class_symlinks(dev); @@ -187,7 +187,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> /* notify any interfaces that the device is now gone */ list_for_each_entry(class_intf, &dev->class->p->class_interfaces, node) -@@ -1067,7 +1068,7 @@ void device_del(struct device *dev) +@@ -1024,7 +1025,7 @@ void device_del(struct device *dev) class_intf->remove_dev(dev, class_intf); /* remove the device from the class list */ list_del_init(&dev->node); diff --git a/driver-core/class-move-driver-core-specific-parts-to-a-private-structure.patch b/driver-core/class-move-driver-core-specific-parts-to-a-private-structure.patch index 87a350f7161699..79ea9af6875299 100644 --- a/driver-core/class-move-driver-core-specific-parts-to-a-private-structure.patch +++ b/driver-core/class-move-driver-core-specific-parts-to-a-private-structure.patch @@ -280,7 +280,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> } --- a/drivers/base/core.c +++ b/drivers/base/core.c -@@ -554,7 +554,7 @@ static struct kobject *get_device_parent +@@ -551,7 +551,7 @@ static struct kobject *get_device_parent { /* class devices without a parent live in /sys/class/<classname>/ */ if (dev->class && (!parent || parent->class != dev->class)) @@ -289,7 +289,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> /* all other devices keep their parent */ else if (parent) return &parent->kobj; -@@ -600,13 +600,13 @@ static struct kobject *get_device_parent +@@ -597,13 +597,13 @@ static struct kobject *get_device_parent parent_kobj = &parent->kobj; /* find our class-directory at the parent and reference it */ @@ -306,7 +306,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> if (kobj) return kobj; -@@ -614,7 +614,7 @@ static struct kobject *get_device_parent +@@ -611,7 +611,7 @@ static struct kobject *get_device_parent k = kobject_create(); if (!k) return NULL; @@ -315,7 +315,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> retval = kobject_add(k, parent_kobj, "%s", dev->class->name); if (retval < 0) { kobject_put(k); -@@ -633,7 +633,7 @@ static void cleanup_glue_dir(struct devi +@@ -630,7 +630,7 @@ static void cleanup_glue_dir(struct devi { /* see if we live in a "glue" directory */ if (!glue_dir || !dev->class || @@ -324,7 +324,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> return; kobject_put(glue_dir); -@@ -660,17 +660,17 @@ static int device_add_class_symlinks(str +@@ -657,17 +657,17 @@ static int device_add_class_symlinks(str if (!dev->class) return 0; @@ -346,7 +346,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> if (error) goto out_subsys; } -@@ -707,12 +707,12 @@ out_device: +@@ -704,12 +704,12 @@ out_device: if (dev->parent && device_is_not_partition(dev)) sysfs_remove_link(&dev->kobj, "device"); out_busid: @@ -362,7 +362,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> dev->bus_id); if (error) goto out_subsys; -@@ -726,7 +726,7 @@ out_busid: +@@ -723,7 +723,7 @@ out_busid: return 0; out_busid: @@ -371,7 +371,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> #endif out_subsys: -@@ -752,14 +752,14 @@ static void device_remove_class_symlinks +@@ -749,14 +749,14 @@ static void device_remove_class_symlinks sysfs_remove_link(&dev->kobj, "device"); } @@ -389,7 +389,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> #endif sysfs_remove_link(&dev->kobj, "subsystem"); -@@ -945,15 +945,16 @@ int device_add(struct device *dev) +@@ -903,15 +903,16 @@ int device_add(struct device *dev) klist_add_tail(&dev->knode_parent, &parent->klist_children); if (dev->class) { @@ -410,7 +410,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> } Done: put_device(dev); -@@ -1055,14 +1056,15 @@ void device_del(struct device *dev) +@@ -1012,14 +1013,15 @@ void device_del(struct device *dev) if (dev->class) { device_remove_class_symlinks(dev); @@ -429,7 +429,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> } device_remove_file(dev, &uevent_attr); device_remove_attrs(dev); -@@ -1401,11 +1403,12 @@ int device_rename(struct device *dev, ch +@@ -1355,11 +1357,12 @@ int device_rename(struct device *dev, ch } #else if (dev->class) { diff --git a/driver-core/class-rename-devices-to-class_devices-in-internal-class-structure.patch b/driver-core/class-rename-devices-to-class_devices-in-internal-class-structure.patch index 7de4dd0fa60e5c..8cc09659207848 100644 --- a/driver-core/class-rename-devices-to-class_devices-in-internal-class-structure.patch +++ b/driver-core/class-rename-devices-to-class_devices-in-internal-class-structure.patch @@ -87,7 +87,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> up(&parent->p->sem); --- a/drivers/base/core.c +++ b/drivers/base/core.c -@@ -947,7 +947,7 @@ int device_add(struct device *dev) +@@ -905,7 +905,7 @@ int device_add(struct device *dev) if (dev->class) { down(&dev->class->p->sem); /* tie the class to the device */ diff --git a/driver-core/class-rename-interfaces-to-class_interfaces-in-internal-class-structure.patch b/driver-core/class-rename-interfaces-to-class_interfaces-in-internal-class-structure.patch index 29e166eeb6af7f..92492131b8d9f7 100644 --- a/driver-core/class-rename-interfaces-to-class_interfaces-in-internal-class-structure.patch +++ b/driver-core/class-rename-interfaces-to-class_interfaces-in-internal-class-structure.patch @@ -61,7 +61,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> class_intf->add_dev(dev, class_intf); --- a/drivers/base/core.c +++ b/drivers/base/core.c -@@ -950,8 +950,8 @@ int device_add(struct device *dev) +@@ -908,8 +908,8 @@ int device_add(struct device *dev) list_add_tail(&dev->node, &dev->class->p->class_devices); /* notify any interfaces that the device is here */ @@ -72,7 +72,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> if (class_intf->add_dev) class_intf->add_dev(dev, class_intf); up(&dev->class->p->sem); -@@ -1058,8 +1058,8 @@ void device_del(struct device *dev) +@@ -1015,8 +1015,8 @@ void device_del(struct device *dev) down(&dev->class->p->sem); /* notify any interfaces that the device is now gone */ diff --git a/driver-core/class-rename-sem-to-class_sem-in-internal-class-structure.patch b/driver-core/class-rename-sem-to-class_sem-in-internal-class-structure.patch index 9b994798289a26..cf1fb7164c8b29 100644 --- a/driver-core/class-rename-sem-to-class_sem-in-internal-class-structure.patch +++ b/driver-core/class-rename-sem-to-class_sem-in-internal-class-structure.patch @@ -137,7 +137,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> } --- a/drivers/base/core.c +++ b/drivers/base/core.c -@@ -948,7 +948,7 @@ int device_add(struct device *dev) +@@ -906,7 +906,7 @@ int device_add(struct device *dev) klist_add_tail(&dev->knode_parent, &parent->klist_children); if (dev->class) { @@ -146,7 +146,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> /* tie the class to the device */ list_add_tail(&dev->node, &dev->class->p->class_devices); -@@ -957,7 +957,7 @@ int device_add(struct device *dev) +@@ -915,7 +915,7 @@ int device_add(struct device *dev) &dev->class->p->class_interfaces, node) if (class_intf->add_dev) class_intf->add_dev(dev, class_intf); @@ -155,7 +155,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> } Done: put_device(dev); -@@ -1059,7 +1059,7 @@ void device_del(struct device *dev) +@@ -1016,7 +1016,7 @@ void device_del(struct device *dev) if (dev->class) { device_remove_class_symlinks(dev); @@ -164,7 +164,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> /* notify any interfaces that the device is now gone */ list_for_each_entry(class_intf, &dev->class->p->class_interfaces, node) -@@ -1067,7 +1067,7 @@ void device_del(struct device *dev) +@@ -1024,7 +1024,7 @@ void device_del(struct device *dev) class_intf->remove_dev(dev, class_intf); /* remove the device from the class list */ list_del_init(&dev->node); diff --git a/driver-core/class-rename-subsys-to-class_subsys-in-internal-class-structure.patch b/driver-core/class-rename-subsys-to-class_subsys-in-internal-class-structure.patch index 2902f7734c0374..b492ceca1b931e 100644 --- a/driver-core/class-rename-subsys-to-class_subsys-in-internal-class-structure.patch +++ b/driver-core/class-rename-subsys-to-class_subsys-in-internal-class-structure.patch @@ -132,7 +132,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> static void class_create_release(struct class *cls) --- a/drivers/base/core.c +++ b/drivers/base/core.c -@@ -554,7 +554,7 @@ static struct kobject *get_device_parent +@@ -551,7 +551,7 @@ static struct kobject *get_device_parent { /* class devices without a parent live in /sys/class/<classname>/ */ if (dev->class && (!parent || parent->class != dev->class)) @@ -141,7 +141,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> /* all other devices keep their parent */ else if (parent) return &parent->kobj; -@@ -660,16 +660,17 @@ static int device_add_class_symlinks(str +@@ -657,16 +657,17 @@ static int device_add_class_symlinks(str if (!dev->class) return 0; @@ -162,7 +162,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> &dev->kobj, dev->bus_id); if (error) goto out_subsys; -@@ -707,13 +708,14 @@ out_device: +@@ -704,13 +705,14 @@ out_device: if (dev->parent && device_is_not_partition(dev)) sysfs_remove_link(&dev->kobj, "device"); out_busid: @@ -181,7 +181,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> if (error) goto out_subsys; -@@ -726,7 +728,7 @@ out_busid: +@@ -723,7 +725,7 @@ out_busid: return 0; out_busid: @@ -190,7 +190,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> #endif out_subsys: -@@ -752,14 +754,15 @@ static void device_remove_class_symlinks +@@ -749,14 +751,15 @@ static void device_remove_class_symlinks sysfs_remove_link(&dev->kobj, "device"); } @@ -209,7 +209,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> #endif sysfs_remove_link(&dev->kobj, "subsystem"); -@@ -1403,11 +1406,11 @@ int device_rename(struct device *dev, ch +@@ -1357,11 +1360,11 @@ int device_rename(struct device *dev, ch } #else if (dev->class) { diff --git a/driver-core/driver-core-add-ability-for-class_find_device-to-start-in-middle-of-list.patch b/driver-core/driver-core-add-ability-for-class_find_device-to-start-in-middle-of-list.patch index af2d2fbb5d5c01..0df91b0a195741 100644 --- a/driver-core/driver-core-add-ability-for-class_find_device-to-start-in-middle-of-list.patch +++ b/driver-core/driver-core-add-ability-for-class_find_device-to-start-in-middle-of-list.patch @@ -75,7 +75,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> --- a/drivers/base/core.c +++ b/drivers/base/core.c -@@ -1337,7 +1337,7 @@ void device_destroy(struct class *class, +@@ -1291,7 +1291,7 @@ void device_destroy(struct class *class, { struct device *dev; diff --git a/driver-core/driver-core-prepare-for-removal-of-20-char-limit-from-struct-device.patch b/driver-core/driver-core-prepare-for-removal-of-20-char-limit-from-struct-device.patch index 3ad85718113473..8d9592f5242d6e 100644 --- a/driver-core/driver-core-prepare-for-removal-of-20-char-limit-from-struct-device.patch +++ b/driver-core/driver-core-prepare-for-removal-of-20-char-limit-from-struct-device.patch @@ -38,7 +38,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> drivers/ata/libata-scsi.c | 2 drivers/base/attribute_container.c | 2 drivers/base/bus.c | 12 - - drivers/base/core.c | 35 ++-- + drivers/base/core.c | 39 ++-- drivers/base/dd.c | 12 - drivers/base/firmware_class.c | 2 drivers/base/platform.c | 11 - @@ -274,7 +274,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> sound/isa/gus/gusclassic.c | 8 sound/isa/gus/gusextreme.c | 12 - sound/isa/sb/sb8.c | 4 - 260 files changed, 761 insertions(+), 748 deletions(-) + 260 files changed, 763 insertions(+), 750 deletions(-) --- a/arch/arm/common/scoop.c +++ b/arch/arm/common/scoop.c @@ -716,7 +716,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> } --- a/drivers/base/core.c +++ b/drivers/base/core.c -@@ -122,7 +122,7 @@ static void device_release(struct kobjec +@@ -119,7 +119,7 @@ static void device_release(struct kobjec else { printk(KERN_ERR "Device '%s' does not have a release() " "function, it is broken and must be fixed.\n", @@ -725,7 +725,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> WARN_ON(1); } } -@@ -214,7 +214,7 @@ static int dev_uevent(struct kset *kset, +@@ -211,7 +211,7 @@ static int dev_uevent(struct kset *kset, retval = dev->bus->uevent(dev, env); if (retval) pr_debug("device: '%s': %s: bus uevent() returned %d\n", @@ -734,7 +734,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> } /* have the class specific function add its stuff */ -@@ -222,7 +222,7 @@ static int dev_uevent(struct kset *kset, +@@ -219,7 +219,7 @@ static int dev_uevent(struct kset *kset, retval = dev->class->dev_uevent(dev, env); if (retval) pr_debug("device: '%s': %s: class uevent() " @@ -743,7 +743,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> __func__, retval); } -@@ -231,7 +231,7 @@ static int dev_uevent(struct kset *kset, +@@ -228,7 +228,7 @@ static int dev_uevent(struct kset *kset, retval = dev->type->uevent(dev, env); if (retval) pr_debug("device: '%s': %s: dev_type uevent() " @@ -752,7 +752,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> __func__, retval); } -@@ -414,7 +414,6 @@ static void device_remove_attrs(struct d +@@ -411,7 +411,6 @@ static void device_remove_attrs(struct d device_remove_attributes(dev, class->dev_attrs); } @@ -760,7 +760,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> static ssize_t show_dev(struct device *dev, struct device_attribute *attr, char *buf) { -@@ -672,7 +671,7 @@ static int device_add_class_symlinks(str +@@ -669,7 +668,7 @@ static int device_add_class_symlinks(str if (dev->kobj.parent != &dev->class->p->class_subsys.kobj && device_is_not_partition(dev)) { error = sysfs_create_link(&dev->class->p->class_subsys.kobj, @@ -769,7 +769,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> if (error) goto out_subsys; } -@@ -712,11 +711,11 @@ out_busid: +@@ -709,11 +708,11 @@ out_busid: if (dev->kobj.parent != &dev->class->p->class_subsys.kobj && device_is_not_partition(dev)) sysfs_remove_link(&dev->class->p->class_subsys.kobj, @@ -783,7 +783,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> if (error) goto out_subsys; -@@ -729,7 +728,7 @@ out_busid: +@@ -726,7 +725,7 @@ out_busid: return 0; out_busid: @@ -792,7 +792,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> #endif out_subsys: -@@ -758,12 +757,12 @@ static void device_remove_class_symlinks +@@ -755,12 +754,12 @@ static void device_remove_class_symlinks if (dev->kobj.parent != &dev->class->p->class_subsys.kobj && device_is_not_partition(dev)) sysfs_remove_link(&dev->class->p->class_subsys.kobj, @@ -807,7 +807,25 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> #endif sysfs_remove_link(&dev->kobj, "subsystem"); -@@ -1108,7 +1107,7 @@ void device_del(struct device *dev) +@@ -852,7 +851,7 @@ int device_add(struct device *dev) + goto Done; + } + +- pr_debug("device: '%s': %s\n", dev->bus_id, __func__); ++ pr_debug("device: '%s': %s\n", dev_name(dev), __func__); + + parent = get_device(dev->parent); + setup_parent(dev, parent); +@@ -862,7 +861,7 @@ int device_add(struct device *dev) + set_dev_node(dev, dev_to_node(parent)); + + /* first, register with generic layer. */ +- error = kobject_add(&dev->kobj, dev->kobj.parent, "%s", dev->bus_id); ++ error = kobject_add(&dev->kobj, dev->kobj.parent, "%s", dev_name(dev)); + if (error) + goto Error; + +@@ -1065,7 +1064,7 @@ void device_del(struct device *dev) */ void device_unregister(struct device *dev) { @@ -816,7 +834,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> device_del(dev); put_device(dev); } -@@ -1221,7 +1220,7 @@ EXPORT_SYMBOL_GPL(device_remove_file); +@@ -1178,7 +1177,7 @@ EXPORT_SYMBOL_GPL(device_remove_file); static void device_create_release(struct device *dev) { @@ -825,7 +843,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> kfree(dev); } -@@ -1372,7 +1371,7 @@ int device_rename(struct device *dev, ch +@@ -1326,7 +1325,7 @@ int device_rename(struct device *dev, ch if (!dev) return -EINVAL; @@ -834,7 +852,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> __func__, new_name); #ifdef CONFIG_SYSFS_DEPRECATED -@@ -1385,7 +1384,7 @@ int device_rename(struct device *dev, ch +@@ -1339,7 +1338,7 @@ int device_rename(struct device *dev, ch error = -ENOMEM; goto out; } @@ -843,7 +861,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> strlcpy(dev->bus_id, new_name, BUS_ID_SIZE); error = kobject_rename(&dev->kobj, new_name); -@@ -1408,7 +1407,7 @@ int device_rename(struct device *dev, ch +@@ -1362,7 +1361,7 @@ int device_rename(struct device *dev, ch #else if (dev->class) { error = sysfs_create_link(&dev->class->p->class_subsys.kobj, @@ -852,7 +870,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> if (error) goto out; sysfs_remove_link(&dev->class->p->class_subsys.kobj, -@@ -1486,8 +1485,8 @@ int device_move(struct device *dev, stru +@@ -1440,8 +1439,8 @@ int device_move(struct device *dev, stru new_parent = get_device(new_parent); new_parent_kobj = get_device_parent(dev, new_parent); @@ -6392,8 +6410,8 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> - char bus_id[BUS_ID_SIZE]; /* position on parent bus */ + char bus_id[20]; /* will be removed */ struct device_type *type; - const char *init_name; - unsigned int init_name_is_set:1; + unsigned uevent_suppress:1; + --- a/include/linux/mmc/card.h +++ b/include/linux/mmc/card.h @@ -128,7 +128,7 @@ struct mmc_card { diff --git a/driver-core.current/driver-core-add-new-device-api-to-allow-names-longer-than-20-chars.patch b/driver-core/driver-core-provide-a-dev_set_name-that-handles-names-longer-than-20-chars.patch index 5f66834fe1d05e..c3f6e5c49aa73e 100644 --- a/driver-core.current/driver-core-add-new-device-api-to-allow-names-longer-than-20-chars.patch +++ b/driver-core/driver-core-provide-a-dev_set_name-that-handles-names-longer-than-20-chars.patch @@ -1,7 +1,7 @@ From kay.sievers@vrfy.org Fri May 2 09:28:44 2008 From: Kay Sievers <kay.sievers@vrfy.org> Date: Fri, 02 May 2008 06:02:41 +0200 -Subject: driver core: add new device API to allow names longer than 20 chars +Subject: driver core: provide a dev_set_name() that handles names longer than 20 chars Message-ID: <1209700961.3100.7.camel@linux.site> After all drivers are converted, the 20 char bus_id array @@ -13,12 +13,12 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> --- drivers/base/core.c | 73 ++++++++++++++++++++++++++++++++++++++++++++----- - include/linux/device.h | 14 ++++++++- - 2 files changed, 79 insertions(+), 8 deletions(-) + include/linux/device.h | 11 ++++++- + 2 files changed, 76 insertions(+), 8 deletions(-) --- a/drivers/base/core.c +++ b/drivers/base/core.c -@@ -106,6 +106,9 @@ static void device_release(struct kobjec +@@ -110,6 +110,9 @@ static void device_release(struct kobjec { struct device *dev = to_dev(kobj); @@ -28,8 +28,8 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> if (dev->release) dev->release(dev); else if (dev->type && dev->type->release) -@@ -759,6 +762,47 @@ static void device_remove_class_symlinks - sysfs_remove_link(&dev->kobj, "subsystem"); +@@ -828,6 +831,47 @@ static void device_remove_sys_dev_entry( + } } +static int dev_set_name_vargs(struct device *dev, @@ -76,7 +76,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> /** * device_add - add device to device hierarchy. * @dev: device. -@@ -777,12 +821,22 @@ int device_add(struct device *dev) +@@ -846,12 +890,22 @@ int device_add(struct device *dev) int error; dev = get_device(dev); @@ -86,7 +86,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> goto Done; } -- pr_debug("device: '%s': %s\n", dev->bus_id, __func__); +- pr_debug("device: '%s': %s\n", dev_name(dev), __func__); + /* support bus_id until everything is converted, and it is removed */ + if (!dev->init_name) + dev->init_name = dev->bus_id; @@ -101,12 +101,12 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> parent = get_device(dev->parent); setup_parent(dev, parent); -@@ -791,12 +845,15 @@ int device_add(struct device *dev) +@@ -860,12 +914,15 @@ int device_add(struct device *dev) if (parent) set_dev_node(dev, dev_to_node(parent)); - /* first, register with generic layer. */ -- error = kobject_add(&dev->kobj, dev->kobj.parent, "%s", dev->bus_id); +- error = kobject_add(&dev->kobj, dev->kobj.parent, "%s", dev_name(dev)); + error = kobject_add(&dev->kobj, dev->kobj.parent, "%s", dev->init_name); + + /* possibly free and clear any init_name, so nobody can misuse it */ @@ -120,7 +120,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> if (platform_notify) platform_notify(dev); -@@ -846,6 +903,7 @@ int device_add(struct device *dev) +@@ -920,6 +977,7 @@ int device_add(struct device *dev) Done: put_device(dev); return error; @@ -128,7 +128,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> PMError: bus_remove_device(dev); BusError: -@@ -1128,7 +1186,9 @@ struct device *device_create_vargs(struc +@@ -1226,7 +1284,9 @@ struct device *device_create_vargs(struc dev->release = device_create_release; dev_set_drvdata(dev, drvdata); @@ -139,7 +139,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> retval = device_register(dev); if (retval) goto error; -@@ -1136,6 +1196,7 @@ struct device *device_create_vargs(struc +@@ -1234,6 +1294,7 @@ struct device *device_create_vargs(struc return dev; error: @@ -149,9 +149,9 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> } --- a/include/linux/device.h +++ b/include/linux/device.h -@@ -332,7 +332,9 @@ struct device { +@@ -351,7 +351,9 @@ struct device { struct kobject kobj; - char bus_id[BUS_ID_SIZE]; /* position on parent bus */ + char bus_id[20]; /* will be removed */ struct device_type *type; - unsigned uevent_suppress:1; + const char *init_name; @@ -160,7 +160,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> struct semaphore sem; /* semaphore to synchronize calls to * its driver. -@@ -381,10 +383,18 @@ struct device { +@@ -400,7 +402,12 @@ struct device { static inline const char *dev_name(struct device *dev) { @@ -174,9 +174,3 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> return dev->bus_id; } -+extern int dev_set_name(struct device *dev, const char *name, ...) -+ __attribute__((format(printf, 2, 3))); -+ - #ifdef CONFIG_NUMA - static inline int dev_to_node(struct device *dev) - { diff --git a/driver-core/driver-core-remove-device_create.patch b/driver-core/driver-core-remove-device_create.patch index fec118618f6cc0..222f1f96b5f862 100644 --- a/driver-core/driver-core-remove-device_create.patch +++ b/driver-core/driver-core-remove-device_create.patch @@ -16,7 +16,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> --- a/drivers/base/core.c +++ b/drivers/base/core.c -@@ -1318,40 +1318,6 @@ struct device *device_create_drvdata(str +@@ -1272,40 +1272,6 @@ struct device *device_create_drvdata(str } EXPORT_SYMBOL_GPL(device_create_drvdata); @@ -59,7 +59,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> dev_t *devt = data; --- a/include/linux/device.h +++ b/include/linux/device.h -@@ -468,9 +468,6 @@ extern struct device *device_create_varg +@@ -461,9 +461,6 @@ extern struct device *device_create_varg void *drvdata, const char *fmt, va_list vargs); diff --git a/driver-core/sysfs-add-sys-dev-char-block-to-lookup-sysfs-path-by-major-minor.patch b/driver-core/sysfs-add-sys-dev-char-block-to-lookup-sysfs-path-by-major-minor.patch index 865e409f70e6cc..ed9a41a564f73d 100644 --- a/driver-core/sysfs-add-sys-dev-char-block-to-lookup-sysfs-path-by-major-minor.patch +++ b/driver-core/sysfs-add-sys-dev-char-block-to-lookup-sysfs-path-by-major-minor.patch @@ -134,7 +134,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> #ifdef CONFIG_BLOCK static inline int device_is_not_partition(struct device *dev) -@@ -804,6 +807,54 @@ int dev_set_name(struct device *dev, con +@@ -775,6 +778,54 @@ int dev_set_name(struct device *dev, con EXPORT_SYMBOL_GPL(dev_set_name); /** @@ -189,7 +189,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> * device_add - add device to device hierarchy. * @dev: device. * -@@ -870,6 +921,10 @@ int device_add(struct device *dev) +@@ -828,6 +879,10 @@ int device_add(struct device *dev) error = device_create_file(dev, &devt_attr); if (error) goto ueventattrError; @@ -200,7 +200,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> } error = device_add_class_symlinks(dev); -@@ -915,6 +970,9 @@ int device_add(struct device *dev) +@@ -872,6 +927,9 @@ int device_add(struct device *dev) device_remove_class_symlinks(dev); SymlinkError: if (MAJOR(dev->devt)) @@ -210,7 +210,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> device_remove_file(dev, &devt_attr); ueventattrError: device_remove_file(dev, &uevent_attr); -@@ -990,8 +1048,10 @@ void device_del(struct device *dev) +@@ -947,8 +1005,10 @@ void device_del(struct device *dev) device_pm_remove(dev); if (parent) klist_del(&dev->knode_parent); @@ -222,7 +222,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> if (dev->class) { device_remove_class_symlinks(dev); -@@ -1116,7 +1176,25 @@ int __init devices_init(void) +@@ -1073,7 +1133,25 @@ int __init devices_init(void) devices_kset = kset_create_and_add("devices", &device_uevent_ops, NULL); if (!devices_kset) return -ENOMEM; @@ -248,7 +248,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> } EXPORT_SYMBOL_GPL(device_for_each_child); -@@ -1497,4 +1575,7 @@ void device_shutdown(void) +@@ -1451,4 +1529,7 @@ void device_shutdown(void) dev->driver->shutdown(dev); } } diff --git a/kill-bus_id.patch b/kill-bus_id.patch index b870055f1e94c7..8b8061f401e595 100644 --- a/kill-bus_id.patch +++ b/kill-bus_id.patch @@ -18,7 +18,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> --- a/drivers/base/core.c +++ b/drivers/base/core.c -@@ -881,10 +881,6 @@ int device_add(struct device *dev) +@@ -896,10 +896,6 @@ int device_add(struct device *dev) goto Done; } @@ -29,7 +29,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> if (strlen(dev->init_name) == 0) { printk(KERN_ERR "device (%p) does not have a name\n", dev); error = -EINVAL; -@@ -1380,19 +1376,15 @@ int device_rename(struct device *dev, ch +@@ -1395,19 +1391,15 @@ int device_rename(struct device *dev, ch old_class_name = make_class_name(dev->class->name, &dev->kobj); #endif @@ -11,7 +11,6 @@ gregkh/detect-atomic-counter-underflows.patch ################################# # Driver core patches for 2.6.26 ################################# -driver-core.current/driver-core-add-new-device-api-to-allow-names-longer-than-20-chars.patch # broken still :( driver-core.current/kobject-fix-kobject_rename-and-config_sysfs.patch @@ -19,22 +18,6 @@ driver-core.current/kobject-fix-kobject_rename-and-config_sysfs.patch ################################# # USB patches for 2.6.26 ################################# -usb.current/usb-ftdi_sio-add-support-for-matrix-orbital-pid-range.patch -usb.current/usb-firmware-loader-driver-for-usb-apple-isight-camera.patch -usb.current/usb-fix-possible-deadlock-involving-sysfs-attributes.patch -usb.current/usb-add-all-configs-to-the-descriptors-attribute.patch -usb.current/usb-ehci-fix-up-root-hub-tt-mess.patch -usb.current/usb-ehci-suppress-unwanted-error-messages.patch -usb.current/usb-ehci-fix-remote-wakeup-regression.patch -usb.current/usb-ehci-fix-bug-in-iso-scheduling.patch -usb.current/usb-ehci-fix-performance-regression.patch -usb.current/usb-usb-storage-unusual_devs-update-for-cypress-atacb.patch -usb.current/usb-fix-m600i-unusual_devs-entry.patch -usb.current/usb-add-support-for-rokr-w5-in-unusual_devs.h.patch -usb.current/usb-add-another-scanner-quirk.patch -usb.current/usb-pl2303-another-product-id.patch -usb.current/usb-usb-serial-option-don-t-match-huawei-driver-cd-images.patch -usb.current/usb-fsl_usb2_udc-fix-recursive-lock.patch ##################################################################### # Stuff to be merged after 2.6.26 is out @@ -114,6 +97,9 @@ driver-core/s390-bus_id-dev_set_name-changes.patch driver-core/driver-core-convert-to-new-device-api-to-allow-names-longer-than-20-chars.patch driver-core/driver-core-lguest-convert-to-new-device-api-to-allow-names-longer-than-20-chars.patch +driver-core/driver-core-provide-a-dev_set_name-that-handles-names-longer-than-20-chars.patch + + # firmware stuff driver-core/libertas-treat-firmware-data-as-const.patch driver-core/bluetooth-treat-firmware-data-as-const.patch @@ -1 +1 @@ -2.6.26-rc4 +2.6.26-rc4-git3 |
