Re: [rfc patch] i386: don't save eflags on task switch

Linus Torvalds
2006-11-05T16:12:46Z

On Sun, 5 Nov 2006, Andi Kleen wrote:
>
> This means we should definitely change restore_flags() to only STI,
> never popf

Whaa? That would be wrong. We don't always sti, quite often the flags were
disabled anyway.

And changing restore-flags to a "conditional branch around sti" is likely
not much better - mispredicted branches on a P4 are potentially worse than
the popf cost.

Side note: for the netburst microarchitecture - aka P4 - in general,
something like 48 cycles is a _good_ thing. I measured a internal
micro-fault for marking a page table entry dirty at over 1500 cycles!
There's a reason Intel dropped Netburst in favour of Core 2 - which is
largely just an improved Pentium Pro uarch. Admittedly, the "just" is a
bit unfair, because there's a _lot_ of improvement, but still..

So you should never actually make any real code design decisions based on
a P4 result. The P4 is goign away, and it was odd.

Linus