aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/hrtimer.h12
-rw-r--r--include/linux/ide.h1
-rw-r--r--include/linux/ktime.h4
-rw-r--r--include/linux/sched.h15
-rw-r--r--include/linux/topology.h2
5 files changed, 19 insertions, 15 deletions
diff --git a/include/linux/hrtimer.h b/include/linux/hrtimer.h
index cf5cfdf8d613..089bfb1fa01a 100644
--- a/include/linux/hrtimer.h
+++ b/include/linux/hrtimer.h
@@ -49,8 +49,6 @@ struct hrtimer_base;
49 * struct hrtimer - the basic hrtimer structure 49 * struct hrtimer - the basic hrtimer structure
50 * 50 *
51 * @node: red black tree node for time ordered insertion 51 * @node: red black tree node for time ordered insertion
52 * @list: list head for easier access to the time ordered list,
53 * without walking the red black tree.
54 * @expires: the absolute expiry time in the hrtimers internal 52 * @expires: the absolute expiry time in the hrtimers internal
55 * representation. The time is related to the clock on 53 * representation. The time is related to the clock on
56 * which the timer is based. 54 * which the timer is based.
@@ -63,7 +61,6 @@ struct hrtimer_base;
63 */ 61 */
64struct hrtimer { 62struct hrtimer {
65 struct rb_node node; 63 struct rb_node node;
66 struct list_head list;
67 ktime_t expires; 64 ktime_t expires;
68 enum hrtimer_state state; 65 enum hrtimer_state state;
69 int (*function)(void *); 66 int (*function)(void *);
@@ -78,7 +75,7 @@ struct hrtimer {
78 * to a base on another cpu. 75 * to a base on another cpu.
79 * @lock: lock protecting the base and associated timers 76 * @lock: lock protecting the base and associated timers
80 * @active: red black tree root node for the active timers 77 * @active: red black tree root node for the active timers
81 * @pending: list of pending timers for simple time ordered access 78 * @first: pointer to the timer node which expires first
82 * @resolution: the resolution of the clock, in nanoseconds 79 * @resolution: the resolution of the clock, in nanoseconds
83 * @get_time: function to retrieve the current time of the clock 80 * @get_time: function to retrieve the current time of the clock
84 * @curr_timer: the timer which is executing a callback right now 81 * @curr_timer: the timer which is executing a callback right now
@@ -87,8 +84,8 @@ struct hrtimer_base {
87 clockid_t index; 84 clockid_t index;
88 spinlock_t lock; 85 spinlock_t lock;
89 struct rb_root active; 86 struct rb_root active;
90 struct list_head pending; 87 struct rb_node *first;
91 unsigned long resolution; 88 ktime_t resolution;
92 ktime_t (*get_time)(void); 89 ktime_t (*get_time)(void);
93 struct hrtimer *curr_timer; 90 struct hrtimer *curr_timer;
94}; 91};
@@ -125,8 +122,7 @@ static inline int hrtimer_active(const struct hrtimer *timer)
125} 122}
126 123
127/* Forward a hrtimer so it expires after now: */ 124/* Forward a hrtimer so it expires after now: */
128extern unsigned long hrtimer_forward(struct hrtimer *timer, 125extern unsigned long hrtimer_forward(struct hrtimer *timer, ktime_t interval);
129 const ktime_t interval);
130 126
131/* Precise sleep: */ 127/* Precise sleep: */
132extern long hrtimer_nanosleep(struct timespec *rqtp, 128extern long hrtimer_nanosleep(struct timespec *rqtp,
diff --git a/include/linux/ide.h b/include/linux/ide.h
index 9a8c05dbe4f3..f2e1b5b22898 100644
--- a/include/linux/ide.h
+++ b/include/linux/ide.h
@@ -1002,7 +1002,6 @@ extern int noautodma;
1002 1002
1003extern int ide_end_request (ide_drive_t *drive, int uptodate, int nrsecs); 1003extern int ide_end_request (ide_drive_t *drive, int uptodate, int nrsecs);
1004extern int __ide_end_request (ide_drive_t *drive, struct request *rq, int uptodate, int nrsecs); 1004extern int __ide_end_request (ide_drive_t *drive, struct request *rq, int uptodate, int nrsecs);
1005extern void ide_softirq_done(struct request *rq);
1006 1005
1007/* 1006/*
1008 * This is used on exit from the driver to designate the next irq handler 1007 * This is used on exit from the driver to designate the next irq handler
diff --git a/include/linux/ktime.h b/include/linux/ktime.h
index 222a047cc145..1bd6552cc341 100644
--- a/include/linux/ktime.h
+++ b/include/linux/ktime.h
@@ -272,8 +272,8 @@ static inline u64 ktime_to_ns(const ktime_t kt)
272 * idea of the (in)accuracy of timers. Timer values are rounded up to 272 * idea of the (in)accuracy of timers. Timer values are rounded up to
273 * this resolution values. 273 * this resolution values.
274 */ 274 */
275#define KTIME_REALTIME_RES (NSEC_PER_SEC/HZ) 275#define KTIME_REALTIME_RES (ktime_t){ .tv64 = TICK_NSEC }
276#define KTIME_MONOTONIC_RES (NSEC_PER_SEC/HZ) 276#define KTIME_MONOTONIC_RES (ktime_t){ .tv64 = TICK_NSEC }
277 277
278/* Get the monotonic time in timespec format: */ 278/* Get the monotonic time in timespec format: */
279extern void ktime_get_ts(struct timespec *ts); 279extern void ktime_get_ts(struct timespec *ts);
diff --git a/include/linux/sched.h b/include/linux/sched.h
index 3b74c4bf2934..a72e17135421 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -631,7 +631,14 @@ struct sched_domain {
631 631
632extern void partition_sched_domains(cpumask_t *partition1, 632extern void partition_sched_domains(cpumask_t *partition1,
633 cpumask_t *partition2); 633 cpumask_t *partition2);
634#endif /* CONFIG_SMP */ 634
635/*
636 * Maximum cache size the migration-costs auto-tuning code will
637 * search from:
638 */
639extern unsigned int max_cache_size;
640
641#endif /* CONFIG_SMP */
635 642
636 643
637struct io_context; /* See blkdev.h */ 644struct io_context; /* See blkdev.h */
@@ -689,9 +696,12 @@ struct task_struct {
689 696
690 int lock_depth; /* BKL lock depth */ 697 int lock_depth; /* BKL lock depth */
691 698
692#if defined(CONFIG_SMP) && defined(__ARCH_WANT_UNLOCKED_CTXSW) 699#if defined(CONFIG_SMP)
700 int last_waker_cpu; /* CPU that last woke this task up */
701#if defined(__ARCH_WANT_UNLOCKED_CTXSW)
693 int oncpu; 702 int oncpu;
694#endif 703#endif
704#endif
695 int prio, static_prio; 705 int prio, static_prio;
696 struct list_head run_list; 706 struct list_head run_list;
697 prio_array_t *array; 707 prio_array_t *array;
@@ -1230,6 +1240,7 @@ static inline void task_unlock(struct task_struct *p)
1230#ifndef __HAVE_THREAD_FUNCTIONS 1240#ifndef __HAVE_THREAD_FUNCTIONS
1231 1241
1232#define task_thread_info(task) (task)->thread_info 1242#define task_thread_info(task) (task)->thread_info
1243#define task_stack_page(task) ((void*)((task)->thread_info))
1233 1244
1234static inline void setup_thread_stack(struct task_struct *p, struct task_struct *org) 1245static inline void setup_thread_stack(struct task_struct *p, struct task_struct *org)
1235{ 1246{
diff --git a/include/linux/topology.h b/include/linux/topology.h
index 3df1d474e5c5..315a5163d6a0 100644
--- a/include/linux/topology.h
+++ b/include/linux/topology.h
@@ -86,7 +86,6 @@
86 .max_interval = 2, \ 86 .max_interval = 2, \
87 .busy_factor = 8, \ 87 .busy_factor = 8, \
88 .imbalance_pct = 110, \ 88 .imbalance_pct = 110, \
89 .cache_hot_time = 0, \
90 .cache_nice_tries = 0, \ 89 .cache_nice_tries = 0, \
91 .per_cpu_gain = 25, \ 90 .per_cpu_gain = 25, \
92 .busy_idx = 0, \ 91 .busy_idx = 0, \
@@ -117,7 +116,6 @@
117 .max_interval = 4, \ 116 .max_interval = 4, \
118 .busy_factor = 64, \ 117 .busy_factor = 64, \
119 .imbalance_pct = 125, \ 118 .imbalance_pct = 125, \
120 .cache_hot_time = (5*1000000/2), \
121 .cache_nice_tries = 1, \ 119 .cache_nice_tries = 1, \
122 .per_cpu_gain = 100, \ 120 .per_cpu_gain = 100, \
123 .busy_idx = 2, \ 121 .busy_idx = 2, \