aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Blechmann <tim@klingt.org>2009-12-02 12:32:10 +0100
committerIngo Molnar <mingo@elte.hu>2009-12-02 12:38:03 +0100
commitbe8147e68625a1adb111acfd6b98a492be4b74d0 (patch)
tree4920cc7a087d5cdda0da585c4cd2b209a2c9099f
parentbdddd2963c0264c56f18043f6fa829d3c1d3d1c0 (diff)
Revert "sched, x86: Optimize branch hint in __switch_to()"
This reverts commit a3a1de0c34de6f5f8332cd6151c46af7813c0fcb. Commit 8ec6993d9f7d961014af970ded57542961fe9ad9 cleared the es and ds selectors, so the original branch hints are correct now. Therefore the branch hint doesn't need to be removed. Signed-off-by: Tim Blechmann <tim@klingt.org> LKML-Reference: <4B16503A.8030508@klingt.org> Signed-off-by: Ingo Molnar <mingo@elte.hu>
-rw-r--r--arch/x86/kernel/process_64.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/x86/kernel/process_64.c b/arch/x86/kernel/process_64.c
index 93c501dc249..eb62cbcaa49 100644
--- a/arch/x86/kernel/process_64.c
+++ b/arch/x86/kernel/process_64.c
@@ -406,10 +406,11 @@ __switch_to(struct task_struct *prev_p, struct task_struct *next_p)
* This won't pick up thread selector changes, but I guess that is ok.
*/
savesegment(es, prev->es);
- if (next->es | prev->es)
+ if (unlikely(next->es | prev->es))
loadsegment(es, next->es);
+
savesegment(ds, prev->ds);
- if (next->ds | prev->ds)
+ if (unlikely(next->ds | prev->ds))
loadsegment(ds, next->ds);