linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Avi Kivity <avi@redhat.com>
To: Brian Gerst <brgerst@gmail.com>
Cc: Dexuan Cui <dexuan.cui@intel.com>,
	Sheng Yang <sheng@linux.intel.com>, Ingo Molnar <mingo@elte.hu>,
	"H. Peter Anvin" <hpa@zytor.com>,
	linux-kernel@vger.kernel.org, kvm@vger.kernel.org
Subject: Re: [PATCH 1/2] x86: eliminate TS_XSAVE
Date: Sun, 02 May 2010 20:44:56 +0300	[thread overview]
Message-ID: <4BDDBA18.3080909@redhat.com> (raw)
In-Reply-To: <u2p73c1f2161005021038gce35c1bbpca6ec119d24e646e@mail.gmail.com>

On 05/02/2010 08:38 PM, Brian Gerst wrote:
> On Sun, May 2, 2010 at 10:53 AM, Avi Kivity<avi@redhat.com>  wrote:
>    
>> The fpu code currently uses current->thread_info->status&  TS_XSAVE as
>> a way to distinguish between XSAVE capable processors and older processors.
>> The decision is not really task specific; instead we use the task status to
>> avoid a global memory reference - the value should be the same across all
>> threads.
>>
>> Eliminate this tie-in into the task structure by using an alternative
>> instruction keyed off the XSAVE cpu feature; this results in shorter and
>> faster code, without introducing a global memory reference.
>>      
> I think you should either just use cpu_has_xsave, or extend this use
> of alternatives to all cpu features.  It doesn't make sense to only do
> it for xsave.
>    

I was trying to avoid a performance regression relative to the current 
code, as it appears that some care was taken to avoid the memory reference.

I agree that it's probably negligible compared to the save/restore 
code.  If the x86 maintainers agree as well, I'll replace it with 
cpu_has_xsave.

-- 
I have a truly marvellous patch that fixes the bug which this
signature is too narrow to contain.


  reply	other threads:[~2010-05-02 17:45 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-05-02 14:53 [PATCH 0/2] x86 FPU API Avi Kivity
2010-05-02 14:53 ` [PATCH 1/2] x86: eliminate TS_XSAVE Avi Kivity
2010-05-02 17:38   ` Brian Gerst
2010-05-02 17:44     ` Avi Kivity [this message]
2010-05-03 21:45       ` H. Peter Anvin
2010-05-04  7:41         ` Avi Kivity
2010-05-04 18:15           ` Suresh Siddha
2010-05-04 18:24             ` H. Peter Anvin
2010-05-05  7:30               ` Avi Kivity
2010-05-05 12:10                 ` H. Peter Anvin
2010-05-05 12:12                 ` H. Peter Anvin
2010-05-04 18:03   ` Suresh Siddha
2010-05-02 14:53 ` [PATCH 2/2] x86: Introduce 'struct fpu' and related API Avi Kivity
2010-05-04 18:12   ` Suresh Siddha

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4BDDBA18.3080909@redhat.com \
    --to=avi@redhat.com \
    --cc=brgerst@gmail.com \
    --cc=dexuan.cui@intel.com \
    --cc=hpa@zytor.com \
    --cc=kvm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=sheng@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).