From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from gate.crashing.org (gate.crashing.org [63.228.1.57]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id CDEEE2C007C for ; Thu, 15 Nov 2012 17:51:25 +1100 (EST) In-Reply-To: <9FB7F97D-D988-495B-93C8-746963DFF15C@pobox.com> References: <9FB7F97D-D988-495B-93C8-746963DFF15C@pobox.com> Mime-Version: 1.0 (Apple Message framework v753.1) Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed Message-Id: From: Segher Boessenkool Subject: Re: hoo boy, interrupt Handling on BGQ Date: Thu, 15 Nov 2012 07:50:39 +0100 To: Jimi Xenidis Cc: Kumar Gala , linuxppc-dev List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , > So interrupts need to go to FW before Linux, please let not talk > about how silly that is. > Lets talk about something far more silly... > In order to get to the Linux exception handlers, we have to tell FW > where the interrupt page is, and then it _copies_ it. > > IFAICT, this means that each vectors on the "copied" page must: > 1) construct an 64-bit absolute address to a per vector stub > 2) leap at the (with bctr or blr) > 3) restore CTR or LR and anything else that (1) messed up > 4) normal branch to the actual vector > > This is what I'll be working on, but I'd love to hear any other ideas. If you Linux exception handlers are at low (or high) real addresses, as usual, you can just "ba" to them? Segher