Date: Thu, 23 Nov 2006 15:09:08 +0800 From: David Xu <davidxu@freebsd.org> To: Bruce Evans <bde@zeta.org.au> Cc: arch@freebsd.org, Kip Macy <kip.macy@gmail.com>, Alan Cox <alc@cs.rice.edu>, freebsd-arch@freebsd.org Subject: Re: superpage plans Message-ID: <200611231509.08742.davidxu@freebsd.org> In-Reply-To: <200611231453.34287.davidxu@freebsd.org> References: <b1fa29170611220939g32469638ncf3a3ddd4bba3670@mail.gmail.com> <20061123170941.T36132@delplex.bde.org> <200611231453.34287.davidxu@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thursday 23 November 2006 14:53, David Xu wrote: > Do you really believe IPI_PREEMPTION works as expected ? the problem > is in sched_4bsd.c, the remote cpu running an idle cpu is only > interrupted by IPI_AST not IPI_PREEMPT, IPI_AST has no effect for kernel > thread, note that kick_other_cpu is only used for bound thread which is > being resumed, kick_other_cpu does send IPI_PREEMPT, though pagezero > thread is a bound thread in most time, but it is not the case that > kick_other_cpu will be used, we want to preempt it not resuem it, so > PREEMPTION and IPI_PREEPMTION do not work for pagezero thread running > on remote cpu. > > David Xu the above may not be very clear. The forward_wakeup only selects idle cpu, so a thread is being added will not preempt remote cpu which is running pagezero thread.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200611231509.08742.davidxu>