<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/arch/powerpc/kernel/align.c, branch v3.2.20</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/arch/powerpc/kernel/align.c?h=v3.2.20</id>
<link rel='self' href='https://git.amat.us/linux/atom/arch/powerpc/kernel/align.c?h=v3.2.20'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2010-09-02T04:07:32Z</updated>
<entry>
<title>powerpc: Remove fpscr use from [kvm_]cvt_{fd,df}</title>
<updated>2010-09-02T04:07:32Z</updated>
<author>
<name>Andreas Schwab</name>
<email>schwab@linux-m68k.org</email>
</author>
<published>2010-08-21T11:43:20Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=05d77ac90c0d260ae18decd70507dc4f5b71a2cb'/>
<id>urn:sha1:05d77ac90c0d260ae18decd70507dc4f5b71a2cb</id>
<content type='text'>
Neither lfs nor stfs touch the fpscr, so remove the restore/save of it
around them.

Signed-off-by: Andreas Schwab &lt;schwab@linux-m68k.org&gt;
Signed-off-by: Benjamin Herrenschmidt &lt;benh@kernel.crashing.org&gt;
</content>
</entry>
<entry>
<title>powerpc: Handle VSX alignment faults correctly in little-endian mode</title>
<updated>2009-12-18T03:55:43Z</updated>
<author>
<name>Neil Campbell</name>
<email>neilc@linux.vnet.ibm.com</email>
</author>
<published>2009-12-14T04:08:57Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=bb7f20b1c639606def3b91f4e4aca6daeee5d80a'/>
<id>urn:sha1:bb7f20b1c639606def3b91f4e4aca6daeee5d80a</id>
<content type='text'>
This patch fixes the handling of VSX alignment faults in little-endian
mode (the current code assumes the processor is in big-endian mode).

The patch also makes the handlers clear the top 8 bytes of the register
when handling an 8 byte VSX load.

This is based on 2.6.32.

Signed-off-by: Neil Campbell &lt;neilc@linux.vnet.ibm.com&gt;
Cc: &lt;stable@kernel.org&gt;
Acked-by: Michael Neuling &lt;mikey@neuling.org&gt;
Signed-off-by: Benjamin Herrenschmidt &lt;benh@kernel.crashing.org&gt;
</content>
</entry>
<entry>
<title>powerpc: Create PPC_WARN_ALIGNMENT to match PPC_WARN_EMULATED</title>
<updated>2009-10-28T05:13:03Z</updated>
<author>
<name>Anton Blanchard</name>
<email>anton@samba.org</email>
</author>
<published>2009-10-27T18:46:55Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=eecff81d1fcda22cd0029d11fe2a71dceed11dad'/>
<id>urn:sha1:eecff81d1fcda22cd0029d11fe2a71dceed11dad</id>
<content type='text'>
perf_event wants a separate event for alignment and emulation faults,
so create another emulation event.  This will make it easy to hook in
perf_event at one spot.

We pass in regs which will be required for these events.

Signed-off-by: Anton Blanchard &lt;anton@samba.org&gt;
Signed-off-by: Paul Mackerras &lt;paulus@samba.org&gt;
</content>
</entry>
<entry>
<title>powerpc: Keep track of emulated instructions</title>
<updated>2009-05-21T05:44:26Z</updated>
<author>
<name>Geert Uytterhoeven</name>
<email>Geert.Uytterhoeven@sonycom.com</email>
</author>
<published>2009-05-18T02:10:05Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=80947e7c99c29ce3a78bdc1933b310468455a82f'/>
<id>urn:sha1:80947e7c99c29ce3a78bdc1933b310468455a82f</id>
<content type='text'>
If CONFIG_PPC_EMULATED_STATS is enabled, make available counters for the
various classes of emulated instructions under
/sys/kernel/debug/powerpc/emulated_instructions/ (assumed debugfs is mounted on
/sys/kernel/debug).  Optionally (controlled by
/sys/kernel/debug/powerpc/emulated_instructions/do_warn), rate-limited warnings
can be printed to the console when instructions are emulated.

Signed-off-by: Geert Uytterhoeven &lt;Geert.Uytterhoeven@sonycom.com&gt;
Signed-off-by: Benjamin Herrenschmidt &lt;benh@kernel.crashing.org&gt;
</content>
</entry>
<entry>
<title>powerpc: Fix load/store float double alignment handler</title>
<updated>2009-02-23T04:53:05Z</updated>
<author>
<name>Michael Neuling</name>
<email>mikey@neuling.org</email>
</author>
<published>2009-02-19T18:52:20Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=553631e25f238de3a8085d2daf9cd4dcd96f8573'/>
<id>urn:sha1:553631e25f238de3a8085d2daf9cd4dcd96f8573</id>
<content type='text'>
When we introduced VSX, we changed the way FPRs are stored in the
thread_struct.  Unfortunately we missed the load/store float double
alignment handler code when updating how we access FPRs in the
thread_struct.

Below fixes this and merges the little/big endian case.

Signed-off-by: Michael Neuling &lt;mikey@neuling.org&gt;
Signed-off-by: Benjamin Herrenschmidt &lt;benh@kernel.crashing.org&gt;
</content>
</entry>
<entry>
<title>powerpc: Add alignment handler for new lfiwzx instruction</title>
<updated>2009-02-23T04:53:04Z</updated>
<author>
<name>Michael Neuling</name>
<email>mikey@neuling.org</email>
</author>
<published>2009-02-19T18:51:37Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=545bba18247067bb63c94e042bed90599d08151b'/>
<id>urn:sha1:545bba18247067bb63c94e042bed90599d08151b</id>
<content type='text'>
lfiwzx is a new floating point load instruction in 2.06 that needs an
alignment handler for Linux.

Turns out to be the worlds easiest handler to add.

Signed-off-by: Michael Neuling &lt;mikey@neuling.org&gt;
Signed-off-by: Benjamin Herrenschmidt &lt;benh@kernel.crashing.org&gt;
</content>
</entry>
<entry>
<title>powerpc/vsx: Fix VSX alignment handler for regs 32-63</title>
<updated>2009-02-13T05:37:45Z</updated>
<author>
<name>Michael Neuling</name>
<email>mikey@neuling.org</email>
</author>
<published>2009-02-12T19:08:58Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=26456dcfb8d8e43b1b64b2a14710694cf7a72f05'/>
<id>urn:sha1:26456dcfb8d8e43b1b64b2a14710694cf7a72f05</id>
<content type='text'>
Fix the VSX alignment handler for VSX registers &gt; 32.  32-63 are stored
in the VMX part of the thread_struct not the FPR part.

Signed-off-by: Michael Neuling &lt;mikey@neuling.org&gt;
CC: stable@kernel.org (2.6.27 &amp; .28 please)
Signed-off-by: Benjamin Herrenschmidt &lt;benh@kernel.crashing.org&gt;
</content>
</entry>
<entry>
<title>powerpc: Fix uninitialised variable in VSX alignment code</title>
<updated>2008-09-03T10:53:14Z</updated>
<author>
<name>Michael Neuling</name>
<email>mikey@neuling.org</email>
</author>
<published>2008-08-28T04:57:39Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=78fbc824ed8225edd80cdc57771d5ca4f7aae95e'/>
<id>urn:sha1:78fbc824ed8225edd80cdc57771d5ca4f7aae95e</id>
<content type='text'>
This fixes an uninitialised variable in the VSX alignment code.  It can
cause warnings from GCC (noticed with gcc-4.1.1).  Gcc is actually
correct in this instance, and this bug could cause the alignment
interrupt handler to send a SIGSEGV to the process on a legitimate
access.

Signed-off-by: Michael Neuling &lt;mikey@neuling.org&gt;
Signed-off-by: Paul Mackerras &lt;paulus@samba.org&gt;
</content>
</entry>
<entry>
<title>powerpc: Add VSX load/store alignment exception handler</title>
<updated>2008-07-15T02:29:25Z</updated>
<author>
<name>Michael Neuling</name>
<email>mikey@neuling.org</email>
</author>
<published>2008-07-11T06:31:09Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=cd6f37be7fdc9fea407379745350f6630b9d3cdd'/>
<id>urn:sha1:cd6f37be7fdc9fea407379745350f6630b9d3cdd</id>
<content type='text'>
VSX loads and stores will take an alignment exception when the address
is not on a 4 byte boundary.

This add support for these alignment exceptions and will emulate the
requested load or store.

Signed-off-by: Michael Neuling &lt;mikey@neuling.org&gt;
Signed-off-by: Benjamin Herrenschmidt &lt;benh@kernel.crashing.org&gt;
</content>
</entry>
<entry>
<title>powerpc: remove unused variable in emulate_fp_pair</title>
<updated>2008-07-09T06:30:47Z</updated>
<author>
<name>Michael Neuling</name>
<email>mikey@neuling.org</email>
</author>
<published>2008-07-08T08:53:03Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=b887ec620a7575f54fa025d38fa1008dc8a3b12a'/>
<id>urn:sha1:b887ec620a7575f54fa025d38fa1008dc8a3b12a</id>
<content type='text'>
regs is not used in emulate_fp_pair so remove it.

Signed-off-by: Michael Neuling &lt;mikey@neuling.org&gt;
Signed-off-by: Benjamin Herrenschmidt &lt;benh@kernel.crashing.org&gt;
</content>
</entry>
</feed>
