aboutsummaryrefslogtreecommitdiffstats
diff options
-rw-r--r--driver-core/kobject-catch-kobjects-that-are-not-initialized.patch2
-rw-r--r--driver-core/kobjects-mark-cleaned-up-kobjects-as-unitialized.patch24
-rw-r--r--pci/ide-remove-ide-reverse-ide-core.patch8
-rw-r--r--series2
-rw-r--r--sysdev-fix-problem-with-sysdev_class-being-re-registered.patch29
-rw-r--r--version2
6 files changed, 51 insertions, 16 deletions
diff --git a/driver-core/kobject-catch-kobjects-that-are-not-initialized.patch b/driver-core/kobject-catch-kobjects-that-are-not-initialized.patch
index 7127339723a8dd..8be49d6651a5b6 100644
--- a/driver-core/kobject-catch-kobjects-that-are-not-initialized.patch
+++ b/driver-core/kobject-catch-kobjects-that-are-not-initialized.patch
@@ -17,7 +17,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
--- a/lib/kobject.c
+++ b/lib/kobject.c
-@@ -595,8 +595,15 @@ static void kobject_release(struct kref
+@@ -599,8 +599,15 @@ static void kobject_release(struct kref
*/
void kobject_put(struct kobject *kobj)
{
diff --git a/driver-core/kobjects-mark-cleaned-up-kobjects-as-unitialized.patch b/driver-core/kobjects-mark-cleaned-up-kobjects-as-unitialized.patch
index 22c1b5ca30b2bd..a8c7e6da0b6a6f 100644
--- a/driver-core/kobjects-mark-cleaned-up-kobjects-as-unitialized.patch
+++ b/driver-core/kobjects-mark-cleaned-up-kobjects-as-unitialized.patch
@@ -20,18 +20,22 @@ Signed-off-by: Balaji Rao <balajirrao@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
- lib/kobject.c | 3 +++
- 1 file changed, 3 insertions(+)
+ lib/kobject.c | 7 +++++++
+ 1 file changed, 7 insertions(+)
--- a/lib/kobject.c
+++ b/lib/kobject.c
-@@ -577,6 +577,9 @@ static void kobject_cleanup(struct kobje
- pr_debug("kobject: '%s': free name\n", name);
- kfree(name);
+@@ -566,6 +566,13 @@ static void kobject_cleanup(struct kobje
+ kobject_del(kobj);
}
-+
-+ /* Set the state to uninitialized */
-+ kobj->state_initialized = 0;
- }
- static void kobject_release(struct kref *kref)
++ /* set the states incase someone tries to use this object again */
++ kobj->state_initialized = 0;
++ kobj->state_in_sysfs = 0;
++ kobj->state_add_uevent_sent = 0;
++ kobj->state_remove_uevent_sent = 0;
++ kobj->state_initialized = 0;
++
+ if (t && t->release) {
+ pr_debug("kobject: '%s' (%p): calling ktype release\n",
+ kobject_name(kobj), kobj);
diff --git a/pci/ide-remove-ide-reverse-ide-core.patch b/pci/ide-remove-ide-reverse-ide-core.patch
index 1e19b3f43a6116..66d285beab0581 100644
--- a/pci/ide-remove-ide-reverse-ide-core.patch
+++ b/pci/ide-remove-ide-reverse-ide-core.patch
@@ -14,7 +14,7 @@ Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
- Documentation/ide.txt | 2 --
+ Documentation/ide/ide.txt | 2 --
Documentation/kernel-parameters.txt | 2 +-
drivers/ide/Kconfig | 9 +--------
drivers/ide/ide-scan-pci.c | 9 ++-------
@@ -22,8 +22,8 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
include/linux/ide.h | 1 -
6 files changed, 4 insertions(+), 31 deletions(-)
---- a/Documentation/ide.txt
-+++ b/Documentation/ide.txt
+--- a/Documentation/ide/ide.txt
++++ b/Documentation/ide/ide.txt
@@ -280,8 +280,6 @@ Summary of ide driver parameters for ker
ability to bit test for detection is currently
unknown.
@@ -41,7 +41,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
ide= [HW] (E)IDE subsystem
- Format: ide=nodma or ide=doubler or ide=reverse
+ Format: ide=nodma or ide=doubler
- See Documentation/ide.txt.
+ See Documentation/ide/ide.txt.
ide?= [HW] (E)IDE subsystem
--- a/drivers/ide/Kconfig
diff --git a/series b/series
index 9089447ffa3744..db01fd6eeaeeba 100644
--- a/series
+++ b/series
@@ -170,6 +170,8 @@ driver-core/video-add-the-go7007-driver.patch
#pending/greg-debugobjects-add-documentation.patch
#pending/greg-debugobjects-add-timer-specific-object-debugging-code.patch
+sysdev-fix-problem-with-sysdev_class-being-re-registered.patch
+
scsi-ib-convert-struct-class_device-to-struct-device.patch
firmware-add-kconfig-and-makefile-to-build-the-firmware-samples.patch
f2.patch
diff --git a/sysdev-fix-problem-with-sysdev_class-being-re-registered.patch b/sysdev-fix-problem-with-sysdev_class-being-re-registered.patch
new file mode 100644
index 00000000000000..25995a79d6cce2
--- /dev/null
+++ b/sysdev-fix-problem-with-sysdev_class-being-re-registered.patch
@@ -0,0 +1,29 @@
+From foo@baz Tue Apr 9 12:12:43 2002
+Date: Sun, 9 Mar 2008 03:37:16 +0530
+To: Greg KH <greg@kroah.com>
+From: Greg Kroah-Hartman <gregkh@suse.de>
+Subject: sysdev: fix problem with sysdev_class being re-registered
+
+We need to initialize the kobject for a sysdev_class as it could have
+been recycled (stupid static kobjects...)
+
+Thanks to Balaji Rao <balajirrao@gmail.com> for pointing out the
+problem.
+
+Cc: Balaji Rao <balajirrao@gmail.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/base/sys.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+--- a/drivers/base/sys.c
++++ b/drivers/base/sys.c
+@@ -133,6 +133,7 @@ int sysdev_class_register(struct sysdev_
+ pr_debug("Registering sysdev class '%s'\n",
+ kobject_name(&cls->kset.kobj));
+ INIT_LIST_HEAD(&cls->drivers);
++ memset(&cls->kset.kobj, 0x00, sizeof(struct kobject));
+ cls->kset.kobj.parent = &system_kset->kobj;
+ cls->kset.kobj.ktype = &ktype_sysdev_class;
+ cls->kset.kobj.kset = system_kset;
diff --git a/version b/version
index 54d01501208005..097805e4f88c10 100644
--- a/version
+++ b/version
@@ -1 +1 @@
-2.6.25-rc4-git2
+2.6.25-rc4-git3