aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/sched.h
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2010-02-08 02:55:43 -0500
committerIngo Molnar <mingo@elte.hu>2010-02-08 02:55:46 -0500
commit6d3e0907b8b239d16720d144e2675ecf10d3bc3b (patch)
treee0b0743b5f6f82b057cafc4f3687396a6e01a0b4 /include/linux/sched.h
parent23577256953c870de9b724c3a2611ce7be6a1e4e (diff)
parent50200df462023b187d80a99a52f5f2cfe3c86c26 (diff)
Merge branch 'sched/urgent' into sched/core
Merge reason: Merge dependent fix, update to latest -rc. Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'include/linux/sched.h')
-rw-r--r--include/linux/sched.h35
1 files changed, 32 insertions, 3 deletions
diff --git a/include/linux/sched.h b/include/linux/sched.h
index b35c0c7130c8..b1b8d84c5805 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -310,6 +310,7 @@ extern void sched_show_task(struct task_struct *p);
310#ifdef CONFIG_DETECT_SOFTLOCKUP 310#ifdef CONFIG_DETECT_SOFTLOCKUP
311extern void softlockup_tick(void); 311extern void softlockup_tick(void);
312extern void touch_softlockup_watchdog(void); 312extern void touch_softlockup_watchdog(void);
313extern void touch_softlockup_watchdog_sync(void);
313extern void touch_all_softlockup_watchdogs(void); 314extern void touch_all_softlockup_watchdogs(void);
314extern int proc_dosoftlockup_thresh(struct ctl_table *table, int write, 315extern int proc_dosoftlockup_thresh(struct ctl_table *table, int write,
315 void __user *buffer, 316 void __user *buffer,
@@ -323,6 +324,9 @@ static inline void softlockup_tick(void)
323static inline void touch_softlockup_watchdog(void) 324static inline void touch_softlockup_watchdog(void)
324{ 325{
325} 326}
327static inline void touch_softlockup_watchdog_sync(void)
328{
329}
326static inline void touch_all_softlockup_watchdogs(void) 330static inline void touch_all_softlockup_watchdogs(void)
327{ 331{
328} 332}
@@ -377,6 +381,8 @@ extern int sysctl_max_map_count;
377 381
378#include <linux/aio.h> 382#include <linux/aio.h>
379 383
384#ifdef CONFIG_MMU
385extern void arch_pick_mmap_layout(struct mm_struct *mm);
380extern unsigned long 386extern unsigned long
381arch_get_unmapped_area(struct file *, unsigned long, unsigned long, 387arch_get_unmapped_area(struct file *, unsigned long, unsigned long,
382 unsigned long, unsigned long); 388 unsigned long, unsigned long);
@@ -386,6 +392,9 @@ arch_get_unmapped_area_topdown(struct file *filp, unsigned long addr,
386 unsigned long flags); 392 unsigned long flags);
387extern void arch_unmap_area(struct mm_struct *, unsigned long); 393extern void arch_unmap_area(struct mm_struct *, unsigned long);
388extern void arch_unmap_area_topdown(struct mm_struct *, unsigned long); 394extern void arch_unmap_area_topdown(struct mm_struct *, unsigned long);
395#else
396static inline void arch_pick_mmap_layout(struct mm_struct *mm) {}
397#endif
389 398
390#if USE_SPLIT_PTLOCKS 399#if USE_SPLIT_PTLOCKS
391/* 400/*
@@ -1349,7 +1358,7 @@ struct task_struct {
1349 char comm[TASK_COMM_LEN]; /* executable name excluding path 1358 char comm[TASK_COMM_LEN]; /* executable name excluding path
1350 - access with [gs]et_task_comm (which lock 1359 - access with [gs]et_task_comm (which lock
1351 it with task_lock()) 1360 it with task_lock())
1352 - initialized normally by flush_old_exec */ 1361 - initialized normally by setup_new_exec */
1353/* file system info */ 1362/* file system info */
1354 int link_count, total_link_count; 1363 int link_count, total_link_count;
1355#ifdef CONFIG_SYSVIPC 1364#ifdef CONFIG_SYSVIPC
@@ -2476,8 +2485,6 @@ static inline void set_task_cpu(struct task_struct *p, unsigned int cpu)
2476 2485
2477#endif /* CONFIG_SMP */ 2486#endif /* CONFIG_SMP */
2478 2487
2479extern void arch_pick_mmap_layout(struct mm_struct *mm);
2480
2481#ifdef CONFIG_TRACING 2488#ifdef CONFIG_TRACING
2482extern void 2489extern void
2483__trace_special(void *__tr, void *__data, 2490__trace_special(void *__tr, void *__data,
@@ -2582,6 +2589,28 @@ static inline void mm_init_owner(struct mm_struct *mm, struct task_struct *p)
2582} 2589}
2583#endif /* CONFIG_MM_OWNER */ 2590#endif /* CONFIG_MM_OWNER */
2584 2591
2592static inline unsigned long task_rlimit(const struct task_struct *tsk,
2593 unsigned int limit)
2594{
2595 return ACCESS_ONCE(tsk->signal->rlim[limit].rlim_cur);
2596}
2597
2598static inline unsigned long task_rlimit_max(const struct task_struct *tsk,
2599 unsigned int limit)
2600{
2601 return ACCESS_ONCE(tsk->signal->rlim[limit].rlim_max);
2602}
2603
2604static inline unsigned long rlimit(unsigned int limit)
2605{
2606 return task_rlimit(current, limit);
2607}
2608
2609static inline unsigned long rlimit_max(unsigned int limit)
2610{
2611 return task_rlimit_max(current, limit);
2612}
2613
2585#endif /* __KERNEL__ */ 2614#endif /* __KERNEL__ */
2586 2615
2587#endif 2616#endif