<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/arch/x86/kernel/xsave.c, branch linux-2.6.28.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.28.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.28.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2008-11-20T15:43:42Z</updated>
<entry>
<title>x86: fixing __cpuinit/__init tangle, xsave_cntxt_init()</title>
<updated>2008-11-20T15:43:42Z</updated>
<author>
<name>Rakib Mullick</name>
</author>
<published>2008-11-20T13:12:50Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=bfe085f62f98a49e1b864e4950389c7205174e4f'/>
<id>urn:sha1:bfe085f62f98a49e1b864e4950389c7205174e4f</id>
<content type='text'>
Annotate xsave_cntxt_init() as "can be called outside of __init".

Signed-off-by: Rakib Mullick &lt;rakib.mullick@gmail.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
</entry>
<entry>
<title>x86: make variables static</title>
<updated>2008-10-22T05:31:28Z</updated>
<author>
<name>roel kluin</name>
</author>
<published>2008-10-21T23:49:09Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8bcad30f2e6d4c20f7e71d2e2ac77acc0f0931e5'/>
<id>urn:sha1:8bcad30f2e6d4c20f7e71d2e2ac77acc0f0931e5</id>
<content type='text'>
These variables are only used in their source files, so make them static.

Signed-off-by: Roel Kluin &lt;roel.kluin@gmail.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
</entry>
<entry>
<title>x86, fpu: check __clear_user() return value</title>
<updated>2008-10-12T13:17:39Z</updated>
<author>
<name>Ingo Molnar</name>
</author>
<published>2008-08-18T10:59:32Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9f482807a6bd7e2aa1ed0d8cfc48463ec4ca3568'/>
<id>urn:sha1:9f482807a6bd7e2aa1ed0d8cfc48463ec4ca3568</id>
<content type='text'>
fix warning:

  arch/x86/kernel/xsave.c: In function ‘save_i387_xstate’:
  arch/x86/kernel/xsave.c:98: warning: ignoring return value of ‘__clear_user’, declared with attribute warn_unused_result

check the return value and act on it. We should not be ignoring faults
at this point.

Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
</entry>
<entry>
<title>x86: xsave: set FP, SSE bits in the xsave header in the user sigcontext</title>
<updated>2008-10-07T21:36:08Z</updated>
<author>
<name>Suresh Siddha</name>
</author>
<published>2008-10-07T21:04:28Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=04944b793e18ece23f63c0252646b310c1845940'/>
<id>urn:sha1:04944b793e18ece23f63c0252646b310c1845940</id>
<content type='text'>
If a processor implementation discern that a processor state component is in
its initialized state, it may modify the corresponding bit in the
xsave header.xstate_bv as '0'. State in the memory layout setup by 'xsave'
will be consistent with the bit values in the header.

During signal handling, legacy applications may change the FP/SSE bits
in the sigcontext memory layout without touching the FP/SSE header bits
in the xsave header. So always set FP/SSE bits in the xsave header
while saving the sigcontext state to the user space. During signal return,
this will enable the kernel to capture any changes to the FP/SSE bits by the
legacy applications which don't touch xsave headers.

xsave aware apps can change the xstate_bv in the xsave header aswell
as change any contents in the memory layout. xrestor as part of sigreturn
will capture all the changes.

Signed-off-by: Suresh Siddha &lt;suresh.b.siddha@intel.com&gt;
Signed-off-by: H. Peter Anvin &lt;hpa@zytor.com&gt;
</content>
</entry>
<entry>
<title>x86: xsave: fix error condition in save_i387_xstate()</title>
<updated>2008-10-07T21:36:01Z</updated>
<author>
<name>Suresh Siddha</name>
</author>
<published>2008-10-07T21:04:27Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f364eadab59b316ea0bd9f9bc01af0ad89065569'/>
<id>urn:sha1:f364eadab59b316ea0bd9f9bc01af0ad89065569</id>
<content type='text'>
Actually return failure on error.

Signed-off-by: Suresh Siddha &lt;suresh.b.siddha@intel.com&gt;
Signed-off-by: H. Peter Anvin &lt;hpa@zytor.com&gt;
</content>
</entry>
<entry>
<title>x86: make setup_xstate_init() __init</title>
<updated>2008-09-06T17:01:18Z</updated>
<author>
<name>Alexey Dobriyan</name>
</author>
<published>2008-08-30T02:03:34Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a19aac8548d85cf15d744335b8e82201da760d80'/>
<id>urn:sha1:a19aac8548d85cf15d744335b8e82201da760d80</id>
<content type='text'>
WARNING: vmlinux.o(.text+0x22453): Section mismatch in reference from the function setup_xstate_init() to the function .init.text:__alloc_bootmem()
The function setup_xstate_init() references the function __init __alloc_bootmem().
This is often because setup_xstate_init lacks a __init annotation or the annotation of __alloc_bootmem is wrong.

Signed-off-by: Alexey Dobriyan &lt;adobriyan@gmail.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
</entry>
<entry>
<title>x86, xsave: use BUG_ON() instead of BUILD_BUG_ON()</title>
<updated>2008-08-14T08:56:07Z</updated>
<author>
<name>Suresh Siddha</name>
</author>
<published>2008-08-13T18:38:15Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f65bc214e042916135256620f900e9599d65e0cb'/>
<id>urn:sha1:f65bc214e042916135256620f900e9599d65e0cb</id>
<content type='text'>
All these structure sizes are runtime determined. So use a runtime
bug check.

Signed-off-by: Suresh Siddha &lt;suresh.b.siddha@intel.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
</entry>
<entry>
<title>x86, xsave: clear the user buffer before doing fxsave/xsave</title>
<updated>2008-08-14T08:56:06Z</updated>
<author>
<name>Suresh Siddha</name>
</author>
<published>2008-08-13T18:38:14Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ed405958057ca6a8c4c9178a7a3b1167fabb45f5'/>
<id>urn:sha1:ed405958057ca6a8c4c9178a7a3b1167fabb45f5</id>
<content type='text'>
fxsave/xsave instructions will not touch all the bytes in the
fxsave/xsave frame. Clear the user buffer before doing fxsave/xsave
directly to user buffer during the sigcontext setup.

This is essentially needed in the context of xsave(for example,
some of the fields in the xsave header are not touched by the xsave
and defined as must be zero).

This will also present uniform and clean context to the user (from
which user can safely do fxrstor/xrstor).

Signed-off-by: Suresh Siddha &lt;suresh.b.siddha@intel.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
</entry>
<entry>
<title>x86, xsave: keep the XSAVE feature mask as an u64</title>
<updated>2008-07-30T17:50:35Z</updated>
<author>
<name>H. Peter Anvin</name>
</author>
<published>2008-07-30T00:23:16Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=6152e4b1c99a3689fc318d092cd144597f7dbd14'/>
<id>urn:sha1:6152e4b1c99a3689fc318d092cd144597f7dbd14</id>
<content type='text'>
The XSAVE feature mask is a 64-bit number; keep it that way, in order
to avoid the mistake done with rdmsr/wrmsr.  Use the xsetbv() function
provided in the previous patch.

Signed-off-by: H. Peter Anvin &lt;hpa@zytor.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
</entry>
<entry>
<title>x86, xsave: save/restore the extended state context in sigframe</title>
<updated>2008-07-30T17:49:27Z</updated>
<author>
<name>Suresh Siddha</name>
</author>
<published>2008-07-29T17:29:25Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c37b5efea43f9e500363f9973dd00e3d2cdcc685'/>
<id>urn:sha1:c37b5efea43f9e500363f9973dd00e3d2cdcc685</id>
<content type='text'>
On cpu's supporting xsave/xrstor, fpstate pointer in the sigcontext, will
include the extended state information along with fpstate information. Presence
of extended state information is indicated by the presence
of FP_XSTATE_MAGIC1 at fpstate.sw_reserved.magic1 and FP_XSTATE_MAGIC2
at fpstate + (fpstate.sw_reserved.extended_size - FP_XSTATE_MAGIC2_SIZE).

Extended feature bit mask that is saved in the memory layout is represented
by the fpstate.sw_reserved.xstate_bv

For RT signal frames, UC_FP_XSTATE in the uc_flags also indicate the
presence of extended state information in the sigcontext's fpstate
pointer.

Signed-off-by: Suresh Siddha &lt;suresh.b.siddha@intel.com&gt;
Signed-off-by: H. Peter Anvin &lt;hpa@zytor.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
</entry>
</feed>
