Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 7 May 1997 13:26:09 -0400
From:      "David S. Miller" <davem@jenolan.rutgers.edu>
To:        terry@lambert.org
Cc:        steve@visint.co.uk, terry@lambert.org, freebsd-smp@FreeBSD.ORG
Subject:   Re: Where to start SMP?
Message-ID:  <199705071726.NAA05360@jenolan.caipgeneral>
In-Reply-To: <199705071704.KAA21345@phaeton.artisoft.com> (message from Terry Lambert on Wed, 7 May 1997 10:04:01 -0700 (MST))

next in thread | previous in thread | raw e-mail | index | archive | help
   From: Terry Lambert <terry@lambert.org>
   Date: Wed, 7 May 1997 10:04:01 -0700 (MST)

   Depends on whether the options are set with negative or positive
   logic, and at what level they are wired in.  Best case, they cause
   the use of different contents of an existing function pointer and
   are set at boot time.  Worst case, they are an extra compare and
   branch in a path.

Wrong, best case they use self modifying code so there is zero cost.
Each call really points to a patch function, which takes the return
address and patches that call instruction to actually call the locking
function for the desired MODE.  Therefore you eat the relocation cost
once per code path, it essentially dynamically links itself at run
time.

Come on Terry, read the friggin' paper before becoming an instant
expert on how to do these things...

---------------------------------------------////
Yow! 11.26 MB/s remote host TCP bandwidth & ////
199 usec remote TCP latency over 100Mb/s   ////
ethernet.  Beat that!                     ////
-----------------------------------------////__________  o
David S. Miller, davem@caip.rutgers.edu /_____________/ / // /_/ ><



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199705071726.NAA05360>