Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 04 Dec 1996 19:03:39 +0800
From:      Peter Wemm <peter@spinner.dialix.com>
To:        "J.M. Chuang" <smp@bluenose.na.tuns.ca>
Cc:        smp@freebsd.org
Subject:   Re: cvs commit: sys/i386/conf options.i386 
Message-ID:  <199612041103.TAA04123@spinner.DIALix.COM>
In-Reply-To: Your message of "Tue, 03 Dec 1996 23:46:44 -0400." <199612040346.XAA15194@bluenose.na.tuns.ca> 

next in thread | previous in thread | raw e-mail | index | archive | help
"J.M. Chuang" wrote:
> > >   Modified:    i386/conf  options.i386
> > >   Log:
> > >   list SMP_INVLTLB as "should be working"
> > 
> > Incidently, I'd appreciate hearing if this works for other people
> > as well.  If this works as I suspect it does, it will dramatically
> > reduce the chances of filesystem and process memory corruption due
> > to page stealing and should be a major reliability improvement.
> > 
> No more coredump for IDE with options SMP_INVLTLB. Great Work!

Hey, wow!  This is an unexpected bonus!  I never expected this to be
a side effect, but now that I think about it, it makes sense.  The
SCSI system generally uses bus-mastering to send the data directly
to the destination physical address, while the IDE driver maps the
target page into KVM and does PIO to write it.  And since it's changing
mappings, it would be very vulnerable to stale tlb data.

The remaining problem is that we are currently doing way too many global
invltlb() calls.  John Dyson has already indicated that we can be a lot
more selective about which ones we propagate to other cpus.

Right now, I can see the IPI's (which show up as "irq0" interrupts on
systat -vmstat) peaking in the 2000+ per second range which is rather
excessive..  This is a performance problem, not a reliability one.

> Jim

Cheers,
-Peter



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