<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/arch/s390/kernel/vdso64, branch linux-3.19.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.19.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.19.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2014-10-27T12:27:02Z</updated>
<entry>
<title>s390/vdso: fix stack corruption</title>
<updated>2014-10-27T12:27:02Z</updated>
<author>
<name>Heiko Carstens</name>
</author>
<published>2014-10-27T07:28:08Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9b2efe035eafb1a29ff3dfe21ed0e755aac09130'/>
<id>urn:sha1:9b2efe035eafb1a29ff3dfe21ed0e755aac09130</id>
<content type='text'>
The kernel provided vdso functions do not get a stack frame from the
calling function and therefore may not change the stack contents, unless
they allocate space on their own.

This problem was exposed with 070b7be633dc "s390/vdso: replace stck with
stcke" which writes 16 bytes instead of 8 bytes into the stack frame. These
additional 8 bytes however were indeed used by the caller (glibc) to save
data and therefore this data was corrupted by the vdso code.

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/vdso: add vdso support for coarse clocks</title>
<updated>2014-09-09T06:53:27Z</updated>
<author>
<name>Martin Schwidefsky</name>
</author>
<published>2014-08-29T10:31:45Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b7eacb59cd7fb5e98852186e485c0c865f862645'/>
<id>urn:sha1:b7eacb59cd7fb5e98852186e485c0c865f862645</id>
<content type='text'>
Add CLOCK_REALTIME_COARSE and CLOCK_MONOTONIC_COARSE optimization to
the 64-bit and 31-bit vdso.

Signed-off-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
</content>
</entry>
<entry>
<title>s390/vdso: replace stck with stcke</title>
<updated>2014-09-09T06:53:27Z</updated>
<author>
<name>Martin Schwidefsky</name>
</author>
<published>2014-08-29T10:44:40Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=070b7be633dc33c0899e8c934b4d5fad046b06e8'/>
<id>urn:sha1:070b7be633dc33c0899e8c934b4d5fad046b06e8</id>
<content type='text'>
If gettimeofday / clock_gettime are called multiple times in a row
the STCK instruction will stall until a difference in the result is
visible. This unnecessarily slows down the vdso calls, use stcke
instead of stck to get rid of the stall.

Signed-off-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
</content>
</entry>
<entry>
<title>s390/vdso: remove NULL pointer check from clock_gettime</title>
<updated>2014-09-01T07:56:29Z</updated>
<author>
<name>Martin Schwidefsky</name>
</author>
<published>2014-08-29T08:16:03Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5da76157a4b7d5f595c846cf5e95f6d085b350e2'/>
<id>urn:sha1:5da76157a4b7d5f595c846cf5e95f6d085b350e2</id>
<content type='text'>
The explicit NULL pointer check on the timespec argument is only
required for clock_getres but not for clock_gettime.

Signed-off-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
</content>
</entry>
<entry>
<title>s390/time,vdso: fix clock_gettime for CLOCK_MONOTONIC</title>
<updated>2013-12-02T17:15:25Z</updated>
<author>
<name>Martin Schwidefsky</name>
</author>
<published>2013-12-02T17:00:36Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ca5de58ba746b08c920b2024aaf01aa1500b110d'/>
<id>urn:sha1:ca5de58ba746b08c920b2024aaf01aa1500b110d</id>
<content type='text'>
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;
</content>
</entry>
<entry>
<title>s390/vdso: ectg gettime support for CLOCK_THREAD_CPUTIME_ID</title>
<updated>2013-12-02T14:31:10Z</updated>
<author>
<name>Martin Schwidefsky</name>
</author>
<published>2013-12-02T13:54:56Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b5e64b3de7fdd1db0a12871f7114fc1da899df8e'/>
<id>urn:sha1:b5e64b3de7fdd1db0a12871f7114fc1da899df8e</id>
<content type='text'>
The code to use the ECTG instruction to calculate the cputime for the
current thread is currently used only for the per-thread CPU-clock
with the clockid -2 (PID=0, VIRT=1). Use the same code for the clockid
CLOCK_THREAD_CPUTIME_ID to speed up the more common clockid as well.

Reported-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/time,vdso: convert to the new update_vsyscall interface</title>
<updated>2013-11-25T08:15:39Z</updated>
<author>
<name>Martin Schwidefsky</name>
</author>
<published>2013-11-22T09:04:53Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=79c74ecbebf76732f91b82a62ce7fc8a88326962'/>
<id>urn:sha1:79c74ecbebf76732f91b82a62ce7fc8a88326962</id>
<content type='text'>
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;
</content>
</entry>
<entry>
<title>s390: add various .gitignore files.</title>
<updated>2012-05-16T12:42:41Z</updated>
<author>
<name>Heiko Carstens</name>
</author>
<published>2012-05-09T14:27:38Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ae73c76ab706a4f8d7e0bf92273242e7e1b43772'/>
<id>urn:sha1:ae73c76ab706a4f8d7e0bf92273242e7e1b43772</id>
<content type='text'>
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] vdso: disable gcov profiling</title>
<updated>2011-05-23T08:24:29Z</updated>
<author>
<name>Peter Oberparleiter</name>
</author>
<published>2011-05-23T08:24:31Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=add7490c273650c3aa8012f3e082aa64af86f17c'/>
<id>urn:sha1:add7490c273650c3aa8012f3e082aa64af86f17c</id>
<content type='text'>
The concepts of VDSO and gcov-based profiling don't mix: the former
includes kernel-provided code running in userspace, the latter adds
instructions that modify counters in kernel data segments. On s390
this has not been a problem so far due to VDSO code being written in
all-assembler which is exempt from gcov-based profiling. This could
change in the future, so disable profiling excplicitly for VDSO code.

Signed-off-by: Peter Oberparleiter &lt;peter.oberparleiter@de.ibm.com&gt;
Signed-off-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
</content>
</entry>
<entry>
<title>[S390] vdso: get rid of redefinition warnings</title>
<updated>2010-10-29T14:50:50Z</updated>
<author>
<name>Heiko Carstens</name>
</author>
<published>2010-10-29T14:50:41Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b3423982bd2ecb7160856ffd6618dbb929c786cc'/>
<id>urn:sha1:b3423982bd2ecb7160856ffd6618dbb929c786cc</id>
<content type='text'>
The CLOCK_* defines in asm-offsets.c are only used for the vdso code
however in the meantime they cause other trouble.
Just rename them to get permanently rid of this:

In file included from /home2/heicarst/linux-2.6/arch/s390/include/asm/asm-offsets.h:1:0,
                 from arch/s390/mm/fault.c:33:
include/generated/asm-offsets.h:53:0: warning: "CLOCK_REALTIME" redefined
include/linux/time.h:286:0: note: this is the location of the previous definition
include/generated/asm-offsets.h:54:0: warning: "CLOCK_MONOTONIC" redefined
include/linux/time.h:287:0: note: this is the location of the previous definition

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>
