aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2015-04-23 07:20:18 -0400
committerPaolo Bonzini <pbonzini@redhat.com>2015-04-27 09:49:30 -0400
commit73459e2a1ada09a68c02cc5b73f3116fc8194b3d (patch)
tree2d85beb72d2ee970926f65554099764e2cdc1f9c /include
parent5dca0d9147458be9b9363b8a484aa77d710b412a (diff)
x86: pvclock: Really remove the sched notifier for cross-cpu migrations
This reverts commits 0a4e6be9ca17c54817cf814b4b5aa60478c6df27 and 80f7fdb1c7f0f9266421f823964fd1962681f6ce. The task migration notifier was originally introduced in order to support the pvclock vsyscall with non-synchronized TSC, but KVM only supports it with synchronized TSC. Hence, on KVM the race condition is only needed due to a bad implementation on the host side, and even then it's so rare that it's mostly theoretical. As far as KVM is concerned it's possible to fix the host, avoiding the additional complexity in the vDSO and the (re)introduction of the task migration notifier. Xen, on the other hand, hasn't yet implemented vsyscall support at all, so we do not care about its plans for non-synchronized TSC. Reported-by: Peter Zijlstra <peterz@infradead.org> Suggested-by: Marcelo Tosatti <mtosatti@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/sched.h8
1 files changed, 0 insertions, 8 deletions
diff --git a/include/linux/sched.h b/include/linux/sched.h
index 8222ae40ecb0..26a2e6122734 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -175,14 +175,6 @@ extern void get_iowait_load(unsigned long *nr_waiters, unsigned long *load);
175extern void calc_global_load(unsigned long ticks); 175extern void calc_global_load(unsigned long ticks);
176extern void update_cpu_load_nohz(void); 176extern void update_cpu_load_nohz(void);
177 177
178/* Notifier for when a task gets migrated to a new CPU */
179struct task_migration_notifier {
180 struct task_struct *task;
181 int from_cpu;
182 int to_cpu;
183};
184extern void register_task_migration_notifier(struct notifier_block *n);
185
186extern unsigned long get_parent_ip(unsigned long addr); 178extern unsigned long get_parent_ip(unsigned long addr);
187 179
188extern void dump_cpu_task(int cpu); 180extern void dump_cpu_task(int cpu);