diff options
author | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-11-09 18:27:54 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-11-09 18:27:54 -0500 |
commit | a70a93229943c177f0062490b4f8e44be4cef685 (patch) | |
tree | 24cc6f087307f18cda2f55ad91c7649dd5388b86 /include | |
parent | a80b824f0b63fa3a8c269903828beb0837d738e7 (diff) | |
parent | e6fe6649b4ec11aa3075e394b4d8743eebe1f64c (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched
* git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched:
sched: proper prototype for kernel/sched.c:migration_init()
sched: avoid large irq-latencies in smp-balancing
sched: fix copy_namespace() <-> sched_fork() dependency in do_fork
sched: clean up the wakeup preempt check, #2
sched: clean up the wakeup preempt check
sched: wakeup preemption fix
sched: remove PREEMPT_RESTRICT
sched: turn off PREEMPT_RESTRICT
KVM: fix !SMP build error
x86: make nmi_cpu_busy() always defined
x86: make ipi_handler() always defined
sched: cleanup, use NSEC_PER_MSEC and NSEC_PER_SEC
sched: reintroduce SMP tunings again
sched: restore deterministic CPU accounting on powerpc
sched: fix delay accounting regression
sched: reintroduce the sched_min_granularity tunable
sched: documentation: place_entity() comments
sched: fix vslice
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/sched.h | 17 | ||||
-rw-r--r-- | include/linux/smp.h | 7 |
2 files changed, 20 insertions, 4 deletions
diff --git a/include/linux/sched.h b/include/linux/sched.h index 155d7438f7ad..ee800e7a70de 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h | |||
@@ -254,6 +254,7 @@ long io_schedule_timeout(long timeout); | |||
254 | 254 | ||
255 | extern void cpu_init (void); | 255 | extern void cpu_init (void); |
256 | extern void trap_init(void); | 256 | extern void trap_init(void); |
257 | extern void account_process_tick(struct task_struct *task, int user); | ||
257 | extern void update_process_times(int user); | 258 | extern void update_process_times(int user); |
258 | extern void scheduler_tick(void); | 259 | extern void scheduler_tick(void); |
259 | 260 | ||
@@ -862,7 +863,6 @@ struct sched_entity { | |||
862 | struct load_weight load; /* for load-balancing */ | 863 | struct load_weight load; /* for load-balancing */ |
863 | struct rb_node run_node; | 864 | struct rb_node run_node; |
864 | unsigned int on_rq; | 865 | unsigned int on_rq; |
865 | int peer_preempt; | ||
866 | 866 | ||
867 | u64 exec_start; | 867 | u64 exec_start; |
868 | u64 sum_exec_runtime; | 868 | u64 sum_exec_runtime; |
@@ -1460,12 +1460,17 @@ extern void sched_idle_next(void); | |||
1460 | 1460 | ||
1461 | #ifdef CONFIG_SCHED_DEBUG | 1461 | #ifdef CONFIG_SCHED_DEBUG |
1462 | extern unsigned int sysctl_sched_latency; | 1462 | extern unsigned int sysctl_sched_latency; |
1463 | extern unsigned int sysctl_sched_nr_latency; | 1463 | extern unsigned int sysctl_sched_min_granularity; |
1464 | extern unsigned int sysctl_sched_wakeup_granularity; | 1464 | extern unsigned int sysctl_sched_wakeup_granularity; |
1465 | extern unsigned int sysctl_sched_batch_wakeup_granularity; | 1465 | extern unsigned int sysctl_sched_batch_wakeup_granularity; |
1466 | extern unsigned int sysctl_sched_child_runs_first; | 1466 | extern unsigned int sysctl_sched_child_runs_first; |
1467 | extern unsigned int sysctl_sched_features; | 1467 | extern unsigned int sysctl_sched_features; |
1468 | extern unsigned int sysctl_sched_migration_cost; | 1468 | extern unsigned int sysctl_sched_migration_cost; |
1469 | extern unsigned int sysctl_sched_nr_migrate; | ||
1470 | |||
1471 | int sched_nr_latency_handler(struct ctl_table *table, int write, | ||
1472 | struct file *file, void __user *buffer, size_t *length, | ||
1473 | loff_t *ppos); | ||
1469 | #endif | 1474 | #endif |
1470 | 1475 | ||
1471 | extern unsigned int sysctl_sched_compat_yield; | 1476 | extern unsigned int sysctl_sched_compat_yield; |
@@ -1983,6 +1988,14 @@ static inline void inc_syscw(struct task_struct *tsk) | |||
1983 | } | 1988 | } |
1984 | #endif | 1989 | #endif |
1985 | 1990 | ||
1991 | #ifdef CONFIG_SMP | ||
1992 | void migration_init(void); | ||
1993 | #else | ||
1994 | static inline void migration_init(void) | ||
1995 | { | ||
1996 | } | ||
1997 | #endif | ||
1998 | |||
1986 | #endif /* __KERNEL__ */ | 1999 | #endif /* __KERNEL__ */ |
1987 | 2000 | ||
1988 | #endif | 2001 | #endif |
diff --git a/include/linux/smp.h b/include/linux/smp.h index 259a13c3bd98..c25e66bcecf3 100644 --- a/include/linux/smp.h +++ b/include/linux/smp.h | |||
@@ -84,11 +84,12 @@ void smp_prepare_boot_cpu(void); | |||
84 | * These macros fold the SMP functionality into a single CPU system | 84 | * These macros fold the SMP functionality into a single CPU system |
85 | */ | 85 | */ |
86 | #define raw_smp_processor_id() 0 | 86 | #define raw_smp_processor_id() 0 |
87 | static inline int up_smp_call_function(void) | 87 | static inline int up_smp_call_function(void (*func)(void *), void *info) |
88 | { | 88 | { |
89 | return 0; | 89 | return 0; |
90 | } | 90 | } |
91 | #define smp_call_function(func,info,retry,wait) (up_smp_call_function()) | 91 | #define smp_call_function(func, info, retry, wait) \ |
92 | (up_smp_call_function(func, info)) | ||
92 | #define on_each_cpu(func,info,retry,wait) \ | 93 | #define on_each_cpu(func,info,retry,wait) \ |
93 | ({ \ | 94 | ({ \ |
94 | local_irq_disable(); \ | 95 | local_irq_disable(); \ |
@@ -107,6 +108,8 @@ static inline void smp_send_reschedule(int cpu) { } | |||
107 | local_irq_enable(); \ | 108 | local_irq_enable(); \ |
108 | 0; \ | 109 | 0; \ |
109 | }) | 110 | }) |
111 | #define smp_call_function_mask(mask, func, info, wait) \ | ||
112 | (up_smp_call_function(func, info)) | ||
110 | 113 | ||
111 | #endif /* !SMP */ | 114 | #endif /* !SMP */ |
112 | 115 | ||