xen-devel
[Xen-devel] Re: [PATCH RFC V4 06/10] jump_label: add arch_jump_label_tra
To: |
Jason Baron <jbaron@xxxxxxxxxx> |
Subject: |
[Xen-devel] Re: [PATCH RFC V4 06/10] jump_label: add arch_jump_label_transform_static() to optimise non-live code updates |
From: |
Peter Zijlstra <peterz@xxxxxxxxxxxxx> |
Date: |
Thu, 13 Oct 2011 18:32:05 +0200 |
Cc: |
rth@xxxxxxxxxx, Jeremy Fitzhardinge <jeremy@xxxxxxxx>, the arch/x86 maintainers <x86@xxxxxxxxxx>, "H. Peter Anvin" <hpa@xxxxxxxxx>, Jeremy Fitzhardinge <jeremy.fitzhardinge@xxxxxxxxxx>, Daney <david.daney@xxxxxxxxxx>, Jan Glauber <jang@xxxxxxxxxxxxxxxxxx>, Mailing List <linux-kernel@xxxxxxxxxxxxxxx>, Steven Rostedt <rostedt@xxxxxxxxxxx>, David, Michael Ellerman <michael@xxxxxxxxxxxxxx>, Xen Devel <xen-devel@xxxxxxxxxxxxxxxxxxx>, Linux, Ingo Molnar <mingo@xxxxxxx>, "David S. Miller" <davem@xxxxxxxxxxxxx> |
Delivery-date: |
Thu, 13 Oct 2011 09:33:22 -0700 |
Envelope-to: |
www-data@xxxxxxxxxxxxxxxxxxx |
In-reply-to: |
<20111013155553.GD2455@xxxxxxxxxx> |
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/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe> |
List-unsubscribe: |
<http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe> |
References: |
<cover.1318464169.git.jeremy.fitzhardinge@xxxxxxxxxx> <16f652166605c973e9817177b6ba6a081e3e5b3f.1318464413.git.jeremy.fitzhardinge@xxxxxxxxxx> <1318501954.24856.5.camel@twins> <20111013135439.GA2455@xxxxxxxxxx> <1318519758.27731.15.camel@twins> <20111013155553.GD2455@xxxxxxxxxx> |
Sender: |
xen-devel-bounces@xxxxxxxxxxxxxxxxxxx |
On Thu, 2011-10-13 at 11:55 -0400, Jason Baron wrote:
> > I actually need them to be either way.. no preference between on or off
> > just a means of very _very_ infrequent runtime change in behaviour.
> >
>
> ok, this is a new use case, all the current users are biased with gcc
> out-of-lining the infrequent case.
Right,
> > If we can push jump_label init to before sched_init() all I need is a
> > static_branch() without the unlikely() in to avoid GCC out-of-lining the
> > branch.
> >
>
> hmmm....the current code (I believe) is biased b/c gcc sees the
> branch as always false, see: arch_static_branch() - its not b/c we have
> an unlikely there. Without open coding the label, like we had before
> everybody hated, I'll have to play around and see what will create an
> unbiased branch...perhaps, somebody has an idea?
Fix gcc and stick an unlikely in static_branch() ? :-)
> > > and by patching them early
> > > like this, at least for x86, we can avoid the stop machine calls. So its
> > > the combination of most are expected to be off and no sense to call extra
> > > stop machines that lead the code to its present state.
> >
> > But we could use arch_jump_label_transform_static because its before we
> > actually execute any module text (sans the arg crap) which is
> > stomp-machine free, removing that obstacle.
> >
> > Or am I confused more?
> >
>
> The MODULE_COMING callback happens *after* the call to
> flush_module_icache(mod),
> so I'm not sure that is safe...
We can issue another one of those?
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
<Prev in Thread] |
Current Thread |
[Next in Thread>
|
- [Xen-devel] [PATCH RFC V4 01/10] jump_label: use proper atomic_t initializer, (continued)
- Message not available
- Message not available
- Message not available
- Message not available
- Message not available
Message not available
Message not available
Message not available
|
|
|