This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


[Xen-devel] Re: [RFC PATCH 15/35] subarch support for controlling interr

To: Andi Kleen <ak@xxxxxxx>
Subject: [Xen-devel] Re: [RFC PATCH 15/35] subarch support for controlling interrupt delivery
From: Christian Limpach <Christian.Limpach@xxxxxxxxxxxx>
Date: Tue, 9 May 2006 21:42:07 +0100
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx, Ian Pratt <ian.pratt@xxxxxxxxxxxxx>, linux-kernel@xxxxxxxxxxxxxxx, "Martin J. Bligh" <mbligh@xxxxxxxxxx>, Chris Wright <chrisw@xxxxxxxxxxxx>, virtualization@xxxxxxxxxxxxxx
Delivery-date: Tue, 09 May 2006 13:42:38 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <200605091831.37757.ak@xxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <20060509084945.373541000@xxxxxxxxxxxx> <200605091807.57522.ak@xxxxxxx> <20060509162959.GL7834@xxxxxxxxxxxx> <200605091831.37757.ak@xxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/1.4.1i
On Tue, May 09, 2006 at 06:31:37PM +0200, Andi Kleen wrote:
> On Tuesday 09 May 2006 18:29, Christian Limpach wrote:
> > On Tue, May 09, 2006 at 06:07:57PM +0200, Andi Kleen wrote:
> > > 
> > > > 
> > > > Anybody want to comment on the performance impact of making
> > > > local_irq_* non-inline functions?
> > > 
> > > I would guess for that much inline code it will be even a win to not
> > > inline because it will save icache.
> > 
> > Maybe, although some of the macros compile down to only 2-3 instructions.
> Can you post before/after vmlinux size numbers for inline/out of line?

Sure, although it is a bit tricky since the #define's pass non-pointer
arguments by reference.  This would also make it quite ugly to change

Everything[1] in line:
-rwxr-xr-x  1 cl349 cl349  2633640 May  9 19:42 vmlinux-inline-stripped
Everything out of line:
-rwxr-xr-x  1 cl349 cl349  2621352 May  9 19:45 vmlinux-outline-stripped

Additionally, I changed did a build with only __sti and __restore_flags
out of line and the others in line:
-rwxr-xr-x  1 cl349 cl349  2617256 May  9 19:50 vmlinux-hybrid-stripped

__sti and __restore_flags are the ones which generate more code,
so it seemed more sensible to make the out of line.

Any conlusions?


[1] __cli, __sti, __save_flags, __restore_flags, __save_and_cli, irqs_disabled

Xen-devel mailing list

<Prev in Thread] Current Thread [Next in Thread>