<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/arch, branch v3.18.15</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=v3.18.15</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=v3.18.15'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2015-06-12T00:51:53+00:00</updated>
<entry>
<title>ARM: OMAP3: Fix booting with thumb2 kernel</title>
<updated>2015-06-12T00:51:53+00:00</updated>
<author>
<name>Tony Lindgren</name>
<email>tony@atomide.com</email>
</author>
<published>2015-06-11T18:47:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=6d1637919e07a42598bebd1c04a9c565cc7ea6da'/>
<id>urn:sha1:6d1637919e07a42598bebd1c04a9c565cc7ea6da</id>
<content type='text'>
We get a NULL pointer dereference on omap3 for thumb2 compiled kernels:

Internal error: Oops: 80000005 [#1] SMP THUMB2
...
[&lt;c046497b&gt;] (_raw_spin_unlock_irqrestore) from [&lt;c0024375&gt;]
(omap3_enter_idle_bm+0xc5/0x178)
[&lt;c0024375&gt;] (omap3_enter_idle_bm) from [&lt;c0374e63&gt;]
(cpuidle_enter_state+0x77/0x27c)
[&lt;c0374e63&gt;] (cpuidle_enter_state) from [&lt;c00627f1&gt;]
(cpu_startup_entry+0x155/0x23c)
[&lt;c00627f1&gt;] (cpu_startup_entry) from [&lt;c06b9a47&gt;]
(start_kernel+0x32f/0x338)
[&lt;c06b9a47&gt;] (start_kernel) from [&lt;8000807f&gt;] (0x8000807f)

The power management related assembly on omaps needs to interact with
ARM mode bootrom code, so we need to keep most of the related assembly
in ARM mode.

Turns out this error is because of missing ENDPROC for assembly code
as suggested by Stephen Boyd &lt;sboyd@codeaurora.org&gt;. Let's fix the
problem by adding ENDPROC in two places to sleep34xx.S.

Let's also remove the now duplicate custom code for mode switching.
This has been unnecessary since commit 6ebbf2ce437b ("ARM: convert
all "mov.* pc, reg" to "bx reg" for ARMv6+").

And let's also remove the comments about local variables, they are
now just confusing after the ENDPROC.

The reason why ENDPROC makes a difference is it sets .type and then
the compiler knows what to do with the thumb bit as explained at:

https://wiki.ubuntu.com/ARM/Thumb2PortingHowto

Reported-by: Kevin Hilman &lt;khilman@kernel.org&gt;
Tested-by: Kevin Hilman &lt;khilman@linaro.org&gt;
Signed-off-by: Tony Lindgren &lt;tony@atomide.com&gt;
(cherry picked from commit d8a50941c91a68da202aaa96a3dacd471ea9c693)
Cc: &lt;stable@vger.kernel.org&gt; # v3.18+
Signed-off-by: Kevin Hilman &lt;khilman@linaro.org&gt;
Signed-off-by: Sasha Levin &lt;sasha.levin@oracle.com&gt;
</content>
</entry>
<entry>
<title>ARC: unbork !LLSC build</title>
<updated>2015-06-10T17:42:46+00:00</updated>
<author>
<name>Vineet Gupta</name>
<email>vgupta@synopsys.com</email>
</author>
<published>2015-05-10T06:34:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=7d3b628cb83c4813a7d1bfae28b9a5b196d808c8'/>
<id>urn:sha1:7d3b628cb83c4813a7d1bfae28b9a5b196d808c8</id>
<content type='text'>
[ Upstream commit daaf40e53b5dbdf75255d58a45ce8ac65ca511a8 ]

Fixes: f7d11e93ee97a locking,arch,arc: Fold atomic_ops
Cc: &lt;stable@kernel.vger.org&gt; # 3.18
Signed-off-by: Vineet Gupta &lt;vgupta@synopsys.com&gt;
Signed-off-by: Sasha Levin &lt;sasha.levin@oracle.com&gt;
</content>
</entry>
<entry>
<title>parisc,metag: Fix crashes due to stack randomization on stack-grows-upwards architectures</title>
<updated>2015-06-10T17:42:33+00:00</updated>
<author>
<name>Helge Deller</name>
<email>deller@gmx.de</email>
</author>
<published>2015-05-11T20:01:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=6fa3566b04207140b2f61813333baa554f0090af'/>
<id>urn:sha1:6fa3566b04207140b2f61813333baa554f0090af</id>
<content type='text'>
[ Upstream commit d045c77c1a69703143a36169c224429c48b9eecd ]

On architectures where the stack grows upwards (CONFIG_STACK_GROWSUP=y,
currently parisc and metag only) stack randomization sometimes leads to crashes
when the stack ulimit is set to lower values than STACK_RND_MASK (which is 8 MB
by default if not defined in arch-specific headers).

The problem is, that when the stack vm_area_struct is set up in fs/exec.c, the
additional space needed for the stack randomization (as defined by the value of
STACK_RND_MASK) was not taken into account yet and as such, when the stack
randomization code added a random offset to the stack start, the stack
effectively got smaller than what the user defined via rlimit_max(RLIMIT_STACK)
which then sometimes leads to out-of-stack situations and crashes.

This patch fixes it by adding the maximum possible amount of memory (based on
STACK_RND_MASK) which theoretically could be added by the stack randomization
code to the initial stack size. That way, the user-defined stack size is always
guaranteed to be at minimum what is defined via rlimit_max(RLIMIT_STACK).

This bug is currently not visible on the metag architecture, because on metag
STACK_RND_MASK is defined to 0 which effectively disables stack randomization.

The changes to fs/exec.c are inside an "#ifdef CONFIG_STACK_GROWSUP"
section, so it does not affect other platformws beside those where the
stack grows upwards (parisc and metag).

Signed-off-by: Helge Deller &lt;deller@gmx.de&gt;
Cc: linux-parisc@vger.kernel.org
Cc: James Hogan &lt;james.hogan@imgtec.com&gt;
Cc: linux-metag@vger.kernel.org
Cc: stable@vger.kernel.org # v3.16+
Signed-off-by: Sasha Levin &lt;sasha.levin@oracle.com&gt;
</content>
</entry>
<entry>
<title>ARM: fix missing syscall trace exit</title>
<updated>2015-06-10T17:42:33+00:00</updated>
<author>
<name>Russell King</name>
<email>rmk+kernel@arm.linux.org.uk</email>
</author>
<published>2015-05-15T10:02:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=40b09824118a183f5ab0f6d4161911d505e62ee8'/>
<id>urn:sha1:40b09824118a183f5ab0f6d4161911d505e62ee8</id>
<content type='text'>
[ Upstream commit 1b97937246d8b97c0760d16d8992c7937bdf5e6a ]

Josh Stone reports:

  I've discovered a case where both arm and arm64 will miss a ptrace
  syscall-exit that they should report.  If the syscall is entered
  without TIF_SYSCALL_TRACE set, then it goes on the fast path.  It's
  then possible to have TIF_SYSCALL_TRACE added in the middle of the
  syscall, but ret_fast_syscall doesn't check this flag again.

Fix this by always checking for a syscall trace in the fast exit path.

Reported-by: Josh Stone &lt;jistone@redhat.com&gt;
Signed-off-by: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
Signed-off-by: Sasha Levin &lt;sasha.levin@oracle.com&gt;
</content>
</entry>
<entry>
<title>ARM: dts: imx27: only map 4 Kbyte for fec registers</title>
<updated>2015-06-10T17:42:32+00:00</updated>
<author>
<name>Philippe Reynes</name>
<email>tremyfr@gmail.com</email>
</author>
<published>2015-05-12T22:18:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=62267afe2eb7bddbd98b7f15756623156df4456c'/>
<id>urn:sha1:62267afe2eb7bddbd98b7f15756623156df4456c</id>
<content type='text'>
[ Upstream commit a29ef819f3f34f89a1b9b6a939b4c1cdfe1e85ce ]

According to the imx27 documentation, fec has a 4 Kbyte
memory space map. Moreover, the actual 16 Kbyte mapping
overlaps the SCC (Security Controller) memory register
space. So, we reduce the memory register space to 4 Kbyte.

Signed-off-by: Philippe Reynes &lt;tremyfr@gmail.com&gt;
Acked-by: Uwe Kleine-König &lt;u.kleine-koenig@pengutronix.de&gt;
Fixes: 9f0749e3eb88 ("ARM i.MX27: Add devicetree support")
Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Shawn Guo &lt;shawn.guo@linaro.org&gt;
Signed-off-by: Sasha Levin &lt;sasha.levin@oracle.com&gt;
</content>
</entry>
<entry>
<title>ARM: 8356/1: mm: handle non-pmd-aligned end of RAM</title>
<updated>2015-06-10T17:42:31+00:00</updated>
<author>
<name>Mark Rutland</name>
<email>mark.rutland@arm.com</email>
</author>
<published>2015-05-13T14:07:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=f0e61cb8cb9ee2c0496439e09d150d66d2b47982'/>
<id>urn:sha1:f0e61cb8cb9ee2c0496439e09d150d66d2b47982</id>
<content type='text'>
[ Upstream commit 965278dcb8ab0b1f666cc47937933c4be4aea48d ]

At boot time we round the memblock limit down to section size in an
attempt to ensure that we will have mapped this RAM with section
mappings prior to allocating from it. When mapping RAM we iterate over
PMD-sized chunks, creating these section mappings.

Section mappings are only created when the end of a chunk is aligned to
section size. Unfortunately, with classic page tables (where PMD_SIZE is
2 * SECTION_SIZE) this means that if a chunk is between 1M and 2M in
size the first 1M will not be mapped despite having been accounted for
in the memblock limit. This has been observed to result in page tables
being allocated from unmapped memory, causing boot-time hangs.

This patch modifies the memblock limit rounding to always round down to
PMD_SIZE instead of SECTION_SIZE. For classic MMU this means that we
will round the memblock limit down to a 2M boundary, matching the limits
on section mappings, and preventing allocations from unmapped memory.
For LPAE there should be no change as PMD_SIZE == SECTION_SIZE.

Signed-off-by: Mark Rutland &lt;mark.rutland@arm.com&gt;
Reported-by: Stefan Agner &lt;stefan@agner.ch&gt;
Tested-by: Stefan Agner &lt;stefan@agner.ch&gt;
Acked-by: Laura Abbott &lt;labbott@redhat.com&gt;
Tested-by: Hans de Goede &lt;hdegoede@redhat.com&gt;
Cc: Catalin Marinas &lt;catalin.marinas@arm.com&gt;
Cc: Steve Capper &lt;steve.capper@linaro.org&gt;
Cc: stable@vger.kernel.org
Signed-off-by: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
Signed-off-by: Sasha Levin &lt;sasha.levin@oracle.com&gt;
</content>
</entry>
<entry>
<title>s390/mm: correct return value of pmd_pfn</title>
<updated>2015-06-10T17:42:30+00:00</updated>
<author>
<name>Martin Schwidefsky</name>
<email>schwidefsky@de.ibm.com</email>
</author>
<published>2015-05-13T12:33:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=71b400b61c03f9982187a92d14ad643d9aa76bff'/>
<id>urn:sha1:71b400b61c03f9982187a92d14ad643d9aa76bff</id>
<content type='text'>
[ Upstream commit 7cded342c09f633666e71ee1ce048f218a9c5836 ]

Git commit 152125b7a882df36a55a8eadbea6d0edf1461ee7
"s390/mm: implement dirty bits for large segment table entries"
broke the pmd_pfn function, it changed the return value from
'unsigned long' to 'int'. This breaks all machine configurations
with memory above the 8TB line.

Cc: stable@vger.kernel.org # 3.17+
Signed-off-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
Signed-off-by: Sasha Levin &lt;sasha.levin@oracle.com&gt;
</content>
</entry>
<entry>
<title>crypto: s390/ghash - Fix incorrect ghash icv buffer handling.</title>
<updated>2015-06-10T17:42:28+00:00</updated>
<author>
<name>Harald Freudenberger</name>
<email>freude@linux.vnet.ibm.com</email>
</author>
<published>2015-05-21T08:01:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=f09aa7ad8b9b63548b8e8302b05eefc60c200944'/>
<id>urn:sha1:f09aa7ad8b9b63548b8e8302b05eefc60c200944</id>
<content type='text'>
[ Upstream commit a1cae34e23b1293eccbcc8ee9b39298039c3952a ]

Multitheaded tests showed that the icv buffer in the current ghash
implementation is not handled correctly. A move of this working ghash
buffer value to the descriptor context fixed this. Code is tested and
verified with an multithreaded application via af_alg interface.

Cc: stable@vger.kernel.org
Signed-off-by: Harald Freudenberger &lt;freude@linux.vnet.ibm.com&gt;
Signed-off-by: Gerald Schaefer &lt;geraldsc@linux.vnet.ibm.com&gt;
Reported-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
Signed-off-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
Signed-off-by: Sasha Levin &lt;sasha.levin@oracle.com&gt;
</content>
</entry>
<entry>
<title>arm64: bpf: fix signedness bug in loading 64-bit immediate</title>
<updated>2015-06-10T17:42:27+00:00</updated>
<author>
<name>Xi Wang</name>
<email>xi.wang@gmail.com</email>
</author>
<published>2015-05-08T05:39:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=a45b402bb2ec47fcb140d86098f035382680a31d'/>
<id>urn:sha1:a45b402bb2ec47fcb140d86098f035382680a31d</id>
<content type='text'>
[ Upstream commit 1e4df6b7208140f3c49f316d33a409d3a161f350 ]

Consider "(u64)insn1.imm &lt;&lt; 32 | imm" in the arm64 JIT.  Since imm is
signed 32-bit, it is sign-extended to 64-bit, losing the high 32 bits.
The fix is to convert imm to u32 first, which will be zero-extended to
u64 implicitly.

Cc: Zi Shen Lim &lt;zlim.lnx@gmail.com&gt;
Cc: Alexei Starovoitov &lt;ast@plumgrid.com&gt;
Cc: Catalin Marinas &lt;catalin.marinas@arm.com&gt;
Cc: &lt;stable@vger.kernel.org&gt;
Fixes: 30d3d94cc3d5 ("arm64: bpf: add 'load 64-bit immediate' instruction")
Signed-off-by: Xi Wang &lt;xi.wang@gmail.com&gt;
[will: removed non-arm64 bits and redundant casting]
Signed-off-by: Will Deacon &lt;will.deacon@arm.com&gt;

Signed-off-by: Sasha Levin &lt;sasha.levin@oracle.com&gt;
</content>
</entry>
<entry>
<title>powerpc: Align TOC to 256 bytes</title>
<updated>2015-06-10T17:42:21+00:00</updated>
<author>
<name>Anton Blanchard</name>
<email>anton@samba.org</email>
</author>
<published>2015-05-14T04:45:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=00f255cfbb795222c0bef47c019f9350197c4c2d'/>
<id>urn:sha1:00f255cfbb795222c0bef47c019f9350197c4c2d</id>
<content type='text'>
[ Upstream commit 5e95235ccd5442d4a4fe11ec4eb99ba1b7959368 ]

Recent toolchains force the TOC to be 256 byte aligned. We need
to enforce this alignment in our linker script, otherwise pointers
to our TOC variables (__toc_start, __prom_init_toc_start) could
be incorrect.

If they are bad, we die a few hundred instructions into boot.

Cc: stable@vger.kernel.org
Signed-off-by: Anton Blanchard &lt;anton@samba.org&gt;
Signed-off-by: Michael Ellerman &lt;mpe@ellerman.id.au&gt;
Signed-off-by: Sasha Levin &lt;sasha.levin@oracle.com&gt;
</content>
</entry>
</feed>
