packages: kernel-xenU/linux-2.6-vs2.3.patch - updated for 2.6.32.22

pawelz pawelz at pld-linux.org
Tue Sep 21 07:20:11 CEST 2010


Author: pawelz                       Date: Tue Sep 21 05:20:11 2010 GMT
Module: packages                      Tag: HEAD
---- Log message:
- updated for 2.6.32.22

---- Files affected:
packages/kernel-xenU:
   linux-2.6-vs2.3.patch (1.10 -> 1.11) 

---- Diffs:

================================================================
Index: packages/kernel-xenU/linux-2.6-vs2.3.patch
diff -u packages/kernel-xenU/linux-2.6-vs2.3.patch:1.10 packages/kernel-xenU/linux-2.6-vs2.3.patch:1.11
--- packages/kernel-xenU/linux-2.6-vs2.3.patch:1.10	Mon Sep 20 18:21:59 2010
+++ packages/kernel-xenU/linux-2.6-vs2.3.patch	Tue Sep 21 07:20:05 2010
@@ -16359,10 +16359,9 @@
  		init_utsname()->release,
  		(int)strcspn(init_utsname()->version, " "),
  		init_utsname()->version);
-diff -NurpP --minimal linux-2.6.32.21/kernel/sched_fair.c linux-2.6.32.21-vs2.3.0.36.29.6/kernel/sched_fair.c
---- linux-2.6.32.21/kernel/sched_fair.c	2010-09-05 01:11:44.000000000 +0200
-+++ linux-2.6.32.21-vs2.3.0.36.29.6/kernel/sched_fair.c	2010-02-12 10:59:55.000000000 +0100
-@@ -192,7 +192,308 @@ find_matching_se(struct sched_entity **s
+--- linux-2.6.32/kernel/sched_fair.c.orig	2010-09-21 06:53:01.322446740 +0200
++++ linux-2.6.32/kernel/sched_fair.c	2010-09-21 07:06:40.821893322 +0200
+@@ -192,7 +192,308 @@
  	}
  }
  
@@ -16672,7 +16671,7 @@
  
  static inline struct task_struct *task_of(struct sched_entity *se)
  {
-@@ -254,7 +555,6 @@ find_matching_se(struct sched_entity **s
+@@ -254,7 +555,6 @@
  
  #endif	/* CONFIG_FAIR_GROUP_SCHED */
  
@@ -16680,7 +16679,7 @@
  /**************************************************************
   * Scheduling class tree data structure manipulation methods:
   */
-@@ -492,14 +792,25 @@ __update_curr(struct cfs_rq *cfs_rq, str
+@@ -493,14 +793,25 @@
  	update_min_vruntime(cfs_rq);
  }
  
@@ -16709,7 +16708,7 @@
  
  	/*
  	 * Get the amount of time the current task was running
-@@ -508,17 +819,29 @@ static void update_curr(struct cfs_rq *c
+@@ -509,17 +820,29 @@
  	 */
  	delta_exec = (unsigned long)(now - curr->exec_start);
  	if (!delta_exec)
@@ -16729,13 +16728,13 @@
 +	struct sched_entity *curr = cfs_rq->curr;
 +	struct rq *rq = rq_of(cfs_rq);
 +	unsigned long delta_exec;
++
++	if (update_curr_common(cfs_rq, &delta_exec))
++		return ;
  
 -		trace_sched_stat_runtime(curtask, delta_exec, curr->vruntime);
 -		cpuacct_charge(curtask, delta_exec);
 -		account_group_exec_runtime(curtask, delta_exec);
-+	if (update_curr_common(cfs_rq, &delta_exec))
-+		return ;
-+
 +	if (entity_is_task(curr))
 +		update_curr_task(curr, delta_exec);
 +	else {
@@ -16745,23 +16744,29 @@
  	}
  }
  
-@@ -743,13 +1066,9 @@ place_entity(struct cfs_rq *cfs_rq, stru
- 	se->vruntime = vruntime;
- }
+@@ -747,8 +1070,8 @@
+ #define ENQUEUE_WAKEUP	1
+ #define ENQUEUE_MIGRATE 2
  
 -static void
--enqueue_entity(struct cfs_rq *cfs_rq, struct sched_entity *se, int wakeup)
+-enqueue_entity(struct cfs_rq *cfs_rq, struct sched_entity *se, int flags)
 +static void enqueue_entity_common(struct cfs_rq *cfs_rq,
-+		struct sched_entity *se, int wakeup)
++		struct sched_entity *se, int flags)
  {
+ 	/*
+ 	 * Update the normalized vruntime before updating min_vruntime
+@@ -757,10 +1080,6 @@
+ 	if (!(flags & ENQUEUE_WAKEUP) || (flags & ENQUEUE_MIGRATE))
+ 		se->vruntime += cfs_rq->min_vruntime;
+ 
 -	/*
 -	 * Update run-time statistics of the 'current'.
 -	 */
 -	update_curr(cfs_rq);
  	account_entity_enqueue(cfs_rq, se);
  
- 	if (wakeup) {
-@@ -761,6 +1080,29 @@ enqueue_entity(struct cfs_rq *cfs_rq, st
+ 	if (flags & ENQUEUE_WAKEUP) {
+@@ -772,6 +1091,29 @@
  	check_spread(cfs_rq, se);
  	if (se != cfs_rq->curr)
  		__enqueue_entity(cfs_rq, se);
@@ -16791,7 +16796,7 @@
  }
  
  static void __clear_buddies(struct cfs_rq *cfs_rq, struct sched_entity *se)
-@@ -804,6 +1146,8 @@ dequeue_entity(struct cfs_rq *cfs_rq, st
+@@ -815,6 +1157,8 @@
  
  	if (se != cfs_rq->curr)
  		__dequeue_entity(cfs_rq, se);
@@ -16799,8 +16804,8 @@
 +		vx_deactivate_task(task_of(se));
  	account_entity_dequeue(cfs_rq, se);
  	update_min_vruntime(cfs_rq);
- }
-@@ -900,6 +1244,32 @@ static struct sched_entity *pick_next_en
+ 
+@@ -919,6 +1263,32 @@
  	return se;
  }
  
@@ -16833,7 +16838,7 @@
  static void put_prev_entity(struct cfs_rq *cfs_rq, struct sched_entity *prev)
  {
  	/*
-@@ -911,6 +1281,8 @@ static void put_prev_entity(struct cfs_r
+@@ -930,6 +1300,8 @@
  
  	check_spread(cfs_rq, prev);
  	if (prev->on_rq) {
@@ -16842,7 +16847,7 @@
  		update_stats_wait_start(cfs_rq, prev);
  		/* Put 'current' back into the tree. */
  		__enqueue_entity(cfs_rq, prev);
-@@ -1007,10 +1379,28 @@ static inline void hrtick_update(struct 
+@@ -1026,10 +1398,28 @@
  }
  #endif
  
@@ -16869,27 +16874,24 @@
   * then put the task into the rbtree:
 + * Don't enqueue a throttled entity further into the hierarchy.
   */
- static void enqueue_task_fair(struct rq *rq, struct task_struct *p, int wakeup)
- {
-@@ -1020,11 +1410,15 @@ static void enqueue_task_fair(struct rq 
+ static void
+ enqueue_task_fair(struct rq *rq, struct task_struct *p, int wakeup, bool head)
+@@ -1046,8 +1436,13 @@
  	for_each_sched_entity(se) {
  		if (se->on_rq)
  			break;
 +
  		cfs_rq = cfs_rq_of(se);
--		enqueue_entity(cfs_rq, se, wakeup);
+-		enqueue_entity(cfs_rq, se, flags);
 +		if (entity_is_task(se))
 +			enqueue_entity(cfs_rq, se, wakeup);
 +		else
 +			if (enqueue_group_entity(cfs_rq, se, wakeup))
 +				break;
- 		wakeup = 1;
+ 		flags = ENQUEUE_WAKEUP;
  	}
--
- 	hrtick_update(rq);
- }
  
-@@ -1044,6 +1438,17 @@ static void dequeue_task_fair(struct rq 
+@@ -1070,6 +1465,17 @@
  		/* Don't dequeue parent if it has other entities besides us */
  		if (cfs_rq->load.weight)
  			break;
@@ -16907,7 +16909,7 @@
  		sleep = 1;
  	}
  
-@@ -1821,9 +2226,10 @@ load_balance_fair(struct rq *this_rq, in
+@@ -1886,9 +2292,10 @@
  		u64 rem_load, moved_load;
  
  		/*
@@ -16920,7 +16922,7 @@
  			continue;
  
  		rem_load = (u64)rem_load_move * busiest_weight;
-@@ -1872,6 +2278,12 @@ move_one_task_fair(struct rq *this_rq, i
+@@ -1937,6 +2344,12 @@
  
  	for_each_leaf_cfs_rq(busiest, busy_cfs_rq) {
  		/*
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/kernel-xenU/linux-2.6-vs2.3.patch?r1=1.10&r2=1.11&f=u



More information about the pld-cvs-commit mailing list