<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/arch/s390/kernel, branch v3.12.25</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/arch/s390/kernel?h=v3.12.25</id>
<link rel='self' href='https://git.amat.us/linux/atom/arch/s390/kernel?h=v3.12.25'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2014-04-03T08:32:22Z</updated>
<entry>
<title>s390/time,vdso: fix clock_gettime for CLOCK_MONOTONIC</title>
<updated>2014-04-03T08:32:22Z</updated>
<author>
<name>Martin Schwidefsky</name>
<email>schwidefsky@de.ibm.com</email>
</author>
<published>2013-12-02T17:00:36Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=f01b3751f964df3266ed9e52b1676ff52a91b60f'/>
<id>urn:sha1:f01b3751f964df3266ed9e52b1676ff52a91b60f</id>
<content type='text'>
commit ca5de58ba746b08c920b2024aaf01aa1500b110d upstream.

With git commit 79c74ecbebf76732f91b82a62ce7fc8a88326962
"s390/time,vdso: convert to the new update_vsyscall interface"
the new update_vsyscall function already does the sum of xtime
and wall_to_monotonic. The old update_vsyscall function only
copied the wall_to_monotonic offset. The vdso code needs to be
modified to take this into consideration.

Signed-off-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
Signed-off-by: Jiri Slaby &lt;jslaby@suse.cz&gt;
</content>
</entry>
<entry>
<title>s390,time: revert direct ktime path for s390 clockevent device</title>
<updated>2014-03-12T08:42:16Z</updated>
<author>
<name>Martin Schwidefsky</name>
<email>schwidefsky@de.ibm.com</email>
</author>
<published>2013-11-22T11:04:18Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=ccb738e88b60ec21a96f8f5e11a1857236deb518'/>
<id>urn:sha1:ccb738e88b60ec21a96f8f5e11a1857236deb518</id>
<content type='text'>
commit 8adbf78ec4839c1dc4ff20c9a1f332a7bc99e6e6 upstream.

Git commit 4f37a68cdaf6dea833cfdded2a3e0c47c0f006da
"s390: Use direct ktime path for s390 clockevent device" makes use
of the CLOCK_EVT_FEAT_KTIME clockevent option to avoid the delta
calculation with ktime_get() in clockevents_program_event and the
get_tod_clock() in s390_next_event. This is based on the assumption
that the difference between the internal ktime and the hardware
clock is reflected in the wall_to_monotonic delta. But this is not
true, the ntp corrections are applied via changes to the tk-&gt;mult
multiplier and this is not reflected in wall_to_monotonic.

In theory this could be solved by using the raw monotonic clock
but it is simpler to switch back to the standard clock delta
calculation.

Signed-off-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
Signed-off-by: Jiri Slaby &lt;jslaby@suse.cz&gt;
</content>
</entry>
<entry>
<title>s390/time,vdso: convert to the new update_vsyscall interface</title>
<updated>2014-03-12T08:41:25Z</updated>
<author>
<name>Martin Schwidefsky</name>
<email>schwidefsky@de.ibm.com</email>
</author>
<published>2013-11-22T09:04:53Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=e1a6db9c9503479d7c28c2662b3895b68a7e96ed'/>
<id>urn:sha1:e1a6db9c9503479d7c28c2662b3895b68a7e96ed</id>
<content type='text'>
commit 79c74ecbebf76732f91b82a62ce7fc8a88326962 upstream.

Switch to the improved update_vsyscall interface that provides
sub-nanosecond precision for gettimeofday and clock_gettime.

Signed-off-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
Signed-off-by: Jiri Slaby &lt;jslaby@suse.cz&gt;
</content>
</entry>
<entry>
<title>s390: fix kernel crash due to linkage stack instructions</title>
<updated>2014-02-22T21:32:25Z</updated>
<author>
<name>Martin Schwidefsky</name>
<email>schwidefsky@de.ibm.com</email>
</author>
<published>2014-02-03T16:37:15Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=9ee59d9a5b03f45d9b421b020947846d13f27d08'/>
<id>urn:sha1:9ee59d9a5b03f45d9b421b020947846d13f27d08</id>
<content type='text'>
commit 8d7f6690cedb83456edd41c9bd583783f0703bf0 upstream.

The kernel currently crashes with a low-address-protection exception
if a user space process executes an instruction that tries to use the
linkage stack. Set the base-ASTE origin and the subspace-ASTE origin
of the dispatchable-unit-control-table to point to a dummy ASTE.
Set up control register 15 to point to an empty linkage stack with no
room left.

A user space process with a linkage stack instruction will still crash
but with a different exception which is correctly translated to a
segmentation fault instead of a kernel oops.

Signed-off-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>s390/vtime: correct idle time calculation</title>
<updated>2013-11-29T19:28:12Z</updated>
<author>
<name>Martin Schwidefsky</name>
<email>schwidefsky@de.ibm.com</email>
</author>
<published>2013-10-28T11:15:32Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=00c5535698d5db83a3cd15d7f6a9b95c71044b4d'/>
<id>urn:sha1:00c5535698d5db83a3cd15d7f6a9b95c71044b4d</id>
<content type='text'>
commit 4560e7c3317c7a2b370e36dadd3a3bac2ed70818 upstream.

Use the ACCESS_ONCE macro for both accesses to idle-&gt;sequence in the
loops to calculate the idle time. If only one access uses the macro,
the compiler is free to cache the value for the second access which
can cause endless loops.

Signed-off-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>s390/time: correct use of store clock fast</title>
<updated>2013-10-22T07:16:40Z</updated>
<author>
<name>Martin Schwidefsky</name>
<email>schwidefsky@de.ibm.com</email>
</author>
<published>2013-10-17T10:38:17Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=8c071b0f19dfa230335d22ce56a8fab5bd20cedc'/>
<id>urn:sha1:8c071b0f19dfa230335d22ce56a8fab5bd20cedc</id>
<content type='text'>
The result of the store-clock-fast (STCKF) instruction is a bit fuzzy.
It can happen that the value stored on one CPU is smaller than the value
stored on another CPU, although the order of the stores is the other
way around. This can cause deltas of get_tod_clock() values to become
negative when they should not be.

We need to be more careful with store-clock-fast, this patch partially
reverts git commit e4b7b4238e666682555461fa52eecd74652f36bb "time:
always use stckf instead of stck if available". The get_tod_clock()
function now uses the store-clock-extended (STCKE) instruction.
get_tod_clock_fast() can be used if the fuzziness of store-clock-fast
is acceptable e.g. for wait loops local to a CPU.

Signed-off-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
</content>
</entry>
<entry>
<title>s390/compat,signal: fix return value of copy_siginfo_(to|from)_user32()</title>
<updated>2013-10-15T11:47:59Z</updated>
<author>
<name>Heiko Carstens</name>
<email>heiko.carstens@de.ibm.com</email>
</author>
<published>2013-10-14T10:09:37Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=0ebfd313fd4baf3fa1bd02d5f106e377595d4987'/>
<id>urn:sha1:0ebfd313fd4baf3fa1bd02d5f106e377595d4987</id>
<content type='text'>
The return value of copy_siginfo_(to|from)_user32() gets passed to
user space, however we do not convert a positive return value from
copy_(to|from)_user to -EFAULT.
Therefore these functions (and the calling system calls) my incorrectly
return a positive number (bytes not copied) instead of -EFAULT.

Signed-off-by: Heiko Carstens &lt;heiko.carstens@de.ibm.com&gt;
Signed-off-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
</content>
</entry>
<entry>
<title>s390: fix system call restart after inferior call</title>
<updated>2013-09-30T11:04:40Z</updated>
<author>
<name>Martin Schwidefsky</name>
<email>schwidefsky@de.ibm.com</email>
</author>
<published>2013-09-27T13:24:38Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=dbbfe487e5f3fc00c9fe5207d63309859704d12f'/>
<id>urn:sha1:dbbfe487e5f3fc00c9fe5207d63309859704d12f</id>
<content type='text'>
Git commit 616498813b11ffef "s390: system call path micro optimization"
introduced a regression in regard to system call restarting and inferior
function calls via the ptrace interface. The pointer to the system call
table needs to be loaded in sysc_sigpending if do_signal returns with
TIF_SYSCALl set after it restored a system call context.

Cc: stable@vger.kernel.org # 3.10+
Signed-off-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
</content>
</entry>
<entry>
<title>s390: Allow vmalloc target buffers for copy_from_oldmem()</title>
<updated>2013-09-30T11:04:40Z</updated>
<author>
<name>Michael Holzheu</name>
<email>holzheu@linux.vnet.ibm.com</email>
</author>
<published>2013-09-27T13:41:43Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=4d3b0664a0d0c0dc7501cfbd067f74226aeca510'/>
<id>urn:sha1:4d3b0664a0d0c0dc7501cfbd067f74226aeca510</id>
<content type='text'>
Currently copy_from_oldmem() is not able to copy to virtual memory.
When using kexec pre-allocated ELF header, copy_from_oldmem()
is used to copy the ELF notes information to vmalloc buffers.

So fix this and use the new function copy_from_realmem() that allows
copying also to vmalloc memory.

Signed-off-by: Michael Holzheu &lt;holzheu@linux.vnet.ibm.com&gt;
Signed-off-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
</content>
</entry>
<entry>
<title>s390/kprobes: add exrl to list of prohibited opcodes</title>
<updated>2013-09-30T11:04:38Z</updated>
<author>
<name>Heiko Carstens</name>
<email>heiko.carstens@de.ibm.com</email>
</author>
<published>2013-09-02T08:22:21Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=742343551165f314c740a41b070d0fc7fbe202f7'/>
<id>urn:sha1:742343551165f314c740a41b070d0fc7fbe202f7</id>
<content type='text'>
"execute relative long" may have all sorts of side effects dependend on
the instructions it executes.
Therefore prohibit setting a kprobe on exrl just like we do for the
regular execute instruction.

Signed-off-by: Heiko Carstens &lt;heiko.carstens@de.ibm.com&gt;
Signed-off-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
</content>
</entry>
</feed>
