Date: Thu, 10 May 2001 08:52:25 -0700 (PDT) From: John Baldwin <jhb@FreeBSD.org> To: Doug Rabson <dfr@nlsystems.com> Cc: smp@FreeBSD.org Subject: RE: smp_rendezvous Message-ID: <XFMail.010510085225.jhb@FreeBSD.org> In-Reply-To: <Pine.BSF.4.33.0105101510240.74952-100000@herring.nlsystems.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 10-May-01 Doug Rabson wrote: > It would be really useful to be able to use smp_rendezvous in both UP and > SMP kernels. The particular context I would like it for is in the AGP > driver. When the AGP driver changes the contents of the AGP aperture, it > needs to flush the processor caches (since it is changing the physical > memory map). Obviously it needs to flush all the processors in an SMP > system and the simplest way to do this is a rendezvous. > > Of course I could make the cache flushing conditional but that makes it > more difficult to compile it as a loadable module since we would like > loadable code to be SMP-agnostic. For TLB invalidates on the i386 we redefine the invltlb() to use a rendezvous in the SMP case. A solution for this case might be for the kernel to provide a cpu_cacheflush() or somesuch that DTRT in both the UP and SMP cases. This also keeps the agp driver from growing a large #ifdef of MD code in it's cache flush function. -- John Baldwin <jhb@FreeBSD.org> -- http://www.FreeBSD.org/~jhb/ PGP Key: http://www.baldwin.cx/~john/pgpkey.asc "Power Users Use the Power to Serve!" - http://www.FreeBSD.org/ To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-smp" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?XFMail.010510085225.jhb>