* [BK PATCH] Driver Core patches for 2.6.10-rc1
@ 2004-10-22 23:09 Greg KH
2004-10-22 23:09 ` [PATCH] " Greg KH
0 siblings, 1 reply; 9+ messages in thread
From: Greg KH @ 2004-10-22 23:09 UTC (permalink / raw)
To: torvalds, akpm; +Cc: linux-kernel
Hi,
Here are a few minot driver core changes for 2.6.10-rc1 that were laying
around and didn't make it in the last big batch of merges. Most of
these have been in the -mm tree for a while now.
No, they don't include the backing store sysfs patches, I'll get to
those next week. I'll be in the same building as Maneesh, so I know
he'll be hounding me about them... :)
Oh, and these patches will cause the wait_for_sysfs program in udev to
start spiting out a lot more warnings. It's not a bug in the kernel,
it's a userspace issue. I'll get that fixed up in the next udev
release.
Please pull from:
bk://kernel.bkbits.net/gregkh/linux/driver-2.6
thanks,
greg k-h
p.s. I'll send these as patches in response to this email to lkml for
those who want to see them.
drivers/base/bus.c | 4 +--
drivers/base/class.c | 4 +--
drivers/base/core.c | 2 -
drivers/base/cpu.c | 2 +
drivers/firmware/efivars.c | 2 -
drivers/pci/hotplug/pci_hotplug_core.c | 2 -
fs/char_dev.c | 4 +--
fs/sysfs/dir.c | 2 -
include/linux/kobject_uevent.h | 1
kernel/cpu.c | 35 ----------------------------
kernel/module.c | 2 -
lib/Kconfig.debug | 7 +++++
lib/Makefile | 7 ++++-
lib/kobject.c | 4 ---
lib/kobject_uevent.c | 40 ++++++++++++++++++++-------------
15 files changed, 53 insertions(+), 65 deletions(-)
-----
Andrew Morton:
o kobject_uevent warning fix
o kobject_hotplug: permit no hotplug_ops
Anil Keshavamurthy:
o remove cpu_run_sbin_hotplug()
Greg Kroah-Hartman:
o hotplug: prevent skips in sequence number from happening
o kobject: add CONFIG_DEBUG_KOBJECT
Stephen Hemminger:
o avoid problems with kobject_set_name and name with %
o cdev: protect against buggy drivers
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH] Driver Core patches for 2.6.10-rc1
2004-10-22 23:09 [BK PATCH] Driver Core patches for 2.6.10-rc1 Greg KH
@ 2004-10-22 23:09 ` Greg KH
2004-10-22 23:09 ` Greg KH
0 siblings, 1 reply; 9+ messages in thread
From: Greg KH @ 2004-10-22 23:09 UTC (permalink / raw)
To: linux-kernel
ChangeSet 1.2000.6.1, 2004/10/20 15:38:19-07:00, greg@kroah.com
kobject: add CONFIG_DEBUG_KOBJECT
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
lib/Kconfig.debug | 7 +++++++
lib/Makefile | 6 +++++-
lib/kobject.c | 4 +---
3 files changed, 13 insertions(+), 4 deletions(-)
diff -Nru a/lib/Kconfig.debug b/lib/Kconfig.debug
--- a/lib/Kconfig.debug 2004-10-22 16:00:44 -07:00
+++ b/lib/Kconfig.debug 2004-10-22 16:00:44 -07:00
@@ -64,6 +64,13 @@
If you say Y here, various routines which may sleep will become very
noisy if they are called with a spinlock held.
+config DEBUG_KOBJECT
+ bool "kobject debugging"
+ depends on DEBUG_KERNEL
+ help
+ If you say Y here, some extra kobject debugging messages will be sent
+ to the syslog.
+
config DEBUG_HIGHMEM
bool "Highmem debugging"
depends on DEBUG_KERNEL && HIGHMEM && (X86 || PPC32 || MIPS || SPARC32)
diff -Nru a/lib/Makefile b/lib/Makefile
--- a/lib/Makefile 2004-10-22 16:00:44 -07:00
+++ b/lib/Makefile 2004-10-22 16:00:44 -07:00
@@ -2,11 +2,15 @@
# Makefile for some libs needed in the kernel.
#
-
lib-y := errno.o ctype.o string.o vsprintf.o cmdline.o \
bust_spinlocks.o rbtree.o radix-tree.o dump_stack.o \
kobject.o kref.o idr.o div64.o parser.o int_sqrt.o \
bitmap.o extable.o kobject_uevent.o
+
+ifeq ($(CONFIG_DEBUG_KOBJECT),y)
+CFLAGS_kobject.o += -DDEBUG
+CFLAGS_kobject_uevent.o += -DDEBUG
+endif
lib-$(CONFIG_RWSEM_GENERIC_SPINLOCK) += rwsem-spinlock.o
lib-$(CONFIG_RWSEM_XCHGADD_ALGORITHM) += rwsem.o
diff -Nru a/lib/kobject.c b/lib/kobject.c
--- a/lib/kobject.c 2004-10-22 16:00:44 -07:00
+++ b/lib/kobject.c 2004-10-22 16:00:44 -07:00
@@ -10,8 +10,6 @@
* about using the kobject interface.
*/
-#undef DEBUG
-
#include <linux/kobject.h>
#include <linux/string.h>
#include <linux/module.h>
@@ -123,7 +121,7 @@
*/
void kobject_init(struct kobject * kobj)
{
- kref_init(&kobj->kref);
+ kref_init(&kobj->kref);
INIT_LIST_HEAD(&kobj->entry);
kobj->kset = kset_get(kobj->kset);
}
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] Driver Core patches for 2.6.10-rc1
2004-10-22 23:09 ` Greg KH
@ 2004-10-22 23:09 ` Greg KH
2004-10-22 23:09 ` Greg KH
0 siblings, 1 reply; 9+ messages in thread
From: Greg KH @ 2004-10-22 23:09 UTC (permalink / raw)
To: linux-kernel
ChangeSet 1.2020, 2004/10/22 14:29:19-07:00, akpm@osdl.org
[PATCH] kobject_hotplug: permit no hotplug_ops
Make kobject_hotplug() work even if the kobject's kset doesn't implement any
hotplug_ops.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
lib/kobject_uevent.c | 19 ++++++++++++-------
1 files changed, 12 insertions(+), 7 deletions(-)
diff -Nru a/lib/kobject_uevent.c b/lib/kobject_uevent.c
--- a/lib/kobject_uevent.c 2004-10-22 16:00:04 -07:00
+++ b/lib/kobject_uevent.c 2004-10-22 16:00:04 -07:00
@@ -187,6 +187,8 @@
u64 seq;
struct kobject *top_kobj = kobj;
struct kset *kset;
+ static struct kset_hotplug_ops null_hotplug_ops;
+ struct kset_hotplug_ops *hotplug_ops = &null_hotplug_ops;
if (!top_kobj->kset && top_kobj->parent) {
do {
@@ -194,15 +196,18 @@
} while (!top_kobj->kset && top_kobj->parent);
}
- if (top_kobj->kset && top_kobj->kset->hotplug_ops)
+ if (top_kobj->kset)
kset = top_kobj->kset;
else
return;
+ if (kset->hotplug_ops)
+ hotplug_ops = kset->hotplug_ops;
+
/* If the kset has a filter operation, call it.
Skip the event, if the filter returns zero. */
- if (kset->hotplug_ops->filter) {
- if (!kset->hotplug_ops->filter(kset, kobj))
+ if (hotplug_ops->filter) {
+ if (!hotplug_ops->filter(kset, kobj))
return;
}
@@ -221,8 +226,8 @@
if (!buffer)
goto exit;
- if (kset->hotplug_ops->name)
- name = kset->hotplug_ops->name(kset, kobj);
+ if (hotplug_ops->name)
+ name = hotplug_ops->name(kset, kobj);
if (name == NULL)
name = kset->kobj.name;
@@ -256,9 +261,9 @@
envp [i++] = scratch;
scratch += sprintf(scratch, "SUBSYSTEM=%s", name) + 1;
- if (kset->hotplug_ops->hotplug) {
+ if (hotplug_ops->hotplug) {
/* have the kset specific function add its stuff */
- retval = kset->hotplug_ops->hotplug (kset, kobj,
+ retval = hotplug_ops->hotplug (kset, kobj,
&envp[i], NUM_ENVP - i, scratch,
BUFFER_SIZE - (scratch - buffer));
if (retval) {
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] Driver Core patches for 2.6.10-rc1
2004-10-22 23:09 ` [PATCH] " Greg KH
@ 2004-10-22 23:09 ` Greg KH
2004-10-22 23:09 ` Greg KH
0 siblings, 1 reply; 9+ messages in thread
From: Greg KH @ 2004-10-22 23:09 UTC (permalink / raw)
To: linux-kernel
ChangeSet 1.2018, 2004/10/22 13:55:29-07:00, shemminger@osdl.org
[PATCH] cdev: protect against buggy drivers
Here is a better fix (thanks Greg) that allows long names for character
device objects.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
fs/char_dev.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff -Nru a/fs/char_dev.c b/fs/char_dev.c
--- a/fs/char_dev.c 2004-10-22 16:00:27 -07:00
+++ b/fs/char_dev.c 2004-10-22 16:00:27 -07:00
@@ -207,8 +207,8 @@
cdev->owner = fops->owner;
cdev->ops = fops;
- strcpy(cdev->kobj.name, name);
- for (s = strchr(cdev->kobj.name, '/'); s; s = strchr(s, '/'))
+ kobject_set_name(&cdev->kobj, "%s", name);
+ for (s = strchr(kobject_name(&cdev->kobj),'/'); s; s = strchr(s, '/'))
*s = '!';
err = cdev_add(cdev, MKDEV(cd->major, 0), 256);
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] Driver Core patches for 2.6.10-rc1
2004-10-22 23:09 ` Greg KH
@ 2004-10-22 23:09 ` Greg KH
2004-10-22 23:09 ` Greg KH
0 siblings, 1 reply; 9+ messages in thread
From: Greg KH @ 2004-10-22 23:09 UTC (permalink / raw)
To: linux-kernel
ChangeSet 1.2019, 2004/10/22 14:01:16-07:00, shemminger@osdl.org
[PATCH] avoid problems with kobject_set_name and name with %
kobject_set_name takes a printf style argument list. There are many
callers that pass only one string, if this string contained a '%' character
than bad things would happen. The fix is simple.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
drivers/base/bus.c | 4 ++--
drivers/base/class.c | 4 ++--
drivers/base/core.c | 2 +-
drivers/firmware/efivars.c | 2 +-
drivers/pci/hotplug/pci_hotplug_core.c | 2 +-
fs/sysfs/dir.c | 2 +-
kernel/module.c | 2 +-
7 files changed, 9 insertions(+), 9 deletions(-)
diff -Nru a/drivers/base/bus.c b/drivers/base/bus.c
--- a/drivers/base/bus.c 2004-10-22 16:00:16 -07:00
+++ b/drivers/base/bus.c 2004-10-22 16:00:16 -07:00
@@ -515,7 +515,7 @@
if (bus) {
pr_debug("bus %s: add driver %s\n", bus->name, drv->name);
- error = kobject_set_name(&drv->kobj, drv->name);
+ error = kobject_set_name(&drv->kobj, "%s", drv->name);
if (error) {
put_bus(bus);
return error;
@@ -666,7 +666,7 @@
{
int retval;
- retval = kobject_set_name(&bus->subsys.kset.kobj, bus->name);
+ retval = kobject_set_name(&bus->subsys.kset.kobj, "%s", bus->name);
if (retval)
goto out;
diff -Nru a/drivers/base/class.c b/drivers/base/class.c
--- a/drivers/base/class.c 2004-10-22 16:00:16 -07:00
+++ b/drivers/base/class.c 2004-10-22 16:00:16 -07:00
@@ -139,7 +139,7 @@
INIT_LIST_HEAD(&cls->children);
INIT_LIST_HEAD(&cls->interfaces);
- error = kobject_set_name(&cls->subsys.kset.kobj, cls->name);
+ error = kobject_set_name(&cls->subsys.kset.kobj, "%s", cls->name);
if (error)
return error;
@@ -368,7 +368,7 @@
class_dev->class_id);
/* first, register with generic layer. */
- kobject_set_name(&class_dev->kobj, class_dev->class_id);
+ kobject_set_name(&class_dev->kobj, "%s", class_dev->class_id);
if (parent)
class_dev->kobj.parent = &parent->subsys.kset.kobj;
diff -Nru a/drivers/base/core.c b/drivers/base/core.c
--- a/drivers/base/core.c 2004-10-22 16:00:16 -07:00
+++ b/drivers/base/core.c 2004-10-22 16:00:16 -07:00
@@ -221,7 +221,7 @@
pr_debug("DEV: registering device: ID = '%s'\n", dev->bus_id);
/* first, register with generic layer. */
- kobject_set_name(&dev->kobj, dev->bus_id);
+ kobject_set_name(&dev->kobj, "%s", dev->bus_id);
if (parent)
dev->kobj.parent = &parent->kobj;
diff -Nru a/drivers/firmware/efivars.c b/drivers/firmware/efivars.c
--- a/drivers/firmware/efivars.c 2004-10-22 16:00:16 -07:00
+++ b/drivers/firmware/efivars.c 2004-10-22 16:00:16 -07:00
@@ -640,7 +640,7 @@
*(short_name + strlen(short_name)) = '-';
efi_guid_unparse(vendor_guid, short_name + strlen(short_name));
- kobject_set_name(&new_efivar->kobj, short_name);
+ kobject_set_name(&new_efivar->kobj, "%s", short_name);
kobj_set_kset_s(new_efivar, vars_subsys);
kobject_register(&new_efivar->kobj);
diff -Nru a/drivers/pci/hotplug/pci_hotplug_core.c b/drivers/pci/hotplug/pci_hotplug_core.c
--- a/drivers/pci/hotplug/pci_hotplug_core.c 2004-10-22 16:00:16 -07:00
+++ b/drivers/pci/hotplug/pci_hotplug_core.c 2004-10-22 16:00:16 -07:00
@@ -568,7 +568,7 @@
if ((slot->info == NULL) || (slot->ops == NULL))
return -EINVAL;
- kobject_set_name(&slot->kobj, slot->name);
+ kobject_set_name(&slot->kobj, "%s", slot->name);
kobj_set_kset_s(slot, pci_hotplug_slots_subsys);
/* this can fail if we have already registered a slot with the same name */
diff -Nru a/fs/sysfs/dir.c b/fs/sysfs/dir.c
--- a/fs/sysfs/dir.c 2004-10-22 16:00:16 -07:00
+++ b/fs/sysfs/dir.c 2004-10-22 16:00:16 -07:00
@@ -181,7 +181,7 @@
new_dentry = sysfs_get_dentry(parent, new_name);
if (!IS_ERR(new_dentry)) {
if (!new_dentry->d_inode) {
- error = kobject_set_name(kobj,new_name);
+ error = kobject_set_name(kobj, "%s", new_name);
if (!error)
d_move(kobj->dentry, new_dentry);
}
diff -Nru a/kernel/module.c b/kernel/module.c
--- a/kernel/module.c 2004-10-22 16:00:16 -07:00
+++ b/kernel/module.c 2004-10-22 16:00:16 -07:00
@@ -1120,7 +1120,7 @@
return -ENOMEM;
memset(&mod->mkobj->kobj, 0, sizeof(mod->mkobj->kobj));
- err = kobject_set_name(&mod->mkobj->kobj, mod->name);
+ err = kobject_set_name(&mod->mkobj->kobj, "%s", mod->name);
if (err)
goto out;
kobj_set_kset_s(mod->mkobj, module_subsys);
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] Driver Core patches for 2.6.10-rc1
2004-10-22 23:09 ` Greg KH
@ 2004-10-22 23:09 ` Greg KH
0 siblings, 0 replies; 9+ messages in thread
From: Greg KH @ 2004-10-22 23:09 UTC (permalink / raw)
To: linux-kernel
ChangeSet 1.2023, 2004/10/22 15:43:17-07:00, greg@kroah.com
hotplug: prevent skips in sequence number from happening
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
lib/kobject_uevent.c | 17 +++++++++--------
1 files changed, 9 insertions(+), 8 deletions(-)
diff -Nru a/lib/kobject_uevent.c b/lib/kobject_uevent.c
--- a/lib/kobject_uevent.c 2004-10-22 15:59:34 -07:00
+++ b/lib/kobject_uevent.c 2004-10-22 15:59:34 -07:00
@@ -255,13 +255,6 @@
envp [i++] = scratch;
scratch += sprintf (scratch, "DEVPATH=%s", kobj_path) + 1;
- spin_lock(&sequence_lock);
- seq = ++hotplug_seqnum;
- spin_unlock(&sequence_lock);
-
- envp [i++] = scratch;
- scratch += sprintf(scratch, "SEQNUM=%lld", (long long)seq) + 1;
-
envp [i++] = scratch;
scratch += sprintf(scratch, "SUBSYSTEM=%s", name) + 1;
@@ -277,7 +270,15 @@
}
}
- pr_debug ("%s: %s %s %s %s %s %s %s\n", __FUNCTION__, argv[0], argv[1],
+ spin_lock(&sequence_lock);
+ seq = ++hotplug_seqnum;
+ spin_unlock(&sequence_lock);
+
+ envp [i++] = scratch;
+ scratch += sprintf(scratch, "SEQNUM=%lld", (long long)seq) + 1;
+
+ pr_debug ("%s: %s %s seq=%lld %s %s %s %s %s\n",
+ __FUNCTION__, argv[0], argv[1], (long long)seq,
envp[0], envp[1], envp[2], envp[3], envp[4]);
send_uevent(action_string, kobj_path, buffer, scratch - buffer, GFP_KERNEL);
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] Driver Core patches for 2.6.10-rc1
2004-10-22 23:09 ` Greg KH
@ 2004-10-22 23:09 ` Greg KH
2004-10-22 23:09 ` Greg KH
0 siblings, 1 reply; 9+ messages in thread
From: Greg KH @ 2004-10-22 23:09 UTC (permalink / raw)
To: linux-kernel
ChangeSet 1.2021, 2004/10/22 14:29:57-07:00, akpm@osdl.org
[PATCH] remove cpu_run_sbin_hotplug()
From: Keshavamurthy Anil S <anil.s.keshavamurthy@intel.com>
Remove cpu_run_sbin_hotplug() - use kobject_hotplug() instead.
Signed-off-by: Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
drivers/base/cpu.c | 2 ++
include/linux/kobject_uevent.h | 1 +
kernel/cpu.c | 35 -----------------------------------
lib/kobject_uevent.c | 2 ++
4 files changed, 5 insertions(+), 35 deletions(-)
diff -Nru a/drivers/base/cpu.c b/drivers/base/cpu.c
--- a/drivers/base/cpu.c 2004-10-22 15:59:52 -07:00
+++ b/drivers/base/cpu.c 2004-10-22 15:59:52 -07:00
@@ -32,6 +32,8 @@
switch (buf[0]) {
case '0':
ret = cpu_down(cpu->sysdev.id);
+ if (!ret)
+ kobject_hotplug(&dev->kobj, KOBJ_OFFLINE);
break;
case '1':
ret = cpu_up(cpu->sysdev.id);
diff -Nru a/include/linux/kobject_uevent.h b/include/linux/kobject_uevent.h
--- a/include/linux/kobject_uevent.h 2004-10-22 15:59:52 -07:00
+++ b/include/linux/kobject_uevent.h 2004-10-22 15:59:52 -07:00
@@ -22,6 +22,7 @@
KOBJ_CHANGE = (__force kobject_action_t) 0x03, /* a sysfs attribute file has changed */
KOBJ_MOUNT = (__force kobject_action_t) 0x04, /* mount event for block devices */
KOBJ_UMOUNT = (__force kobject_action_t) 0x05, /* umount event for block devices */
+ KOBJ_OFFLINE = (__force kobject_action_t) 0x06, /* offline event for hotplug devices */
};
diff -Nru a/kernel/cpu.c b/kernel/cpu.c
--- a/kernel/cpu.c 2004-10-22 15:59:52 -07:00
+++ b/kernel/cpu.c 2004-10-22 15:59:52 -07:00
@@ -57,34 +57,6 @@
write_unlock_irq(&tasklist_lock);
}
-/* Notify userspace when a cpu event occurs, by running '/sbin/hotplug
- * cpu' with certain environment variables set. */
-static int cpu_run_sbin_hotplug(unsigned int cpu, const char *action)
-{
- char *argv[3], *envp[6], cpu_str[12], action_str[32], devpath_str[40];
- int i;
-
- sprintf(cpu_str, "CPU=%d", cpu);
- sprintf(action_str, "ACTION=%s", action);
- sprintf(devpath_str, "DEVPATH=devices/system/cpu/cpu%d", cpu);
-
- i = 0;
- argv[i++] = hotplug_path;
- argv[i++] = "cpu";
- argv[i] = NULL;
-
- i = 0;
- /* minimal command environment */
- envp[i++] = "HOME=/";
- envp[i++] = "PATH=/sbin:/bin:/usr/sbin:/usr/bin";
- envp[i++] = cpu_str;
- envp[i++] = action_str;
- envp[i++] = devpath_str;
- envp[i] = NULL;
-
- return call_usermodehelper(argv[0], argv, envp, 0);
-}
-
/* Take this CPU down. */
static int take_cpu_down(void *unused)
{
@@ -170,8 +142,6 @@
check_for_tasks(cpu);
- cpu_run_sbin_hotplug(cpu, "offline");
-
out_thread:
err = kthread_stop(p);
out_allowed:
@@ -179,11 +149,6 @@
out:
unlock_cpu_hotplug();
return err;
-}
-#else
-static inline int cpu_run_sbin_hotplug(unsigned int cpu, const char *action)
-{
- return 0;
}
#endif /*CONFIG_HOTPLUG_CPU*/
diff -Nru a/lib/kobject_uevent.c b/lib/kobject_uevent.c
--- a/lib/kobject_uevent.c 2004-10-22 15:59:52 -07:00
+++ b/lib/kobject_uevent.c 2004-10-22 15:59:52 -07:00
@@ -36,6 +36,8 @@
return "mount";
case KOBJ_UMOUNT:
return "umount";
+ case KOBJ_OFFLINE:
+ return "offline";
default:
return NULL;
}
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] Driver Core patches for 2.6.10-rc1
2004-10-22 23:09 ` Greg KH
@ 2004-10-22 23:09 ` Greg KH
2004-10-22 23:09 ` Greg KH
0 siblings, 1 reply; 9+ messages in thread
From: Greg KH @ 2004-10-22 23:09 UTC (permalink / raw)
To: linux-kernel
ChangeSet 1.2022, 2004/10/22 14:30:22-07:00, akpm@osdl.org
[PATCH] kobject_uevent warning fix
lib/kobject_uevent.c:39: warning: `action_to_string' defined but not used
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
lib/kobject_uevent.c | 2 ++
1 files changed, 2 insertions(+)
diff -Nru a/lib/kobject_uevent.c b/lib/kobject_uevent.c
--- a/lib/kobject_uevent.c 2004-10-22 15:59:42 -07:00
+++ b/lib/kobject_uevent.c 2004-10-22 15:59:42 -07:00
@@ -23,6 +23,7 @@
#include <linux/kobject.h>
#include <net/sock.h>
+#if defined(CONFIG_KOBJECT_UEVENT) || defined(CONFIG_HOTPLUG)
static char *action_to_string(enum kobject_action action)
{
switch (action) {
@@ -42,6 +43,7 @@
return NULL;
}
}
+#endif
#ifdef CONFIG_KOBJECT_UEVENT
static struct sock *uevent_sock;
^ permalink raw reply [flat|nested] 9+ messages in thread
* [BK PATCH] Driver Core patches for 2.6.10-rc1
@ 2004-11-01 21:54 Greg KH
0 siblings, 0 replies; 9+ messages in thread
From: Greg KH @ 2004-11-01 21:54 UTC (permalink / raw)
To: torvalds, akpm; +Cc: linux-kernel
Hi,
Here are some driver core patches for 2.6.10-rc1. The majority of them
have all been in the -mm tree for a while. They contain:
- bugfix for the hotplug calls that was breaking all firmware
downloads.
- sysfs backing patches. Finally Maneesh can rest...
- add a "driver" symlink in devices to make it easier to
determine what driver is bound to a specific device.
- other bugfixes.
Please pull from:
bk://kernel.bkbits.net/gregkh/linux/driver-2.6
thanks,
greg k-h
p.s. I'll send these as patches in response to this email to lkml for
those who want to see them.
drivers/base/bus.c | 61 +++---
drivers/base/power/main.c | 11 -
drivers/base/power/power.h | 5
drivers/base/power/resume.c | 16 +
drivers/base/power/suspend.c | 44 ++--
drivers/input/input.c | 2
drivers/input/serio/serio.c | 7
drivers/pnp/pnpbios/core.c | 2
drivers/s390/crypto/z90main.c | 1
fs/sysfs/bin.c | 60 ++----
fs/sysfs/dir.c | 379 +++++++++++++++++++++++++++++++++++------
fs/sysfs/file.c | 98 +++++-----
fs/sysfs/group.c | 4
fs/sysfs/inode.c | 102 ++++++++---
fs/sysfs/mount.c | 12 +
fs/sysfs/symlink.c | 65 ++++---
fs/sysfs/sysfs.h | 81 ++++++++
include/linux/device.h | 4
include/linux/kmod.h | 4
include/linux/kobject_uevent.h | 5
include/linux/sysfs.h | 19 ++
kernel/cpu.c | 1
kernel/kmod.c | 23 --
kernel/sysctl.c | 2
lib/kobject_uevent.c | 48 +++--
25 files changed, 742 insertions(+), 314 deletions(-)
-----
Dmitry Torokhov:
o Driver core: add driver symlink to device
o Driver core: add driver_probe_device
o Driver core: export device_attach
Kay Sievers:
o take me home, hotplug_path[]
o kobject: fix hotplug bug with seqnum
Maneesh Soni:
o sysfs backing store: stop pinning dentries/inodes for leaf entries
o sysfs backing store: use sysfs_dirent based tree in dir file operations
o sysfs backing store: use sysfs_dirent based tree in file removal
o sysfs backing store - add sysfs_direct structure
o fix oops with firmware loading
o sysfs backing store - prepare sysfs_file_operations helpers
Paul Mackerras:
o Fix deadlocks on dpm_sem
Simon Derr:
o Possible race in sysfs_read_file() and sysfs_write_file()
o Fix race in sysfs_read_file() and sysfs_write_file()
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2004-11-01 23:01 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-10-22 23:09 [BK PATCH] Driver Core patches for 2.6.10-rc1 Greg KH
2004-10-22 23:09 ` [PATCH] " Greg KH
2004-10-22 23:09 ` Greg KH
2004-10-22 23:09 ` Greg KH
2004-10-22 23:09 ` Greg KH
2004-10-22 23:09 ` Greg KH
2004-10-22 23:09 ` Greg KH
2004-10-22 23:09 ` Greg KH
2004-11-01 21:54 [BK PATCH] " Greg KH
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.