SOURCES: kernel-desktop-suspend2-nort.patch (NEW) - original suspe...

sparky sparky at pld-linux.org
Fri Jun 23 19:06:00 CEST 2006


Author: sparky                       Date: Fri Jun 23 17:06:00 2006 GMT
Module: SOURCES                       Tag: HEAD
---- Log message:
- original suspend2 rest, used if not patching with preempt-rt

---- Files affected:
SOURCES:
   kernel-desktop-suspend2-nort.patch (NONE -> 1.1)  (NEW)

---- Diffs:

================================================================
Index: SOURCES/kernel-desktop-suspend2-nort.patch
diff -u /dev/null SOURCES/kernel-desktop-suspend2-nort.patch:1.1
--- /dev/null	Fri Jun 23 19:06:00 2006
+++ SOURCES/kernel-desktop-suspend2-nort.patch	Fri Jun 23 19:05:55 2006
@@ -0,0 +1,37 @@
+--- 2000-workqueue-freezing.patch-old/kernel/softirq.c	2006-02-18 08:56:06.000000000 +1000
++++ 2000-workqueue-freezing.patch-new/kernel/softirq.c	2006-02-23 21:36:20.000000000 +1000
+@@ -350,7 +350,6 @@ void __init softirq_init(void)
+ static int ksoftirqd(void * __bind_cpu)
+ {
+ 	set_user_nice(current, 19);
+-	current->flags |= PF_NOFREEZE;
+ 
+ 	set_current_state(TASK_INTERRUPTIBLE);
+ 
+@@ -456,7 +455,7 @@ static int __devinit cpu_callback(struct
+ 	case CPU_UP_PREPARE:
+ 		BUG_ON(per_cpu(tasklet_vec, hotcpu).list);
+ 		BUG_ON(per_cpu(tasklet_hi_vec, hotcpu).list);
+-		p = kthread_create(ksoftirqd, hcpu, "ksoftirqd/%d", hotcpu);
++		p = kthread_nofreeze_create(ksoftirqd, hcpu, "ksoftirqd/%d", hotcpu);
+ 		if (IS_ERR(p)) {
+ 			printk("ksoftirqd for %i failed\n", hotcpu);
+ 			return NOTIFY_BAD;
+--- 2000-workqueue-freezing.patch-old/include/linux/workqueue.h	2006-02-18 08:56:05.000000000 +1000
++++ 2000-workqueue-freezing.patch-new/include/linux/workqueue.h	2006-02-23 21:36:19.000000000 +1000
+@@ -51,9 +51,12 @@ struct work_struct {
+ 	} while (0)
+ 
+ extern struct workqueue_struct *__create_workqueue(const char *name,
+-						    int singlethread);
+-#define create_workqueue(name) __create_workqueue((name), 0)
+-#define create_singlethread_workqueue(name) __create_workqueue((name), 1)
++						    int singlethread,
++						    unsigned long freezer_flag);
++#define create_workqueue(name) __create_workqueue((name), 0, 0)
++#define create_nofreeze_workqueue(name) __create_workqueue((name), 0, PF_NOFREEZE)
++#define create_singlethread_workqueue(name) __create_workqueue((name), 1, 0)
++#define create_nofreeze_singlethread_workqueue(name) __create_workqueue((name), 1, PF_NOFREEZE)
+ 
+ extern void destroy_workqueue(struct workqueue_struct *wq);
+ 
================================================================


More information about the pld-cvs-commit mailing list