<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/arch/powerpc/xmon, branch linux-4.17.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.17.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.17.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2018-03-30T22:09:36Z</updated>
<entry>
<title>Merge branch 'topic/paca' into next</title>
<updated>2018-03-30T22:09:36Z</updated>
<author>
<name>Michael Ellerman</name>
</author>
<published>2018-03-30T13:11:24Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f437c51748fa1dd423a878c870ad203843a51c8d'/>
<id>urn:sha1:f437c51748fa1dd423a878c870ad203843a51c8d</id>
<content type='text'>
Bring in yet another series that touches KVM code, and might need to
be merged into the kvm-ppc branch to resolve conflicts.

This required some changes in pnv_power9_force_smt4_catch/release()
due to the paca array becomming an array of pointers.
</content>
</entry>
<entry>
<title>powerpc/64: Use array of paca pointers and allocate pacas individually</title>
<updated>2018-03-30T12:34:23Z</updated>
<author>
<name>Nicholas Piggin</name>
</author>
<published>2018-02-13T15:08:12Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d2e60075a3d4422dc54b919f3b125d8066b839d4'/>
<id>urn:sha1:d2e60075a3d4422dc54b919f3b125d8066b839d4</id>
<content type='text'>
Change the paca array into an array of pointers to pacas. Allocate
pacas individually.

This allows flexibility in where the PACAs are allocated. Future work
will allocate them node-local. Platforms that don't have address limits
on PACAs would be able to defer PACA allocations until later in boot
rather than allocate all possible ones up-front then freeing unused.

This is slightly more overhead (one additional indirection) for cross
CPU paca references, but those aren't too common.

Signed-off-by: Nicholas Piggin &lt;npiggin@gmail.com&gt;
Signed-off-by: Michael Ellerman &lt;mpe@ellerman.id.au&gt;
</content>
</entry>
<entry>
<title>Merge branch 'topic/ppc-kvm' into next</title>
<updated>2018-03-27T12:55:49Z</updated>
<author>
<name>Michael Ellerman</name>
</author>
<published>2018-03-27T12:55:49Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c0b346729b5dd3c7d0232f043f5b15947ffc7978'/>
<id>urn:sha1:c0b346729b5dd3c7d0232f043f5b15947ffc7978</id>
<content type='text'>
Merge the DAWR series, which touches arch code and KVM code and may need
to be merged into the kvm-ppc tree.
</content>
</entry>
<entry>
<title>powerpc: Update xmon to use ppc_breakpoint_available()</title>
<updated>2018-03-27T12:55:11Z</updated>
<author>
<name>Michael Neuling</name>
</author>
<published>2018-03-27T04:37:19Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9bc2bd5d9d8d3eddf410075e2eea70bb493dfa26'/>
<id>urn:sha1:9bc2bd5d9d8d3eddf410075e2eea70bb493dfa26</id>
<content type='text'>
The 'bd' command will now print an error and not set the breakpoint on
P9.

Signed-off-by: Michael Neuling &lt;mikey@neuling.org&gt;
[mpe: Unsplit quoted string]
Signed-off-by: Michael Ellerman &lt;mpe@ellerman.id.au&gt;
</content>
</entry>
<entry>
<title>powerpc/xmon: Move empty plpar_set_ciabr() into plpar_wrappers.h</title>
<updated>2018-03-13T12:43:04Z</updated>
<author>
<name>Michael Ellerman</name>
</author>
<published>2018-03-08T02:54:42Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ab83dc794c9d8870e4844cca9a2945b782b8ee7e'/>
<id>urn:sha1:ab83dc794c9d8870e4844cca9a2945b782b8ee7e</id>
<content type='text'>
Now that plpar_wrappers.h has an #ifdef PSERIES we can move the empty
version of plpar_set_ciabr() which xmon wants into there.

Signed-off-by: Michael Ellerman &lt;mpe@ellerman.id.au&gt;
</content>
</entry>
<entry>
<title>powerpc: Rename plapr routines to plpar</title>
<updated>2018-03-13T12:43:04Z</updated>
<author>
<name>Michael Ellerman</name>
</author>
<published>2018-03-08T02:54:41Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7c09c1869c9ceb8b356e23161d2ceb0ed0849ac5'/>
<id>urn:sha1:7c09c1869c9ceb8b356e23161d2ceb0ed0849ac5</id>
<content type='text'>
Back in 2013 we added some hypercall wrappers which misspelled
"plpar" (P-series Logical PARtition) as "plapr".

Visually they're hard to distinguish and it almost doesn't matter, but
it is confusing when grepping to miss some calls because of the typo.

They've also started spreading, so before they take over let's fix
them all to be "plpar".

Signed-off-by: Michael Ellerman &lt;mpe@ellerman.id.au&gt;
</content>
</entry>
<entry>
<title>powerpc/xmon: Clear all breakpoints when xmon is disabled via debugfs</title>
<updated>2018-03-13T04:50:05Z</updated>
<author>
<name>Vaibhav Jain</name>
</author>
<published>2018-03-04T17:31:32Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=1ff3b404019adf9d605224e1dce0677a0375d274'/>
<id>urn:sha1:1ff3b404019adf9d605224e1dce0677a0375d274</id>
<content type='text'>
Presently when xmon is disabled by debugfs any existing
instruction/data-access breakpoints set are not disabled. This may
lead to kernel oops when those breakpoints are hit as the necessary
debugger hooks aren't installed.

Hence this patch introduces a new function named clear_all_bpt() which
is called when xmon is disabled via debugfs. The function will
unpatch/clear all the trap and ciabr/dab based breakpoints.

Signed-off-by: Vaibhav Jain &lt;vaibhav@linux.vnet.ibm.com&gt;
Reviewed-by: Balbir Singh &lt;bsingharora@gmail.com&gt;
[mpe: Fix build break when CONFIG_DEBUG_FS=n]
Signed-off-by: Michael Ellerman &lt;mpe@ellerman.id.au&gt;
</content>
</entry>
<entry>
<title>powerpc/xmon: Setup debugger hooks when first break-point is set</title>
<updated>2018-03-13T04:10:16Z</updated>
<author>
<name>Vaibhav Jain</name>
</author>
<published>2018-03-04T17:30:25Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e1368d0c9edbc366e45216e7295fd61ae55c2b12'/>
<id>urn:sha1:e1368d0c9edbc366e45216e7295fd61ae55c2b12</id>
<content type='text'>
Presently sysrq key for xmon('x') is registered during kernel init
irrespective of the value of kernel param 'xmon'. Thus xmon is enabled
even if 'xmon=off' is passed on the kernel command line. However this
doesn't enable the kernel debugger hooks needed for instruction or
data breakpoints. Thus when a break-point is hit with xmon=off a
kernel oops of the form below is reported:

  Oops: Exception in kernel mode, sig: 5 [#1]
  &lt; snip &gt;
  Trace/breakpoint trap

To fix this the patch checks and enables debugger hooks when an
instruction or data break-point is set via xmon console.

Signed-off-by: Vaibhav Jain &lt;vaibhav@linux.vnet.ibm.com&gt;
Reviewed-by: Balbir Singh &lt;bsingharora@gmail.com&gt;
[mpe: Just printf directly, no need for static const char[]]
Signed-off-by: Michael Ellerman &lt;mpe@ellerman.id.au&gt;
</content>
</entry>
<entry>
<title>powerpc/64s: Improve RFI L1-D cache flush fallback</title>
<updated>2018-01-23T05:16:33Z</updated>
<author>
<name>Nicholas Piggin</name>
</author>
<published>2018-01-17T13:58:18Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=bdcb1aefc5b3f7d0f1dc8b02673602bca2ff7a4b'/>
<id>urn:sha1:bdcb1aefc5b3f7d0f1dc8b02673602bca2ff7a4b</id>
<content type='text'>
The fallback RFI flush is used when firmware does not provide a way
to flush the cache. It's a "displacement flush" that evicts useful
data by displacing it with an uninteresting buffer.

The flush has to take care to work with implementation specific cache
replacment policies, so the recipe has been in flux. The initial
slow but conservative approach is to touch all lines of a congruence
class, with dependencies between each load. It has since been
determined that a linear pattern of loads without dependencies is
sufficient, and is significantly faster.

Measuring the speed of a null syscall with RFI fallback flush enabled
gives the relative improvement:

P8 - 1.83x
P9 - 1.75x

The flush also becomes simpler and more adaptable to different cache
geometries.

Signed-off-by: Nicholas Piggin &lt;npiggin@gmail.com&gt;
Signed-off-by: Michael Ellerman &lt;mpe@ellerman.id.au&gt;
</content>
</entry>
<entry>
<title>powerpc/xmon: Do not compute/store the major opcode</title>
<updated>2018-01-21T12:37:43Z</updated>
<author>
<name>Mathieu Malaterre</name>
</author>
<published>2017-12-26T13:25:47Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=104d55ae4df928c205268c1eb83b806b53027e13'/>
<id>urn:sha1:104d55ae4df928c205268c1eb83b806b53027e13</id>
<content type='text'>
In commit 5b102782c7f4 ("powerpc/xmon: Enable disassembly files (compilation
changes)") usage of variable `op` has been removed. Completely remove opcode
computation since not used anymore.

Fix fatal warning:

arch/powerpc/xmon/ppc-dis.c: In function ‘lookup_powerpc’:
arch/powerpc/xmon/ppc-dis.c:96:17: error: variable ‘op’ set but not used [-Werror=unused-but-set-variable]
   unsigned long op;
                 ^~

Signed-off-by: Mathieu Malaterre &lt;malat@debian.org&gt;
Signed-off-by: Michael Ellerman &lt;mpe@ellerman.id.au&gt;
</content>
</entry>
</feed>
