Re: [RFC] x86: save_args out of line

From: Cyrill Gorcunov
Date: Mon Nov 17 2008 - 14:22:35 EST


[Andi Kleen - Mon, Nov 17, 2008 at 07:23:40PM +0100]
...
|
| Ok. Hopefully it's worth the effort. The branch misprediction bubble
| should not be too bad, perhaps it'll make up for the other cycles
| you're adding. But even if it doesn't decreasing cache line foot print is
| always a good thing.
...

May I turn in? :)

Original .macro interrupt func has

testl $3, CS(%rdi)
je 1f
SWAPGS
1: incl %gs:pda_irqcount
jne 2f
pop %rax
mov %gs:pda_irqstackptr,%rsp
push %rax
2: TRACE_IRQS_OFF

Wouldn't we help the branch predictor a bit by

testl $3, CS(%rdi)
je 1f
SWAPGS
jne 2f
1: pop %rax
mov %gs:pda_irqstackptr,%rsp
push %rax
2: incl %gs:pda_irqcount
TRACE_IRQS_OFF

I hope I didn't miss anything but maybe it's just a churning
or plain wrong. Don't shoot me :)

- Cyrill -
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/