lkml.org 
[lkml]   [2008]   [Apr]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 1/1] x86: fix text_poke


On Fri, 25 Apr 2008, Ingo Molnar wrote:
>
> text_poke() itself only applies/unapplies the LOCK prefix - a single
> byte. We shouldnt be doing that at all: the cost of LOCK is
> insignificant (a few cycles) and most systems are SMP anyway.

No, the cost of LOCK is quite high on a lot of systems.

On P4's in particular, since LOCK is serializing, it's about 140 cycles or
so (and breaks all speculation). So we definitely want to remove it for
any generic kernels.

(lock is fairly cheap on AMD K8's, and reportedly on Intel's upcoming
Nehalem too, but on Core 2 it's about 35 cycles - quite noticeable,
although not nearly the disaster that netburst is)

Oh, and text_poke() is also used for inserting the debug instruction for
kprobes (and restoring the original byte), but yes, that is always just a
single byte too.

Linus


\
 
 \ /
  Last update: 2008-04-25 18:17    [from the cache]
©2003-2011 Jasper Spaans