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.
next prev parent 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).