xen-devel
[Xen-devel] Re: [PATCH RFC V2 3/5] jump_label: if a key has already been
To: |
"H. Peter Anvin" <hpa@xxxxxxxxx> |
Subject: |
[Xen-devel] Re: [PATCH RFC V2 3/5] jump_label: if a key has already been initialized, don't nop it out |
From: |
Jeremy Fitzhardinge <jeremy@xxxxxxxx> |
Date: |
Wed, 05 Oct 2011 17:47:21 -0700 |
Cc: |
the arch/x86 maintainers <x86@xxxxxxxxxx>, Jeremy Fitzhardinge <jeremy.fitzhardinge@xxxxxxxxxx>, Jan Glauber <jang@xxxxxxxxxxxxxxxxxx>, peterz@xxxxxxxxxxxxx, Jason Baron <jbaron@xxxxxxxxxx>, David Daney <david.daney@xxxxxxxxxx>, Linux Kernel Mailing List <linux-kernel@xxxxxxxxxxxxxxx>, Steven Rostedt <rostedt@xxxxxxxxxxx>, Michael Ellerman <michael@xxxxxxxxxxxxxx>, Xen Devel <xen-devel@xxxxxxxxxxxxxxxxxxx>, "David S. Miller" <davem@xxxxxxxxxxxxx> |
Delivery-date: |
Thu, 06 Oct 2011 00:39:20 -0700 |
Envelope-to: |
www-data@xxxxxxxxxxxxxxxxxxx |
In-reply-to: |
<4E8CF385.2080804@xxxxxxxxx> |
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.1317506051.git.jeremy.fitzhardinge@xxxxxxxxxx> <477dead9647029012f93c651f2892ed0e86b89e7.1317506051.git.jeremy.fitzhardinge@xxxxxxxxxx> <20111003150205.GB2462@xxxxxxxxxx> <4E89E28C.7010700@xxxxxxxx> <20111004141011.GA2520@xxxxxxxxxx> <4E8B3489.60902@xxxxxxxxx> <4E8CF348.4080405@xxxxxxxx> <4E8CF385.2080804@xxxxxxxxx> |
Sender: |
xen-devel-bounces@xxxxxxxxxxxxxxxxxxx |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:7.0.1) Gecko/20110930 Thunderbird/7.0.1 |
On 10/05/2011 05:17 PM, H. Peter Anvin wrote:
> On 10/05/2011 05:16 PM, Jeremy Fitzhardinge wrote:
>> On 10/04/2011 09:30 AM, H. Peter Anvin wrote:
>>> On 10/04/2011 07:10 AM, Jason Baron wrote:
>>>> 1) The jmp +0, is a 'safe' no-op that I know is going to initially
>>>> boot for all x86. I'm not sure if there is a 5-byte nop that works on
>>>> all x86 variants - but by using jmp +0, we make it much easier to debug
>>>> cases where we may be using broken no-ops.
>>>>
>>> There are *plenty*. jmp+0 is about as pessimal as you can get.
>> As an aside, do you know if a 2-byte unconditional jmp is any more
>> efficient than 5-byte, aside from just being a smaller instruction and
>> taking less icache?
>>
> I don't know for sure, no. I probably depends on the CPU.
I was thinking about making the jump-label stuff generate a small jmp if
the offset is small (specifically "jmp; nop3", or perhaps "jmp; ud2a;
nop" to make absolutely sure there's no speculation beyond the jmp), on
the grounds that, while it probably doesn't matter for any modern
Intel/AMD processor, it may help for others. But I couldn't find any
concrete evidence to support it, and there's already enough questions
about doing "live" code updates without adding more instruction patterns.
J
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
<Prev in Thread] |
Current Thread |
[Next in Thread>
|
- [Xen-devel] Re: [PATCH RFC V2 2/5] stop_machine: make stop_machine safe and efficient to call early, (continued)
- [Xen-devel] [PATCH RFC V2 3/5] jump_label: if a key has already been initialized, don't nop it out, Jeremy Fitzhardinge
- [Xen-devel] Re: [PATCH RFC V2 3/5] jump_label: if a key has already been initialized, don't nop it out, Jason Baron
- [Xen-devel] Re: [PATCH RFC V2 3/5] jump_label: if a key has already been initialized, don't nop it out, Steven Rostedt
- [Xen-devel] Re: [PATCH RFC V2 3/5] jump_label: if a key has already been initialized, don't nop it out, Jeremy Fitzhardinge
- [Xen-devel] Re: [PATCH RFC V2 3/5] jump_label: if a key has already been initialized, don't nop it out, Jason Baron
- [Xen-devel] Re: [PATCH RFC V2 3/5] jump_label: if a key has already been initialized, don't nop it out, Jeremy Fitzhardinge
- [Xen-devel] Re: [PATCH RFC V2 3/5] jump_label: if a key has already been initialized, don't nop it out, H. Peter Anvin
- [Xen-devel] Re: [PATCH RFC V2 3/5] jump_label: if a key has already been initialized, don't nop it out, Jeremy Fitzhardinge
- [Xen-devel] Re: [PATCH RFC V2 3/5] jump_label: if a key has already been initialized, don't nop it out, H. Peter Anvin
- [Xen-devel] Re: [PATCH RFC V2 3/5] jump_label: if a key has already been initialized, don't nop it out,
Jeremy Fitzhardinge <=
- [Xen-devel] Re: [PATCH RFC V2 3/5] jump_label: if a key has already been initialized, don't nop it out, Jeremy Fitzhardinge
- [Xen-devel] Re: [PATCH RFC V2 3/5] jump_label: if a key has already been initialized, don't nop it out, Jason Baron
- [Xen-devel] Re: [PATCH RFC V2 3/5] jump_label: if a key has already been initialized, don't nop it out, Jeremy Fitzhardinge
- [Xen-devel] Re: [PATCH RFC V2 3/5] jump_label: if a key has already been initialized, don't nop it out, Jason Baron
- [Xen-devel] Re: [PATCH RFC V2 3/5] jump_label: if a key has already been initialized, don't nop it out, H. Peter Anvin
- [Xen-devel] Re: [PATCH RFC V2 3/5] jump_label: if a key has already been initialized, don't nop it out, Jason Baron
- [Xen-devel] Re: [PATCH RFC V2 3/5] jump_label: if a key has already been initialized, don't nop it out, H. Peter Anvin
- [Xen-devel] Re: [PATCH RFC V2 3/5] jump_label: if a key has already been initialized, don't nop it out, Jeremy Fitzhardinge
- [Xen-devel] Re: [PATCH RFC V2 3/5] jump_label: if a key has already been initialized, don't nop it out, Steven Rostedt
- [Xen-devel] Re: [PATCH RFC V2 3/5] jump_label: if a key has already been initialized, don't nop it out, Steven Rostedt
|
|
|