---

 25-akpm/kernel/workqueue.c |    2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)

diff -puN kernel/workqueue.c~fix-deadlock-in-__create_workqueue-2 kernel/workqueue.c
--- 25/kernel/workqueue.c~fix-deadlock-in-__create_workqueue-2	2004-05-03 20:53:10.499064904 -0700
+++ 25-akpm/kernel/workqueue.c	2004-05-04 00:51:01.615525432 -0700
@@ -334,6 +334,7 @@ struct workqueue_struct *__create_workqu
 				destroy = 1;
 		}
 	}
+	unlock_cpu_hotplug();
 
 	/*
 	 * Was there any error during startup? If yes then clean up:
@@ -342,7 +343,6 @@ struct workqueue_struct *__create_workqu
 		destroy_workqueue(wq);
 		wq = NULL;
 	}
-	unlock_cpu_hotplug();
 	return wq;
 }
 

_