Date: Tue, 23 Nov 2010 17:26:58 +0200 From: Andriy Gapon <avg@freebsd.org> To: John Baldwin <jhb@freebsd.org> Cc: Garrett Cooper <yanegomi@gmail.com>, freebsd-hackers@freebsd.org Subject: Re: Best way to determine if an IRQ is present Message-ID: <4CEBDD42.5010007@freebsd.org> In-Reply-To: <201011220924.53709.jhb@freebsd.org> References: <AANLkTi=%2ByXVrcWDC1QZLA0JWNOQjWG%2Bud_BmwiMXAMXt@mail.gmail.com> <201011220924.53709.jhb@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
on 22/11/2010 16:24 John Baldwin said the following: > Well, the real solution is actually larger than described in the PR. What you > really want to do is take the logical CPUs offline when they are "halted". > Taking a CPU offline should trigger an EVENTHANDLER that various bits of code > could invoke. In the case of platforms that support binding interrupts to > CPUs (x86 and sparc64 at least), they would install an event handler that > searches the MD interrupt tables (e.g. the interrupt_sources[] array on x86) > and move bound interrupts to other CPUs. However, I think all the interrupt > bits will be MD, not MI. That's a good idea and a comprehensive approach. One minor technical detail - should an offlined CPU be removed from all_cpus mask/set? -- Andriy Gapon
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4CEBDD42.5010007>