Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 25 Nov 1996 10:05:58 -0700
From:      Steve Passe <smp@csn.net>
To:        Peter Wemm <peter@spinner.dialix.com>
Cc:        Poul-Henning Kamp <phk@critter.tfs.com>, freebsd-smp@freebsd.org
Subject:   Re: cvs commit: sys/i386/i386 locore.s swtch.s sys/i386/include  pmap.h 
Message-ID:  <199611251705.KAA01825@clem.systemsix.com>
In-Reply-To: Your message of "Mon, 25 Nov 1996 09:45:51 MST." <199611251645.JAA01693@clem.systemsix.com> 

next in thread | previous in thread | raw e-mail | index | archive | help
Hi,

> > Going this way eliminates (for each reference to curproc):
> ...
> I thought of a shortcut for this awhile back but never tried it.  Any code that
> is running inside the kernel and currently has the lock could skip this and
> determine which cpu it is with:
> 
> #define LOCKED_CPUNUM()		((mp_lock & 0x0f000000) >> 24)
> 
> you still have the shift, but the APIC access is eliminated.
gotto have my first cup of coffee b4 trying to think.  This is not quite right,
still need the phyToLog indirection, the mplock uses physical CPU#.  But it
does eliminate the APIC access, the most expensive part of the current call.

--
Steve Passe	| powered by
smp@csn.net	|            FreeBSD




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