<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/arch/s390/kernel/early.c, branch linux-4.10.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.10.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.10.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2016-12-14T15:33:40Z</updated>
<entry>
<title>s390: fix compile error with memmove_early() inline assembly</title>
<updated>2016-12-14T15:33:40Z</updated>
<author>
<name>Heiko Carstens</name>
</author>
<published>2016-12-13T14:58:16Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=75a357341e7c9d3893405ea6f9d722036012dd1f'/>
<id>urn:sha1:75a357341e7c9d3893405ea6f9d722036012dd1f</id>
<content type='text'>
Old gcc versions can't handle a bogus early clobber on a Q constraint:

arch/s390/kernel/early.c: In function 'memmove_early.part.1':
arch/s390/kernel/early.c:432:2: error: '&amp;' constraint used with no register class

Simply remove it to fix this.

Reported-by: Stefan Haberland &lt;sth@linux.vnet.ibm.com&gt;
Fixes: d543a106f96d ("s390: fix initrd corruptions with gcov/kcov instrumented kernels")
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 initrd corruptions with gcov/kcov instrumented kernels</title>
<updated>2016-12-12T11:11:20Z</updated>
<author>
<name>Heiko Carstens</name>
</author>
<published>2016-12-06T14:52:10Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d543a106f96d6f15e4507cf349128912d44356d9'/>
<id>urn:sha1:d543a106f96d6f15e4507cf349128912d44356d9</id>
<content type='text'>
The early C code within arch/s390/kernel/early.c saves ipl parameters
before the bss section is cleared. When doing that it jumps to code
that is potentially gcov/kcov instrumented. That code in turn will
corrupt an initrd that potentially may reside in the not yet ready to
be used bss section.

Instead of excluding more and more code from gcov/kcov instrumentation
provide an early memmove function which will be used to save ipl
parameters. The verification if these parameters are actually valid
will be done later.

Reviewed-by: Peter Oberparleiter &lt;oberpar@linux.vnet.ibm.com&gt;
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/preempt: move preempt_count to the lowcore</title>
<updated>2016-11-11T15:37:40Z</updated>
<author>
<name>Martin Schwidefsky</name>
</author>
<published>2016-10-25T10:21:44Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c360192bf4a8dc72f102dd6a4e1bf8bd0b404cfa'/>
<id>urn:sha1:c360192bf4a8dc72f102dd6a4e1bf8bd0b404cfa</id>
<content type='text'>
Convert s390 to use a field in the struct lowcore for the CPU
preemption count. It is a bit cheaper to access a lowcore field
compared to a thread_info variable and it removes the depencency
on a task related structure.

bloat-o-meter on the vmlinux image for the default configuration
(CONFIG_PREEMPT_NONE=y) reports a small reduction in text size:

add/remove: 0/0 grow/shrink: 18/578 up/down: 228/-5448 (-5220)

A larger improvement is achieved with the default configuration
but with CONFIG_PREEMPT=y and CONFIG_DEBUG_PREEMPT=n:

add/remove: 2/6 grow/shrink: 59/4477 up/down: 1618/-228762 (-227144)

Reviewed-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: refactor clock sync</title>
<updated>2016-10-28T08:09:02Z</updated>
<author>
<name>Martin Schwidefsky</name>
</author>
<published>2016-10-10T07:43:41Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b1c0854d168cc5741e9568556e7d7cc3873c9cdc'/>
<id>urn:sha1:b1c0854d168cc5741e9568556e7d7cc3873c9cdc</id>
<content type='text'>
Merge clock_sync_cpu into stp_sync_clock and split out the update
of the global and per-CPU clock fields into clock_sync_global
and clock_sync_local.

Signed-off-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
</content>
</entry>
<entry>
<title>s390: migrate exception table users off module.h and onto extable.h</title>
<updated>2016-09-20T12:26:38Z</updated>
<author>
<name>Paul Gortmaker</name>
</author>
<published>2016-09-19T21:54:56Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=dcc096c540d794456c1edbe6d55b9d611c86e8db'/>
<id>urn:sha1:dcc096c540d794456c1edbe6d55b9d611c86e8db</id>
<content type='text'>
These files were only including module.h for exception table
related functions.  We've now separated that content out into its
own file "extable.h" so now move over to that and avoid all the
extra header content in module.h that we don't really need to compile
these files.

The additions of uaccess.h are to deal with implict includes like:

arch/s390/kernel/traps.c: In function 'do_report_trap':
arch/s390/kernel/traps.c:56:4: error: implicit declaration of function 'extable_fixup' [-Werror=implicit-function-declaration]
arch/s390/kernel/traps.c: In function 'illegal_op':
arch/s390/kernel/traps.c:173:3: error: implicit declaration of function 'get_user' [-Werror=implicit-function-declaration]

Cc: Heiko Carstens &lt;heiko.carstens@de.ibm.com&gt;
Cc: linux-s390@vger.kernel.org
Signed-off-by: Paul Gortmaker &lt;paul.gortmaker@windriver.com&gt;
Signed-off-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
</content>
</entry>
<entry>
<title>s390/time: LPAR offset handling</title>
<updated>2016-06-13T13:58:20Z</updated>
<author>
<name>Martin Schwidefsky</name>
</author>
<published>2016-05-31T08:16:24Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4027789192d149678262ad606b2d7e2a61bed0f2'/>
<id>urn:sha1:4027789192d149678262ad606b2d7e2a61bed0f2</id>
<content type='text'>
It is possible to specify a user offset for the TOD clock, e.g. +2 hours.
The TOD clock will carry this offset even if the clock is synchronized
with STP. This makes the time stamps acquired with get_sync_clock()
useless as another LPAR migth use a different TOD offset.

Use the PTFF instrution to get the TOD epoch difference and subtract
it from the TOD clock value to get a physical timestamp. As the epoch
difference contains the sync check delta as well the LPAR offset value
to the physical clock needs to be refreshed after each clock
synchronization.

Signed-off-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
</content>
</entry>
<entry>
<title>s390: dump_stack: fill in arch description</title>
<updated>2016-06-13T13:58:18Z</updated>
<author>
<name>Christian Borntraeger</name>
</author>
<published>2016-05-24T13:23:20Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4b8fe77ace2779e019863f9c166c15dc5bac5a24'/>
<id>urn:sha1:4b8fe77ace2779e019863f9c166c15dc5bac5a24</id>
<content type='text'>
Lets provide the basic machine information for dump_stack on
s390. This enables the "Hardware name:" line and results in
output like

[...]
Oops: 0004 ilc:2 [#1] SMP
Modules linked in:
CPU: 1 PID: 74 Comm: sh Not tainted 4.5.0+ #205
Hardware name: IBM              2964 NC9              704	(KVM)
[...]

Signed-off-by: Christian Borntraeger &lt;borntraeger@de.ibm.com&gt;
Acked-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>locking/lockdep: Eliminate lockdep_init()</title>
<updated>2016-02-09T11:03:25Z</updated>
<author>
<name>Andrey Ryabinin</name>
</author>
<published>2016-02-04T19:29:36Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=06bea3dbfe6a4c333c4333362c46bdf4d9e43504'/>
<id>urn:sha1:06bea3dbfe6a4c333c4333362c46bdf4d9e43504</id>
<content type='text'>
Lockdep is initialized at compile time now.  Get rid of lockdep_init().

Signed-off-by: Andrey Ryabinin &lt;aryabinin@virtuozzo.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Cc: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Cc: Mike Krinkin &lt;krinkin.m.u@gmail.com&gt;
Cc: Paul E. McKenney &lt;paulmck@linux.vnet.ibm.com&gt;
Cc: Peter Zijlstra &lt;peterz@infradead.org&gt;
Cc: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Cc: linux-kernel@vger.kernel.org
Cc: mm-commits@vger.kernel.org
Signed-off-by: Ingo Molnar &lt;mingo@kernel.org&gt;
</content>
</entry>
<entry>
<title>s390: remove all usages of PSW_ADDR_INSN</title>
<updated>2016-01-19T11:14:03Z</updated>
<author>
<name>Heiko Carstens</name>
</author>
<published>2016-01-18T12:12:19Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9cb1ccecb69d133e014b7be4de2609f689398c07'/>
<id>urn:sha1:9cb1ccecb69d133e014b7be4de2609f689398c07</id>
<content type='text'>
Yet another leftover from the 31 bit era. The usual operation
"y = x &amp; PSW_ADDR_INSN" with the PSW_ADDR_INSN mask is a nop for
CONFIG_64BIT.

Therefore remove all usages and hope the code is a bit less confusing.

Signed-off-by: Heiko Carstens &lt;heiko.carstens@de.ibm.com&gt;
Reviewed-by: David Hildenbrand &lt;dahi@linux.vnet.ibm.com&gt;
</content>
</entry>
<entry>
<title>s390: remove all usages of PSW_ADDR_AMODE</title>
<updated>2016-01-19T11:14:02Z</updated>
<author>
<name>Heiko Carstens</name>
</author>
<published>2016-01-18T11:49:44Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=fecc868a668774b0fc666728c3f5d9f6fceefe64'/>
<id>urn:sha1:fecc868a668774b0fc666728c3f5d9f6fceefe64</id>
<content type='text'>
This is a leftover from the 31 bit area. For CONFIG_64BIT the usual
operation "y = x | PSW_ADDR_AMODE" is a nop. Therefore remove all
usages of PSW_ADDR_AMODE and make the code a bit less confusing.

Signed-off-by: Heiko Carstens &lt;heiko.carstens@de.ibm.com&gt;
Reviewed-by: David Hildenbrand &lt;dahi@linux.vnet.ibm.com&gt;
</content>
</entry>
</feed>
