From: Linus Torvalds Date: Thu, 22 Mar 2012 16:28:15 +0000 (-0700) Subject: Merge branches 'x86-cpu-for-linus', 'x86-boot-for-linus', 'x86-cpufeature-for-linus... X-Git-Tag: v3.4-rc1~155 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c5c7fb8fbd7cd228132b6e2a17a10f246ffc06ee;p=platform%2Fkernel%2Flinux-stable.git Merge branches 'x86-cpu-for-linus', 'x86-boot-for-linus', 'x86-cpufeature-for-linus', 'x86-process-for-linus' and 'x86-uv-for-linus' of git://git./linux/kernel/git/tip/tip Pull trivial x86 branches from Ingo Molnar: small one-liners to fix up details. * 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: x86: Remove some noise from boot log when starting cpus * 'x86-boot-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: x86, boot: Fix port argument to inl() function * 'x86-cpufeature-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: x86, cpufeature: Add CPU features from Intel document 319433-012A * 'x86-process-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: x86_64: Record stack pointer before task execution begins * 'x86-uv-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: x86/UV: Lower UV rtc clocksource rating --- c5c7fb8fbd7cd228132b6e2a17a10f246ffc06ee diff --cc arch/x86/kernel/process_64.c index e34257c,1fd94bc,9b9fe4a,1fd94bc,eb54dd0,1fd94bc..442e7bf --- a/arch/x86/kernel/process_64.c +++ b/arch/x86/kernel/process_64.c @@@@@@@ -385,9 -386,9 -386,18 -386,9 -387,9 -386,9 +386,9 @@@@@@@ __switch_to(struct task_struct *prev_p int cpu = smp_processor_id(); struct tss_struct *tss = &per_cpu(init_tss, cpu); unsigned fsindex, gsindex; - bool preload_fpu; + fpu_switch_t fpu; - --- fpu = switch_fpu_prepare(prev_p, next_p); - /* - * If the task has used fpu the last 5 timeslices, just do a full - * restore of the math state immediately to avoid the trap; the - * chances of needing FPU soon are obviously high now - */ - preload_fpu = tsk_used_math(next_p) && next_p->fpu_counter > 5; - - /* we're going to use this soon, after a few expensive things */ - if (preload_fpu) - prefetch(next->fpu.state); +++++ fpu = switch_fpu_prepare(prev_p, next_p, cpu); /* * Reload esp0, LDT and the page table pointer: