Re: Sysenter crash with Nested Task Bit set

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Sep 18, 2006 at 05:29:23PM +0200, Andi Kleen wrote:
> > -	asm volatile("pushl %%ebp\n\t"					\
> > +	asm volatile("pushfl\n\t"		/* Save flags */	\
> > +		     "pushl %%ebp\n\t"					\
> 
> We used to do that pushfl/popfl some time ago, but Ben removed it because
> it was slow on P4.  Ok, nobody thought of that case back then.

It's the pushfl that will be slow on any OoO CPU, as it has dependancies on 
any previous instructions that modified the flags, which ends up bringing 
all of the memory ordering dependancies into play.  Doing a popfl to set the 
flags to some known value is much less expensive.

		-ben
-- 
"Time is of no importance, Mr. President, only life is important."
Don't Email: <[email protected]>.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux