From: Tim Blechmann Date: Wed, 2 Dec 2009 11:32:10 +0000 (+0100) Subject: Revert "sched, x86: Optimize branch hint in __switch_to()" X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=be8147e68625a1adb111acfd6b98a492be4b74d0;p=openwrt%2Fstaging%2Fblogic.git 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 LKML-Reference: <4B16503A.8030508@klingt.org> Signed-off-by: Ingo Molnar --- diff --git a/arch/x86/kernel/process_64.c b/arch/x86/kernel/process_64.c index 93c501dc2496..eb62cbcaa490 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);