From bd0a20132917253c0c61d4f122df872c0cab93b4 Mon Sep 17 00:00:00 2001 From: Tim Blechmann Date: Wed, 2 Dec 2009 12:32:10 +0100 Subject: [PATCH] --- yaml --- r: 169916 b: refs/heads/master c: be8147e68625a1adb111acfd6b98a492be4b74d0 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/arch/x86/kernel/process_64.c | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index f51cac1da26f..65bc4a30798b 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: bdddd2963c0264c56f18043f6fa829d3c1d3d1c0 +refs/heads/master: be8147e68625a1adb111acfd6b98a492be4b74d0 diff --git a/trunk/arch/x86/kernel/process_64.c b/trunk/arch/x86/kernel/process_64.c index 93c501dc2496..eb62cbcaa490 100644 --- a/trunk/arch/x86/kernel/process_64.c +++ b/trunk/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);