<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/arch, branch v3.12.19</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/arch?h=v3.12.19</id>
<link rel='self' href='https://git.amat.us/linux/atom/arch?h=v3.12.19'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2014-05-05T12:24:46Z</updated>
<entry>
<title>sparc64: Make sure %pil interrupts are enabled during hypervisor yield.</title>
<updated>2014-05-05T12:24:46Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2014-03-24T18:45:12Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=3f5bb90c762520fee214e7852897198e89b29630'/>
<id>urn:sha1:3f5bb90c762520fee214e7852897198e89b29630</id>
<content type='text'>
[ Upstream commit cb3042d609e30e6144024801c89be3925106752b ]

In arch_cpu_idle() we must enable %pil based interrupts before
potentially invoking the hypervisor cpu yield call.

As per the Hypervisor API documentation for cpu_yield:

	Interrupts which are blocked by some mechanism other that
	pstate.ie (for example %pil) are not guaranteed to cause
	a return from this service.

It seems that only first generation Niagara chips are hit by this
bug.  My best guess is that later chips implement this in hardware
and wake up anyways from %pil events, whereas in first generation
chips the yield is implemented completely in hypervisor code and
requires %pil to be enabled in order to wake properly from this
call.

Fixes: 87fa05aeb3a5 ("sparc: Use generic idle loop")
Reported-by: Fabio M. Di Nitto &lt;fabbione@fabbione.net&gt;
Reported-by: Jan Engelhardt &lt;jengelh@inai.de&gt;
Tested-by: Jan Engelhardt &lt;jengelh@inai.de&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Jiri Slaby &lt;jslaby@suse.cz&gt;
</content>
</entry>
<entry>
<title>sparc64: don't treat 64-bit syscall return codes as 32-bit</title>
<updated>2014-05-05T12:24:46Z</updated>
<author>
<name>Dave Kleikamp</name>
<email>dave.kleikamp@oracle.com</email>
</author>
<published>2014-03-14T15:42:01Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=094c49e05b7684cf4c81d1da2620c1a65fa8ced9'/>
<id>urn:sha1:094c49e05b7684cf4c81d1da2620c1a65fa8ced9</id>
<content type='text'>
[ Upstream commit 1535bd8adbdedd60a0ee62e28fd5225d66434371 ]

When checking a system call return code for an error,
linux_sparc_syscall was sign-extending the lower 32-bit value and
comparing it to -ERESTART_RESTARTBLOCK. lseek can return valid return
codes whose lower 32-bits alone would indicate a failure (such as 4G-1).
Use the whole 64-bit value to check for errors. Only the 32-bit path
should sign extend the lower 32-bit value.

Signed-off-by: Dave Kleikamp &lt;dave.kleikamp@oracle.com&gt;
Acked-by: Bob Picco &lt;bob.picco@oracle.com&gt;
Acked-by: Allen Pais &lt;allen.pais@oracle.com&gt;
Cc: David S. Miller &lt;davem@davemloft.net&gt;
Cc: sparclinux@vger.kernel.org
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Jiri Slaby &lt;jslaby@suse.cz&gt;
</content>
</entry>
<entry>
<title>sparc32: fix build failure for arch_jump_label_transform</title>
<updated>2014-05-05T12:24:45Z</updated>
<author>
<name>Paul Gortmaker</name>
<email>paul.gortmaker@windriver.com</email>
</author>
<published>2014-02-13T18:57:44Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=50aa539f0ea40ff117cc7ff263ed71bb9f2c4d86'/>
<id>urn:sha1:50aa539f0ea40ff117cc7ff263ed71bb9f2c4d86</id>
<content type='text'>
[ Upstream commit 4f6500fff5f7644a03c46728fd7ef0f62fa6940b ]

In arch/sparc/Kernel/Makefile, we see:

   obj-$(CONFIG_SPARC64)   += jump_label.o

However, the Kconfig selects HAVE_ARCH_JUMP_LABEL unconditionally
for all SPARC.  This in turn leads to the following failure when
doing allmodconfig coverage builds:

kernel/built-in.o: In function `__jump_label_update':
jump_label.c:(.text+0x8560c): undefined reference to `arch_jump_label_transform'
kernel/built-in.o: In function `arch_jump_label_transform_static':
(.text+0x85cf4): undefined reference to `arch_jump_label_transform'
make: *** [vmlinux] Error 1

Change HAVE_ARCH_JUMP_LABEL to be conditional on SPARC64 so that it
matches the Makefile.

Signed-off-by: Paul Gortmaker &lt;paul.gortmaker@windriver.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Jiri Slaby &lt;jslaby@suse.cz&gt;
</content>
</entry>
<entry>
<title>x86: Adjust irq remapping quirk for older revisions of 5500/5520 chipsets</title>
<updated>2014-05-05T12:24:34Z</updated>
<author>
<name>Neil Horman</name>
<email>nhorman@tuxdriver.com</email>
</author>
<published>2014-03-12T18:44:33Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=6226a60b08a72290df15598d4355a42bcf4bb65d'/>
<id>urn:sha1:6226a60b08a72290df15598d4355a42bcf4bb65d</id>
<content type='text'>
commit 6f8a1b335fde143b7407036e2368d3cd6eb55674 upstream.

Commit 03bbcb2e7e2 (iommu/vt-d: add quirk for broken interrupt
remapping on 55XX chipsets) properly disables irq remapping on the
5500/5520 chipsets that don't correctly perform that feature.

However, when I wrote it, I followed the errata sheet linked in that
commit too closely, and explicitly tied the activation of the quirk to
revision 0x13 of the chip, under the assumption that earlier revisions
were not in the field.  Recently a system was reported to be suffering
from this remap bug and the quirk hadn't triggered, because the
revision id register read at a lower value that 0x13, so the quirk
test failed improperly.  Given this, it seems only prudent to adjust
this quirk so that any revision less than 0x13 has the quirk asserted.

[ tglx: Removed the 0x12 comparison of pci id 3405 as this is covered
    	by the &lt;= 0x13 check already ]

Signed-off-by: Neil Horman &lt;nhorman@tuxdriver.com&gt;
Cc: Ingo Molnar &lt;mingo@redhat.com&gt;
Cc: "H. Peter Anvin" &lt;hpa@zytor.com&gt;
Cc: x86@kernel.org
Link: http://lkml.kernel.org/r/1394649873-14913-1-git-send-email-nhorman@tuxdriver.com
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Signed-off-by: Jiri Slaby &lt;jslaby@suse.cz&gt;
</content>
</entry>
<entry>
<title>powerpc/8xx: mfspr SPRN_TBRx in lieu of mftb/mftbu is not supported</title>
<updated>2014-05-05T12:16:55Z</updated>
<author>
<name>LEROY Christophe</name>
<email>christophe.leroy@c-s.fr</email>
</author>
<published>2013-11-22T16:57:31Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=1e37176ee50aba87e7c4a31bcd588d04706fea03'/>
<id>urn:sha1:1e37176ee50aba87e7c4a31bcd588d04706fea03</id>
<content type='text'>
commit ae2163be10ac6090e7aeed72591e2d7fabb1cdda upstream.

Commit beb2dc0a7a84be003ce54e98b95d65cc66e6e536 breaks the MPC8xx which
seems to not support using mfspr SPRN_TBRx instead of mftb/mftbu
despite what is written in the reference manual.

This patch reverts to the use of mftb/mftbu when CONFIG_8xx is
selected.

Signed-off-by: Christophe Leroy &lt;christophe.leroy@c-s.fr&gt;
Signed-off-by: Scott Wood &lt;scottwood@freescale.com&gt;
Signed-off-by: Jiri Slaby &lt;jslaby@suse.cz&gt;
</content>
</entry>
<entry>
<title>parisc: fix epoll_pwait syscall on compat kernel</title>
<updated>2014-05-05T11:39:49Z</updated>
<author>
<name>Helge Deller</name>
<email>deller@gmx.de</email>
</author>
<published>2014-04-12T22:03:55Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=b7b78ca82179e609592c74afa721f5aca0269625'/>
<id>urn:sha1:b7b78ca82179e609592c74afa721f5aca0269625</id>
<content type='text'>
commit ab3e55b119c9653b19ea4edffb86f04db867ac98 upstream.

This bug was detected with the libio-epoll-perl debian package where the
test case IO-Ppoll-compat.t failed.

Signed-off-by: Helge Deller &lt;deller@gmx.de&gt;
CC: stable@kernel.org   # 3.0+
Signed-off-by: Jiri Slaby &lt;jslaby@suse.cz&gt;
</content>
</entry>
<entry>
<title>x86/quirks: Add workaround for AMD F16h Erratum792</title>
<updated>2014-05-05T11:24:59Z</updated>
<author>
<name>Aravind Gopalakrishnan</name>
<email>Aravind.Gopalakrishnan@amd.com</email>
</author>
<published>2014-01-23T22:13:32Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=8e0a45a8ca903015a88bf5008371cec9ee6ddebc'/>
<id>urn:sha1:8e0a45a8ca903015a88bf5008371cec9ee6ddebc</id>
<content type='text'>
commit fb53a1ab88d14848dc292842e35c3bda3a665997 upstream.

The workaround for this Erratum is included in AGESA. But BIOSes
spun only after Jan2014 will have the fix (atleast server
versions of the chip). The erratum affects both embedded and
server platforms and since we cannot say with certainity that
ALL BIOSes on systems out in the field will have the fix, we
should probably insulate ourselves in case BIOS does not do the
right thing or someone is using old BIOSes.

Refer to Revision Guide for AMD F16h models 00h-0fh, document 51810
Rev. 3.04, November2013 for details on the Erratum.

Tested the patch on Fam16h server platform and it works fine.

Signed-off-by: Aravind Gopalakrishnan &lt;Aravind.Gopalakrishnan@amd.com&gt;
Cc: &lt;hmh@hmh.eng.br&gt;
Cc: &lt;Kim.Naru@amd.com&gt;
Cc: &lt;Suravee.Suthikulpanit@amd.com&gt;
Cc: &lt;bp@suse.de&gt;
Cc: &lt;sherry.hurwitz@amd.com&gt;
Link: http://lkml.kernel.org/r/1390515212-1824-1-git-send-email-Aravind.Gopalakrishnan@amd.com
[ Minor edits. ]
Signed-off-by: Ingo Molnar &lt;mingo@kernel.org&gt;

Signed-off-by: Jiri Slaby &lt;jslaby@suse.cz&gt;
</content>
</entry>
<entry>
<title>ARM: 7840/1: LPAE: don't reject mapping /dev/mem above 4GB</title>
<updated>2014-05-05T09:44:20Z</updated>
<author>
<name>Sergey Dyasly</name>
<email>dserrg@gmail.com</email>
</author>
<published>2013-09-24T15:38:00Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=4aeced5ed3e351ffad601615a11305b6e2eb16e1'/>
<id>urn:sha1:4aeced5ed3e351ffad601615a11305b6e2eb16e1</id>
<content type='text'>
commit 3159f372354e8e1f5dee714663d705dd2c7e0759 upstream.

With LPAE enabled, physical address space is larger than 4GB. Allow mapping any
part of it via /dev/mem by using PHYS_MASK to determine valid range.

PHYS_MASK covers 40 bits with LPAE enabled and 32 bits otherwise.

Reported-by: Vassili Karpov &lt;av1474@comtv.ru&gt;
Signed-off-by: Sergey Dyasly &lt;dserrg@gmail.com&gt;
Acked-by: Catalin Marinas &lt;catalin.marinas@arm.com&gt;
Signed-off-by: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
Signed-off-by: Jiri Slaby &lt;jslaby@suse.cz&gt;
</content>
</entry>
<entry>
<title>crypto: ghash-clmulni-intel - use C implementation for setkey()</title>
<updated>2014-04-18T09:07:21Z</updated>
<author>
<name>Ard Biesheuvel</name>
<email>ard.biesheuvel@linaro.org</email>
</author>
<published>2014-03-27T17:14:40Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=a9149a366f5be56e50e9ec52bad0f616293fb640'/>
<id>urn:sha1:a9149a366f5be56e50e9ec52bad0f616293fb640</id>
<content type='text'>
commit 8ceee72808d1ae3fb191284afc2257a2be964725 upstream.

The GHASH setkey() function uses SSE registers but fails to call
kernel_fpu_begin()/kernel_fpu_end(). Instead of adding these calls, and
then having to deal with the restriction that they cannot be called from
interrupt context, move the setkey() implementation to the C domain.

Note that setkey() does not use any particular SSE features and is not
expected to become a performance bottleneck.

Signed-off-by: Ard Biesheuvel &lt;ard.biesheuvel@linaro.org&gt;
Acked-by: H. Peter Anvin &lt;hpa@linux.intel.com&gt;
Fixes: 0e1227d356e9b (crypto: ghash - Add PCLMULQDQ accelerated implementation)
Signed-off-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
Signed-off-by: Jiri Slaby &lt;jslaby@suse.cz&gt;
</content>
</entry>
<entry>
<title>ARC: [nsimosci] Unbork console</title>
<updated>2014-04-18T09:07:21Z</updated>
<author>
<name>Vineet Gupta</name>
<email>vgupta@synopsys.com</email>
</author>
<published>2014-04-05T10:00:22Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=9fc22da2d59cfdfd15655a97d54269d910471c31'/>
<id>urn:sha1:9fc22da2d59cfdfd15655a97d54269d910471c31</id>
<content type='text'>
commit 61fb4bfc010b0d2940f7fd87acbce6a0f03217cb upstream.

Despite the switch to right UART driver (prev patch), serial console
still doesn't work due to missing CONFIG_SERIAL_OF_PLATFORM

Also fix the default cmdline in DT to not refer to out-of-tree
ARC framebuffer driver for console.

Signed-off-by: Vineet Gupta &lt;vgupta@synopsys.com&gt;
Cc: Francois Bedard &lt;Francois.Bedard@synopsys.com&gt;
Signed-off-by: Jiri Slaby &lt;jslaby@suse.cz&gt;
</content>
</entry>
</feed>
