From owner-freebsd-smp Sun Dec 15 02:05:40 1996 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.4/8.8.4) id CAA13610 for smp-outgoing; Sun, 15 Dec 1996 02:05:40 -0800 (PST) Received: from spinner.DIALix.COM (root@spinner.DIALix.COM [192.203.228.67]) by freefall.freebsd.org (8.8.4/8.8.4) with ESMTP id CAA13517; Sun, 15 Dec 1996 02:05:04 -0800 (PST) Received: from spinner.DIALix.COM (peter@localhost.DIALix.oz.au [127.0.0.1]) by spinner.DIALix.COM (8.8.4/8.8.4) with ESMTP id SAA14741; Sun, 15 Dec 1996 18:03:18 +0800 (WST) Message-Id: <199612151003.SAA14741@spinner.DIALix.COM> To: Poul-Henning Kamp cc: dyson@freebsd.org, smp@freebsd.org, haertel@ichips.intel.com Subject: Re: some questions concerning TLB shootdowns in FreeBSD In-reply-to: Your message of "Sun, 15 Dec 1996 10:13:27 +0100." <9092.850641207@critter.tfs.com> Date: Sun, 15 Dec 1996 18:03:16 +0800 From: Peter Wemm Sender: owner-smp@freebsd.org X-Loop: FreeBSD.org Precedence: bulk Poul-Henning Kamp wrote: > In message <199612150121.JAA12763@spinner.DIALix.COM>, Peter Wemm writes: > > >However, the shared address space code that I was working on in > >-current (for kernel assisted threading in the smp kernel) means > >that a single vmspace/pmap/etc can be shared among multiple processes > >and this changes the above picture since two cpu's can be using > >the user mode parts of the same page tables at once, one in executing > >in user mode, one in the kernel. > > But we could still have a per-cpu flags: > "I'm not in a shared address-space" > > Ie, this would only be set if the CPU was in userland in a non-threaded > process. eg, something like: if (is_userland && curproc->p_vmspace->vm_refcnt > 1) send_tlb_invalidate(); Cheers, -Peter