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>