packages (Titanium): kernel-desktop/kernel-desktop-sched-bfs.patch - BFS pa...

lmasko lmasko at pld-linux.org
Wed Apr 28 19:21:48 CEST 2010


Author: lmasko                       Date: Wed Apr 28 17:21:48 2010 GMT
Module: packages                      Tag: Titanium
---- Log message:
- BFS patch up to v.316.

---- Files affected:
packages/kernel-desktop:
   kernel-desktop-sched-bfs.patch (1.1.2.16 -> 1.1.2.17) 

---- Diffs:

================================================================
Index: packages/kernel-desktop/kernel-desktop-sched-bfs.patch
diff -u packages/kernel-desktop/kernel-desktop-sched-bfs.patch:1.1.2.16 packages/kernel-desktop/kernel-desktop-sched-bfs.patch:1.1.2.17
--- packages/kernel-desktop/kernel-desktop-sched-bfs.patch:1.1.2.16	Tue Mar 16 13:06:32 2010
+++ packages/kernel-desktop/kernel-desktop-sched-bfs.patch	Wed Apr 28 19:21:43 2010
@@ -1,4 +1,4 @@
-The Brain Fuck Scheduler v0.315 by Con Kolivas.
+The Brain Fuck Scheduler v0.316 by Con Kolivas.
 
 A single shared runqueue O(n) strict fairness earliest deadline first design.
 
@@ -38,17 +38,17 @@
  kernel/kthread.c                          |    2 
  kernel/posix-cpu-timers.c                 |   14 
  kernel/sched.c                            |    4 
- kernel/sched_bfs.c                        | 6724 ++++++++++++++++++++++++++++++
+ kernel/sched_bfs.c                        | 6723 ++++++++++++++++++++++++++++++
  kernel/slow-work.c                        |    1 
  kernel/sysctl.c                           |   31 
  lib/Kconfig.debug                         |    2 
  mm/oom_kill.c                             |    2 
- 19 files changed, 7337 insertions(+), 29 deletions(-)
+ 19 files changed, 7336 insertions(+), 29 deletions(-)
 
-Index: linux-2.6.33-ck1/Documentation/sysctl/kernel.txt
+Index: linux-2.6.33-bfs/Documentation/sysctl/kernel.txt
 ===================================================================
---- linux-2.6.33-ck1.orig/Documentation/sysctl/kernel.txt	2010-02-25 21:51:46.369907919 +1100
-+++ linux-2.6.33-ck1/Documentation/sysctl/kernel.txt	2010-02-25 21:58:38.561793820 +1100
+--- linux-2.6.33-bfs.orig/Documentation/sysctl/kernel.txt	2010-02-25 21:51:46.000000000 +1100
++++ linux-2.6.33-bfs/Documentation/sysctl/kernel.txt	2010-04-25 15:33:47.431132113 +1000
 @@ -31,6 +31,7 @@ show up in /proc/sys/kernel:
  - domainname
  - hostname
@@ -103,10 +103,10 @@
  rtsig-max & rtsig-nr:
  
  The file rtsig-max can be used to tune the maximum number
-Index: linux-2.6.33-ck1/include/linux/init_task.h
+Index: linux-2.6.33-bfs/include/linux/init_task.h
 ===================================================================
---- linux-2.6.33-ck1.orig/include/linux/init_task.h	2010-02-25 21:51:52.563668896 +1100
-+++ linux-2.6.33-ck1/include/linux/init_task.h	2010-02-25 21:58:38.561793820 +1100
+--- linux-2.6.33-bfs.orig/include/linux/init_task.h	2010-02-25 21:51:52.000000000 +1100
++++ linux-2.6.33-bfs/include/linux/init_task.h	2010-04-25 15:33:47.431132113 +1000
 @@ -115,6 +115,69 @@ extern struct cred init_cred;
   *  INIT_TASK is used to set up the first task table, touch at
   * your own risk!. Base=0, limit=0x1fffff (=2MB)
@@ -186,10 +186,10 @@
  
  #define INIT_CPU_TIMERS(cpu_timers)					\
  {									\
-Index: linux-2.6.33-ck1/include/linux/sched.h
+Index: linux-2.6.33-bfs/include/linux/sched.h
 ===================================================================
---- linux-2.6.33-ck1.orig/include/linux/sched.h	2010-02-25 21:51:52.643543559 +1100
-+++ linux-2.6.33-ck1/include/linux/sched.h	2010-02-25 22:00:21.406620423 +1100
+--- linux-2.6.33-bfs.orig/include/linux/sched.h	2010-02-25 21:51:52.000000000 +1100
++++ linux-2.6.33-bfs/include/linux/sched.h	2010-04-25 15:39:03.378132181 +1000
 @@ -36,8 +36,15 @@
  #define SCHED_FIFO		1
  #define SCHED_RR		2
@@ -293,7 +293,7 @@
 +
 +static inline void print_scheduler_version(void)
 +{
-+	printk(KERN_INFO"BFS CPU scheduler v0.315 by Con Kolivas.\n");
++	printk(KERN_INFO"BFS CPU scheduler v0.316 by Con Kolivas.\n");
 +}
 +
 +static inline int iso_task(struct task_struct *p)
@@ -374,10 +374,10 @@
  extern void sched_dead(struct task_struct *p);
  
  extern void proc_caches_init(void);
-Index: linux-2.6.33-ck1/kernel/sysctl.c
+Index: linux-2.6.33-bfs/kernel/sysctl.c
 ===================================================================
---- linux-2.6.33-ck1.orig/kernel/sysctl.c	2010-02-25 21:51:52.883543363 +1100
-+++ linux-2.6.33-ck1/kernel/sysctl.c	2010-02-25 21:58:38.564793459 +1100
+--- linux-2.6.33-bfs.orig/kernel/sysctl.c	2010-02-25 21:51:52.000000000 +1100
++++ linux-2.6.33-bfs/kernel/sysctl.c	2010-04-25 15:33:47.434131967 +1000
 @@ -104,7 +104,12 @@ static int zero;
  static int __maybe_unused one = 1;
  static int __maybe_unused two = 2;
@@ -401,7 +401,7 @@
  static int min_sched_granularity_ns = 100000;		/* 100 usecs */
  static int max_sched_granularity_ns = NSEC_PER_SEC;	/* 1 second */
  static int min_wakeup_granularity_ns;			/* 0 usecs */
-@@ -251,6 +256,7 @@ static int max_sched_shares_ratelimit = 
+@@ -251,6 +256,7 @@ static int max_sched_shares_ratelimit =
  #endif
  
  static struct ctl_table kern_table[] = {
@@ -444,11 +444,11 @@
  #if defined(CONFIG_S390) && defined(CONFIG_SMP)
  	{
  		.procname	= "spin_retry",
-Index: linux-2.6.33-ck1/kernel/sched_bfs.c
+Index: linux-2.6.33-bfs/kernel/sched_bfs.c
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.33-ck1/kernel/sched_bfs.c	2010-02-25 21:58:53.033543899 +1100
-@@ -0,0 +1,6724 @@
++++ linux-2.6.33-bfs/kernel/sched_bfs.c	2010-04-25 15:39:03.378132181 +1000
+@@ -0,0 +1,6723 @@
 +/*
 + *  kernel/sched_bfs.c, was sched.c
 + *
@@ -1214,10 +1214,9 @@
 +{
 +}
 +
-+/* Always called from a busy cpu on UP */
 +static inline int suitable_idle_cpus(struct task_struct *p)
 +{
-+	return 0;
++	return uprq->curr == uprq->idle;
 +}
 +
 +static inline void resched_suitable_idle(struct task_struct *p)
@@ -1396,7 +1395,7 @@
 +#else
 +static inline void resched_task(struct task_struct *p)
 +{
-+	assert_spin_locked(&grq.lock);
++	assert_raw_spin_locked(&grq.lock);
 +	set_tsk_need_resched(p);
 +}
 +#endif
@@ -1662,10 +1661,10 @@
 +#else /* CONFIG_SMP */
 +static void try_preempt(struct task_struct *p, struct rq *this_rq)
 +{
-+	if (p->prio < this_rq->rq_prio ||
-+	    (p->prio == this_rq->rq_prio && p->policy == SCHED_NORMAL &&
-+	     time_before(p->deadline, this_rq->rq_deadline)))
-+		resched_task(this_rq->curr);
++	if (p->prio < uprq->rq_prio ||
++	    (p->prio == uprq->rq_prio && p->policy == SCHED_NORMAL &&
++	     time_before(p->deadline, uprq->rq_deadline)))
++		resched_task(uprq->curr);
 +	return;
 +}
 +#endif /* CONFIG_SMP */
@@ -7173,10 +7172,10 @@
 +	return smt_gain;
 +}
 +#endif
-Index: linux-2.6.33-ck1/kernel/posix-cpu-timers.c
+Index: linux-2.6.33-bfs/kernel/posix-cpu-timers.c
 ===================================================================
---- linux-2.6.33-ck1.orig/kernel/posix-cpu-timers.c	2010-02-25 21:51:52.834609248 +1100
-+++ linux-2.6.33-ck1/kernel/posix-cpu-timers.c	2010-02-25 21:58:38.569581210 +1100
+--- linux-2.6.33-bfs.orig/kernel/posix-cpu-timers.c	2010-02-25 21:51:52.000000000 +1100
++++ linux-2.6.33-bfs/kernel/posix-cpu-timers.c	2010-04-25 15:33:47.441131993 +1000
 @@ -250,7 +250,7 @@ void thread_group_cputime(struct task_st
  	do {
  		times->utime = cputime_add(times->utime, t->utime);
@@ -7195,7 +7194,7 @@
  
  }
  void posix_cpu_timers_exit_group(struct task_struct *tsk)
-@@ -526,7 +526,7 @@ void posix_cpu_timers_exit_group(struct 
+@@ -526,7 +526,7 @@ void posix_cpu_timers_exit_group(struct
  	cleanup_timers(tsk->signal->cpu_timers,
  		       cputime_add(tsk->utime, sig->utime),
  		       cputime_add(tsk->stime, sig->stime),
@@ -7240,10 +7239,10 @@
  		};
  
  		if (task_cputime_expired(&task_sample, &tsk->cputime_expires))
-Index: linux-2.6.33-ck1/kernel/exit.c
+Index: linux-2.6.33-bfs/kernel/exit.c
 ===================================================================
---- linux-2.6.33-ck1.orig/kernel/exit.c	2010-02-25 21:51:52.806647595 +1100
-+++ linux-2.6.33-ck1/kernel/exit.c	2010-02-25 21:58:38.570636887 +1100
+--- linux-2.6.33-bfs.orig/kernel/exit.c	2010-02-25 21:51:52.000000000 +1100
++++ linux-2.6.33-bfs/kernel/exit.c	2010-04-25 15:33:47.441131993 +1000
 @@ -121,7 +121,7 @@ static void __exit_signal(struct task_st
  		sig->inblock += task_io_get_inblock(tsk);
  		sig->oublock += task_io_get_oublock(tsk);
@@ -7253,10 +7252,10 @@
  		sig = NULL; /* Marker for below. */
  	}
  
-Index: linux-2.6.33-ck1/mm/oom_kill.c
+Index: linux-2.6.33-bfs/mm/oom_kill.c
 ===================================================================
---- linux-2.6.33-ck1.orig/mm/oom_kill.c	2010-02-25 21:51:52.956715093 +1100
-+++ linux-2.6.33-ck1/mm/oom_kill.c	2010-02-25 21:58:38.571794067 +1100
+--- linux-2.6.33-bfs.orig/mm/oom_kill.c	2010-02-25 21:51:52.000000000 +1100
++++ linux-2.6.33-bfs/mm/oom_kill.c	2010-04-25 15:33:47.442131702 +1000
 @@ -410,7 +410,7 @@ static void __oom_kill_task(struct task_
  	 * all the memory it needs. That way it should be able to
  	 * exit() and clear out its resources quickly...
@@ -7266,10 +7265,10 @@
  	set_tsk_thread_flag(p, TIF_MEMDIE);
  
  	force_sig(SIGKILL, p);
-Index: linux-2.6.33-ck1/init/Kconfig
+Index: linux-2.6.33-bfs/init/Kconfig
 ===================================================================
---- linux-2.6.33-ck1.orig/init/Kconfig	2010-02-25 21:51:52.793668470 +1100
-+++ linux-2.6.33-ck1/init/Kconfig	2010-02-25 21:58:38.572624615 +1100
+--- linux-2.6.33-bfs.orig/init/Kconfig	2010-02-25 21:51:52.000000000 +1100
++++ linux-2.6.33-bfs/init/Kconfig	2010-04-25 15:33:47.443131936 +1000
 @@ -23,6 +23,19 @@ config CONSTRUCTORS
  
  menu "General setup"
@@ -7308,10 +7307,10 @@
  	help
  	  Provides a simple Resource Controller for monitoring the
  	  total CPU consumed by the tasks in a cgroup.
-Index: linux-2.6.33-ck1/kernel/delayacct.c
+Index: linux-2.6.33-bfs/kernel/delayacct.c
 ===================================================================
---- linux-2.6.33-ck1.orig/kernel/delayacct.c	2009-12-03 21:40:09.000000000 +1100
-+++ linux-2.6.33-ck1/kernel/delayacct.c	2010-02-25 21:58:38.572624615 +1100
+--- linux-2.6.33-bfs.orig/kernel/delayacct.c	2009-12-03 21:40:09.000000000 +1100
++++ linux-2.6.33-bfs/kernel/delayacct.c	2010-04-25 15:33:47.443131936 +1000
 @@ -128,7 +128,7 @@ int __delayacct_add_tsk(struct taskstats
  	 */
  	t1 = tsk->sched_info.pcount;
@@ -7321,10 +7320,10 @@
  
  	d->cpu_count += t1;
  
-Index: linux-2.6.33-ck1/fs/proc/base.c
+Index: linux-2.6.33-bfs/fs/proc/base.c
 ===================================================================
---- linux-2.6.33-ck1.orig/fs/proc/base.c	2010-02-25 21:51:52.344674620 +1100
-+++ linux-2.6.33-ck1/fs/proc/base.c	2010-02-25 21:58:38.573794002 +1100
+--- linux-2.6.33-bfs.orig/fs/proc/base.c	2010-02-25 21:51:52.000000000 +1100
++++ linux-2.6.33-bfs/fs/proc/base.c	2010-04-25 15:33:47.444132021 +1000
 @@ -366,7 +366,7 @@ static int proc_pid_stack(struct seq_fil
  static int proc_pid_schedstat(struct task_struct *task, char *buffer)
  {
@@ -7334,10 +7333,10 @@
  			(unsigned long long)task->sched_info.run_delay,
  			task->sched_info.pcount);
  }
-Index: linux-2.6.33-ck1/init/main.c
+Index: linux-2.6.33-bfs/init/main.c
 ===================================================================
---- linux-2.6.33-ck1.orig/init/main.c	2010-02-25 21:51:52.794668762 +1100
-+++ linux-2.6.33-ck1/init/main.c	2010-02-25 21:58:38.574793947 +1100
+--- linux-2.6.33-bfs.orig/init/main.c	2010-02-25 21:51:52.000000000 +1100
++++ linux-2.6.33-bfs/init/main.c	2010-04-25 15:33:47.446131860 +1000
 @@ -806,6 +806,8 @@ static noinline int init_post(void)
  	system_state = SYSTEM_RUNNING;
  	numa_default_policy();
@@ -7347,10 +7346,10 @@
  	if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0)
  		printk(KERN_WARNING "Warning: unable to open an initial console.\n");
  
-Index: linux-2.6.33-ck1/Documentation/scheduler/sched-BFS.txt
+Index: linux-2.6.33-bfs/Documentation/scheduler/sched-BFS.txt
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.33-ck1/Documentation/scheduler/sched-BFS.txt	2010-02-25 21:58:38.575671181 +1100
++++ linux-2.6.33-bfs/Documentation/scheduler/sched-BFS.txt	2010-04-25 15:33:47.447131848 +1000
 @@ -0,0 +1,356 @@
 +BFS - The Brain Fuck Scheduler by Con Kolivas.
 +
@@ -7708,10 +7707,10 @@
 +
 +
 +Con Kolivas <kernel at kolivas.org> Thu Dec 3 2009
-Index: linux-2.6.33-ck1/lib/Kconfig.debug
+Index: linux-2.6.33-bfs/lib/Kconfig.debug
 ===================================================================
---- linux-2.6.33-ck1.orig/lib/Kconfig.debug	2010-02-25 21:51:52.913668770 +1100
-+++ linux-2.6.33-ck1/lib/Kconfig.debug	2010-02-25 21:58:38.576555276 +1100
+--- linux-2.6.33-bfs.orig/lib/Kconfig.debug	2010-02-25 21:51:52.000000000 +1100
++++ linux-2.6.33-bfs/lib/Kconfig.debug	2010-04-25 15:33:47.447131848 +1000
 @@ -727,7 +727,7 @@ config BOOT_PRINTK_DELAY
  
  config RCU_TORTURE_TEST
@@ -7721,10 +7720,10 @@
  	default n
  	help
  	  This option provides a kernel module that runs torture tests
-Index: linux-2.6.33-ck1/arch/powerpc/platforms/cell/spufs/sched.c
+Index: linux-2.6.33-bfs/arch/powerpc/platforms/cell/spufs/sched.c
 ===================================================================
---- linux-2.6.33-ck1.orig/arch/powerpc/platforms/cell/spufs/sched.c	2009-12-03 21:39:55.000000000 +1100
-+++ linux-2.6.33-ck1/arch/powerpc/platforms/cell/spufs/sched.c	2010-02-25 21:58:38.576555276 +1100
+--- linux-2.6.33-bfs.orig/arch/powerpc/platforms/cell/spufs/sched.c	2009-12-03 21:39:55.000000000 +1100
++++ linux-2.6.33-bfs/arch/powerpc/platforms/cell/spufs/sched.c	2010-04-25 15:33:47.448131977 +1000
 @@ -63,11 +63,6 @@ static struct timer_list spusched_timer;
  static struct timer_list spuloadavg_timer;
  
@@ -7737,10 +7736,10 @@
   * Frequency of the spu scheduler tick.  By default we do one SPU scheduler
   * tick for every 10 CPU scheduler ticks.
   */
-Index: linux-2.6.33-ck1/kernel/sched.c
+Index: linux-2.6.33-bfs/kernel/sched.c
 ===================================================================
---- linux-2.6.33-ck1.orig/kernel/sched.c	2010-02-25 21:51:52.852543979 +1100
-+++ linux-2.6.33-ck1/kernel/sched.c	2010-02-25 21:58:38.579793670 +1100
+--- linux-2.6.33-bfs.orig/kernel/sched.c	2010-02-25 21:51:52.000000000 +1100
++++ linux-2.6.33-bfs/kernel/sched.c	2010-04-25 15:33:47.451131623 +1000
 @@ -1,3 +1,6 @@
 +#ifdef CONFIG_SCHED_BFS
 +#include "sched_bfs.c"
@@ -7754,10 +7753,10 @@
  #endif /* #else #ifndef CONFIG_SMP */
 +#endif /* CONFIG_SCHED_BFS */
 \ No newline at end of file
-Index: linux-2.6.33-ck1/include/linux/ioprio.h
+Index: linux-2.6.33-bfs/include/linux/ioprio.h
 ===================================================================
---- linux-2.6.33-ck1.orig/include/linux/ioprio.h	2009-06-10 13:05:27.000000000 +1000
-+++ linux-2.6.33-ck1/include/linux/ioprio.h	2010-02-25 21:58:38.581793665 +1100
+--- linux-2.6.33-bfs.orig/include/linux/ioprio.h	2009-06-10 13:05:27.000000000 +1000
++++ linux-2.6.33-bfs/include/linux/ioprio.h	2010-04-25 15:33:47.453165456 +1000
 @@ -64,6 +64,8 @@ static inline int task_ioprio_class(stru
  
  static inline int task_nice_ioprio(struct task_struct *task)
@@ -7767,10 +7766,10 @@
  	return (task_nice(task) + 20) / 5;
  }
  
-Index: linux-2.6.33-ck1/kernel/kthread.c
+Index: linux-2.6.33-bfs/kernel/kthread.c
 ===================================================================
---- linux-2.6.33-ck1.orig/kernel/kthread.c	2010-02-25 21:51:52.825669066 +1100
-+++ linux-2.6.33-ck1/kernel/kthread.c	2010-02-25 21:58:38.581793665 +1100
+--- linux-2.6.33-bfs.orig/kernel/kthread.c	2010-02-25 21:51:52.000000000 +1100
++++ linux-2.6.33-bfs/kernel/kthread.c	2010-04-25 15:33:47.453165456 +1000
 @@ -167,7 +167,9 @@ void kthread_bind(struct task_struct *p,
  	}
  
@@ -7781,10 +7780,10 @@
  	p->flags |= PF_THREAD_BOUND;
  }
  EXPORT_SYMBOL(kthread_bind);
-Index: linux-2.6.33-ck1/kernel/slow-work.c
+Index: linux-2.6.33-bfs/kernel/slow-work.c
 ===================================================================
---- linux-2.6.33-ck1.orig/kernel/slow-work.c	2010-02-25 21:51:52.877852290 +1100
-+++ linux-2.6.33-ck1/kernel/slow-work.c	2010-02-25 21:58:38.582659109 +1100
+--- linux-2.6.33-bfs.orig/kernel/slow-work.c	2010-02-25 21:51:52.000000000 +1100
++++ linux-2.6.33-bfs/kernel/slow-work.c	2010-04-25 15:33:47.454256897 +1000
 @@ -716,7 +716,6 @@ static int slow_work_thread(void *_data)
  	DEFINE_WAIT(wait);
  
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/kernel-desktop/kernel-desktop-sched-bfs.patch?r1=1.1.2.16&r2=1.1.2.17&f=u



More information about the pld-cvs-commit mailing list