This is a note to let you know that I've just added the patch titled

     Subject: USB: make the autosuspend workqueue thread freezable

to my gregkh-2.6 tree.  Its filename is

     usb-make-the-autosuspend-workqueue-thread-freezable.patch

This tree can be found at 
    http://www.kernel.org/pub/linux/kernel/people/gregkh/gregkh-2.6/patches/


>From [EMAIL PROTECTED] Thu Apr  5 13:05:36 2007
From: Alan Stern <[EMAIL PROTECTED]>
Date: Thu, 5 Apr 2007 16:05:33 -0400 (EDT)
Subject: USB: make the autosuspend workqueue thread freezable
To: Greg KH <[EMAIL PROTECTED]>
Cc: USB development list <linux-usb-devel@lists.sourceforge.net>
Message-ID: <[EMAIL PROTECTED]>


This patch (as881) makes the ksuspend_usb_wq workqueue freezable.  We
don't want a rogue workqueue thread running around, unexpectedly
suspending or resuming USB devices in the middle of a system sleep
transition.

Signed-off-by: Alan Stern <[EMAIL PROTECTED]>
Signed-off-by: Greg Kroah-Hartman <[EMAIL PROTECTED]>

---
 drivers/usb/core/usb.c    |    3 ++-
 include/linux/workqueue.h |    2 ++
 2 files changed, 4 insertions(+), 1 deletion(-)

--- a/drivers/usb/core/usb.c
+++ b/drivers/usb/core/usb.c
@@ -206,7 +206,8 @@ struct device_type usb_device_type = {
 
 static int ksuspend_usb_init(void)
 {
-       ksuspend_usb_wq = create_singlethread_workqueue("ksuspend_usbd");
+       ksuspend_usb_wq = create_singlethread_freezeable_workqueue(
+                       "ksuspend_usbd");
        if (!ksuspend_usb_wq)
                return -ENOMEM;
        return 0;
--- a/include/linux/workqueue.h
+++ b/include/linux/workqueue.h
@@ -164,6 +164,8 @@ extern struct workqueue_struct *__create
 #define create_workqueue(name) __create_workqueue((name), 0, 0)
 #define create_freezeable_workqueue(name) __create_workqueue((name), 0, 1)
 #define create_singlethread_workqueue(name) __create_workqueue((name), 1, 0)
+#define create_singlethread_freezeable_workqueue(name) \
+               __create_workqueue((name), 1, 1)
 
 extern void destroy_workqueue(struct workqueue_struct *wq);
 


Patches currently in gregkh-2.6 which might be from [EMAIL PROTECTED] are

driver/sysfs-add-sysfs_dirent-s_name.patch
driver/sysfs-add-sysfs_dirent-s_parent.patch
driver/sysfs-allocate-inode-number-using-ida.patch
driver/sysfs-consolidate-sysfs_dirent-creation-functions.patch
driver/sysfs-fix-error-handling-in-binattr-write.patch
driver/sysfs-flatten-and-fix-sysfs_rename_dir-error-handling.patch
driver/sysfs-flatten-cleanup-paths-in-sysfs_add_link-and-create_dir.patch
driver/sysfs-implement-bin_buffer.patch
driver/sysfs-implement-kobj_sysfs_assoc_lock.patch
driver/sysfs-implement-sysfs_dirent-active-reference-and-immediate-disconnect.patch
driver/sysfs-kill-attribute-file-orphaning.patch
driver/sysfs-kill-unnecessary-attribute-owner.patch
driver/sysfs-make-sysfs_dirent-s_element-a-union.patch
driver/sysfs-make-sysfs_put-ignore-null-sd.patch
driver/sysfs-move-release_sysfs_dirent-to-dir.c.patch
driver/sysfs-reimplement-syfs_drop_dentry.patch
driver/sysfs-reimplement-symlink-using-sysfs_dirent-tree.patch
driver/sysfs-separate-out-sysfs_attach_dentry.patch
driver/ida-implement-idr-based-id-allocator.patch
driver/idr-fix-obscure-bug-in-allocation-path.patch
driver/idr-separate-out-idr_mark_full.patch
usb/usb-remove-unneeded-warn_on.patch
usb/usb-make-the-autosuspend-workqueue-thread-freezable.patch
usb/usb-more-autosuspend-timer-stuff.patch
usb/usb-set-the-correct-interrupt-interval-in-usb_bulk_msg.patch
usb/ehci-fix-problem-with-bios-handoff.patch

-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
linux-usb-devel@lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to