[parisc-linux] [PATCH] timer_interrupt and gettimeoffset.

Grant Grundler grundler at parisc-linux.org
Tue Sep 5 16:49:02 MDT 2006


On Tue, Sep 05, 2006 at 10:53:34AM -0500, James Bottomley wrote:
> On Mon, 2006-09-04 at 23:12 -0600, Grant Grundler wrote:
> > > I'm still concerned that we may take a TLB exception in this code
> > > and substantially increase the calculation time.
> > 
> > Hrm...what would cause a TLB exception in timer_interrupt?
> > Accessing a global var?
> 
> A TLB miss could be caused by either code or data ... we only have a few
> hundred entries, so the chances of the timer_interrupt code or data
> being not in the TLB cache are high.

If we only have one TLB entry for kernel text (code), we should
never have a miss because of code accesses. I thought that was
the case but don't know for sure. ISTR some discussion about
use of BTLB (PA1.1) and Large Pages (PA 2.0) hardwired for kernel.

Kernel data would probably benefit too.

> However, the TLB miss handling code is pretty speedy ... we can
> certainly fill a TLB entry in around 20 instructions on the fast path.

Add trap latency (e.g. sync/RFI) and it's still pretty small (not more
than "hundreds" of cycles.  I'm worried about orders of magnitutude
bigger latencies.

thanks,
grant



More information about the parisc-linux mailing list