[lkml]   [2008]   [Dec]   [31]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Patch in this message
Subject[patch] x86: Fix incorrect __read_mostly on _boot_cpu_pda
The pda rework (commit 3461b0af025251bbc6b3d56c821c6ac2de6f7209)
to remove static boot cpu pdas introduced a bug. _boot_cpu_pda is the
actual pda used by the boot cpu and is definitely not "__read_mostly" and
ended up polluting the read mostly section with writes. This bug caused
regression of about 8-10% on certain syscall intensive workloads.

Signed-off-by: Ravikiran Thirumalai <>

Index: linux-2.6/arch/x86/kernel/head64.c
--- linux-2.6.orig/arch/x86/kernel/head64.c 2008-12-30 15:28:08.000000000 -0800
+++ linux-2.6/arch/x86/kernel/head64.c 2008-12-31 10:36:21.000000000 -0800
@@ -27,7 +27,7 @@
#include <asm/trampoline.h>

/* boot cpu pda */
-static struct x8664_pda _boot_cpu_pda __read_mostly;
+static struct x8664_pda _boot_cpu_pda;


 \ /
  Last update: 2008-12-31 23:25    [W:0.031 / U:34.616 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site