On Thu, Apr 28, 2016 at 7:08 PM, Michael Ellerman wrote:
> We're approaching 20 locations where we need to check for ELF ABI v2.
> That's fine, except the logic is a bit awkward, because we have to check
> that _CALL_ELF is defined and then what its value is.
>
> So check it once in asm/types.h an
On 28/04/16 19:38, Michael Ellerman wrote:
> We're approaching 20 locations where we need to check for ELF ABI v2.
> That's fine, except the logic is a bit awkward, because we have to check
> that _CALL_ELF is defined and then what its value is.
>
> So check it once in asm/types.h and define PPC
On Fri, 2016-04-29 at 14:56 +1000, Alexey Kardashevskiy wrote:
> When cfg_dbg() is enabled (i.e. mapped to printk()), gcc produces
> errors as the __func__ parameter is missing (pnv_pci_cfg_read() has one);
> this adds the missing parameter.
Thanks.
But the whole file should just be converted to
On 29/04/16 14:56, Alexey Kardashevskiy wrote:
When cfg_dbg() is enabled (i.e. mapped to printk()), gcc produces
errors as the __func__ parameter is missing (pnv_pci_cfg_read() has one);
this adds the missing parameter.
Signed-off-by: Alexey Kardashevskiy
Reviewed-by: Andrew Donnellan
--
An
When cfg_dbg() is enabled (i.e. mapped to printk()), gcc produces
errors as the __func__ parameter is missing (pnv_pci_cfg_read() has one);
this adds the missing parameter.
Signed-off-by: Alexey Kardashevskiy
---
arch/powerpc/platforms/powernv/pci.c | 2 +-
1 file changed, 1 insertion(+), 1 dele
When XICS_DBG is enabled, gcc produces format errors. This fixes
formats to match passed values types.
Signed-off-by: Alexey Kardashevskiy
---
arch/powerpc/kvm/book3s_xics.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/powerpc/kvm/book3s_xics.c b/arch/powerpc/kvm/
Add #defines for PowerISA 3.0 software defined bits
Signed-off-by: Aneesh Kumar K.V
---
arch/powerpc/include/asm/book3s/64/pgtable.h | 8 ++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/arch/powerpc/include/asm/book3s/64/pgtable.h
b/arch/powerpc/include/asm/book3s/64/pgta
On Mon, Apr 25, 2016 at 11:36:18AM -0700, Caleb Crome wrote:
> The CCSR_SSI_SOR is a register that clears the TX and/or the RX fifo
> on the i.MX SSI port. The fsl_ssi_trigger writes this register in
> order to clear the fifo at trigger time.
>
> However, since the CCSR_SSI_SOR register is not in
On Mon, Apr 25, 2016 at 3:36 PM, Caleb Crome wrote:
> The CCSR_SSI_SOR is a register that clears the TX and/or the RX fifo
> on the i.MX SSI port. The fsl_ssi_trigger writes this register in
> order to clear the fifo at trigger time.
>
> However, since the CCSR_SSI_SOR register is not in the vola
On 2016年04月29日 05:07, Waiman Long wrote:
> On 04/28/2016 06:55 AM, Pan Xinhui wrote:
>> From: Pan Xinhui
>>
>> This patch aims to enable qspinlock on PPC. And on pseries platform, it also
>> support
>> paravirt qspinlock.
>>
>> Signed-off-by: Pan Xinhui
>> ---
>> arch/powerpc/include/asm/qspinl
On 04/28/2016 06:55 AM, Pan Xinhui wrote:
From: Pan Xinhui
This patch aims to enable qspinlock on PPC. And on pseries platform, it also
support
paravirt qspinlock.
Signed-off-by: Pan Xinhui
---
arch/powerpc/include/asm/qspinlock.h | 37 +++
arch/powerpc/include/asm
On 04/28/2016 08:18 AM, Christopher Covington wrote:
> Please take a look at the following prototype of sharing the PowerPC
> VDSO unmap and remap code with other architectures. I've only hooked
> up arm64 to begin with. If folks think this is a reasonable approach I
> can work on 32 bit ARM as wel
Expose the per-task patch state value so users can determine which tasks
are holding up completion of a patching operation.
Signed-off-by: Josh Poimboeuf
---
Documentation/filesystems/proc.txt | 18 ++
fs/proc/base.c | 15 +++
2 files changed, 33 i
Change livepatch to use a basic per-task consistency model. This is the
foundation which will eventually enable us to patch those ~10% of
security patches which change function or data semantics. This is the
biggest remaining piece needed to make livepatch more generally useful.
This code stems
For the consistency model we'll need to know the sizes of the old and
new functions to determine if they're on the stacks of any tasks.
Signed-off-by: Josh Poimboeuf
---
include/linux/livepatch.h | 3 +++
kernel/livepatch/core.c | 16
2 files changed, 19 insertions(+)
diff -
Move functions related to the actual patching of functions and objects
into a new patch.c file.
Signed-off-by: Josh Poimboeuf
---
kernel/livepatch/Makefile | 2 +-
kernel/livepatch/core.c | 202 +--
kernel/livepatch/patch.c | 213 +
klp_patch_object()'s callers already ensure that the object is loaded,
so its call to klp_is_object_loaded() is unnecessary.
This will also make it possible to move the patching code into a
separate file.
Signed-off-by: Josh Poimboeuf
---
kernel/livepatch/core.c | 3 ---
1 file changed, 3 delet
Once we have a consistency model, patches and their objects will be
enabled and disabled at different times. For example, when a patch is
disabled, its loaded objects' funcs can remain registered with ftrace
indefinitely until the unpatching operation is complete and they're no
longer in use.
It'
From: Miroslav Benes
Update a task's patch state when returning from a system call or user
space interrupt, or after handling a signal.
This greatly increases the chances of a patch operation succeeding. If
a task is I/O bound, it can be patched when returning from a system
call. If a task is
From: Jiri Slaby
Group the TIF thread flag bits by their inclusion in the _TIF_WORK and
_TIF_TRACE macros.
Signed-off-by: Jiri Slaby
Signed-off-by: Josh Poimboeuf
---
arch/s390/include/asm/thread_info.h | 22 ++
1 file changed, 14 insertions(+), 8 deletions(-)
diff --git
Add the TIF_PATCH_PENDING thread flag to enable the new livepatch
per-task consistency model for powerpc. The bit getting set indicates
the thread has a pending patch which needs to be applied when the thread
exits the kernel.
The bit is included in the _TIF_USER_WORK_MASK macro so that
do_notify
Add the TIF_PATCH_PENDING thread flag to enable the new livepatch
per-task consistency model for x86_64. The bit getting set indicates
the thread has a pending patch which needs to be applied when the thread
exits the kernel.
The bit is placed in the least-significant word of the thread_info flag
Create temporary stubs for klp_patch_pending() and klp_patch_task() so
we can add TIF_PATCH_PENDING to different architectures in separate
patches without breaking build bisectability.
Signed-off-by: Josh Poimboeuf
---
include/linux/livepatch.h | 7 ++-
kernel/livepatch/core.c | 3 +++
2 f
For live patching and possibly other use cases, a stack trace is only
useful if it can be assured that it's completely reliable. Add a new
save_stack_trace_tsk_reliable() function to achieve that.
Scenarios which indicate that a stack trace may be unreliable:
- running tasks
- interrupt stacks
-
In preparation for being able to determine whether a given stack trace
is reliable, allow the stacktrace_ops functions to propagate errors to
dump_trace().
Signed-off-by: Josh Poimboeuf
---
arch/x86/include/asm/stacktrace.h | 36 +++---
arch/x86/kernel/dumpstack.c | 31
A preempted function might not have had a chance to save the frame
pointer to the stack yet, which can result in its caller getting skipped
on a stack trace.
Add a flag to indicate when the task has been preempted so that stack
dump code can determine whether the stack trace is reliable.
Signed-o
When core_kernel_text() is used to determine whether an address on a
task's stack trace is a kernel text address, it incorrectly returns
false for early text addresses for the head code between the _text and
_stext markers.
Head code is text code too, so mark it as such. This seems to match the
i
Thanks to all the recent x86 entry code refactoring, most tasks' kernel
stacks start at the same offset right above their saved pt_regs,
regardless of which syscall was used to enter the kernel. That creates
a nice convention which makes it straightforward to identify the
"bottom" of the stack, wh
There are two different pieces of code for starting a CPU: start_cpu0()
and the end of secondary_startup_64(). They're identical except for the
stack setup. Combine the common parts into a shared start_cpu()
function.
Signed-off-by: Josh Poimboeuf
---
arch/x86/kernel/head_64.S | 19 +--
The stack_start variable is similar in usage to initial_code and
initial_gs: they're all stored in head_64.S and they're all updated by
SMP and suspend/resume before starting a CPU.
Rename stack_start to initial_stack to be more consistent with the
others.
Also do a few other related cleanups:
-
This is v2 of the livepatch hybrid consistency model, based on
linux-next/master.
v1 of this patch set was posted over a year ago:
https://lkml.kernel.org/r/cover.1423499826.git.jpoim...@redhat.com
The biggest complaint at that time was that stack traces are unreliable.
Since CONFIG_STACK_VALI
On Fri, 8 Apr 2016 14:54:41 +1000
Alexey Kardashevskiy wrote:
> This removes iommu_group_get_iommudata() as the result is never used.
> As this is a minor cleanup, no change in behavior is expected.
>
> Signed-off-by: Alexey Kardashevskiy
> ---
> drivers/vfio/vfio_iommu_spapr_tce.c | 2 --
>
Em Thu, Apr 28, 2016 at 09:44:29PM +0530, Naveen N. Rao escreveu:
> On 2016/04/28 12:29PM, Arnaldo Carvalho de Melo wrote:
> > Em Thu, Apr 28, 2016 at 07:53:41PM +0530, Naveen N. Rao escreveu:
> > > On 2016/04/28 03:01PM, Chandan Kumar wrote:
> > > > This patch set enables perf user stack dump on p
On 2016/04/28 12:29PM, Arnaldo Carvalho de Melo wrote:
> Em Thu, Apr 28, 2016 at 07:53:41PM +0530, Naveen N. Rao escreveu:
> > On 2016/04/28 03:01PM, Chandan Kumar wrote:
> > > This patch set enables perf user stack dump on powerpc
> >
> > For this patch-set:
> > Reviewed-by: Naveen N. Rao
> >
>
Em Thu, Apr 28, 2016 at 07:53:41PM +0530, Naveen N. Rao escreveu:
> On 2016/04/28 03:01PM, Chandan Kumar wrote:
> > This patch set enables perf user stack dump on powerpc
>
> For this patch-set:
> Reviewed-by: Naveen N. Rao
>
> I suppose that implies my testing, but nonetheless:
> Tested-by: Nav
Checkpoint/Restore In Userspace (CRIU) must be able to remap and unmap the
Virtual Dynamic Shared Object (VDSO) to be able to handle the changing
addresses that result from address space layout randomization. Now that the
support for this originally written for PowerPC has been moved to a generic
l
In order to get AArch64 remap and unmap support for the VDSO, like PowerPC
and x86 have, without duplicating the code, we need a common name and type
for the address of the VDSO. An informal survey of the architectures
indicates unsigned long vdso is popular. Change the type in arm64 to be
unsigned
In order to support remapping the VDSO on additional architectures without
duplicating code, move the remap code out from arch/powerpc. Architectures
that wish to use the generic logic must have an unsigned long vdso in
mm->context and can opt in by selecting CONFIG_ARCH_WANT_VDSO_MAP. This
allows
In order to support unmapping the VDSO on additional architectures, move the
unmap code out from arch/powerpc. Architectures that wish to use the generic
logic must have an unsigned long vdso in mm->context and can opt in by
selecting CONFIG_ARCH_WANT_VDSO_MAP. This allows PowerPC to go back to usi
In order to share remap and unmap support for the VDSO with other
architectures without duplicating the code, we need a common name and type
for the address of the VDSO. An informal survey of the architectures
indicates unsigned long vdso is popular. Change the variable name in
powerpc from mm->con
Please take a look at the following prototype of sharing the PowerPC
VDSO unmap and remap code with other architectures. I've only hooked
up arm64 to begin with. If folks think this is a reasonable approach I
can work on 32 bit ARM as well. Not hearing back from an earlier
request for guidance [1],
From: Chris Smart
> Sent: 28 April 2016 00:52
...
> >In that case what actually completes the copy?
> >I think you'd need to be inside a 'restartable atomic sequence'
> >in which case the cp_abort need only be done when the/a RAS
> >block is detected.
> >
> >Or have I missed something??
>
> It's u
On 2016/04/28 03:01PM, Chandan Kumar wrote:
> This patch set enables perf user stack dump on powerpc
For this patch-set:
Reviewed-by: Naveen N. Rao
I suppose that implies my testing, but nonetheless:
Tested-by: Naveen N. Rao
>
> Example with "ls" command as user program
> ./perf record --call
On Wed, 2016-20-04 at 07:59:47 UTC, "Aneesh Kumar K.V" wrote:
> Also the wrong `~` operation resulted in wrong access check as explained
> below.
>
...
> Reviewed-by: Andrew Donnellan
> Acked-by: Ian Munsie
> Signed-off-by: Aneesh Kumar K.V
Applied to powerpc next, thanks.
https://git.kernel.o
On Thu, 2016-21-04 at 10:16:34 UTC, Madhavan Srinivasan wrote:
> Minor cleanup patch to replace the raw event hex values in
> power8-pmu.c with #def.
>
> Signed-off-by: Madhavan Srinivasan
Applied to powerpc next, thanks.
https://git.kernel.org/powerpc/c/5bcca743cb6e3ab97ff400ef92
cheers
_
On Tue, 2016-26-04 at 00:28:50 UTC, Chris Smart wrote:
> The copy paste facility introduced in POWER9 provides an optimised
> mechanism for a userspace application to copy a cacheline. This is
> provided by a pair of instructions, copy and paste, while a third,
> cp_abort (copy paste abort), provid
On Tue, 2016-26-04 at 07:55:04 UTC, Andrew Donnellan wrote:
> mpic_init_sys() currently doesn't check whether
> subsys_system_register() succeeded or not. Check the return code of
> subsys_system_register() and clean up if there's an error.
>
> Signed-off-by: Andrew Donnellan
Applied to powerpc
On Mon, 2016-25-04 at 21:56:14 UTC, Thiago Jung Bauermann wrote:
> In the ppc64 big endian ABI, function symbols point to function
> descriptors. The symbols which point to the function entry points
> have a dot in front of the function name. Consequently, when the
> ftrace filter mechanism searche
On Tue, 2016-26-04 at 05:02:50 UTC, Andrew Donnellan wrote:
> Found by smatch.
>
> Signed-off-by: Andrew Donnellan
> Acked-by: Russell Currey
Applied to powerpc next, thanks.
https://git.kernel.org/powerpc/c/2d5217840ff1d0cf0f88201a92
cheers
___
Lin
On Tue, 2016-26-04 at 13:49:09 UTC, Daniel Axtens wrote:
> Sparse doesn't seem to be passing -maltivec around properly, leading
> to lots of errors:
...
> Only include the altivec.h header for non-__CHECKER__ builds.
> For builds with __CHECKER__, make up some stubs instead, as
> suggested by Balbi
On Sat, 2016-09-04 at 06:14:03 UTC, "Aneesh Kumar K.V" wrote:
> With P9 Radix we need to do
>
> * set UPRT = 1
> * set different TLB set count
>
> In this patch we delay the UPRT=1 to early mmu init. This help us to
> keep the cpu table setup and restore cpu callback the same across
> different M
From: Pan Xinhui
This patch aims to enable qspinlock on PPC. And on pseries platform, it also
support
paravirt qspinlock.
Signed-off-by: Pan Xinhui
---
arch/powerpc/include/asm/qspinlock.h | 37 +++
arch/powerpc/include/asm/qspinlock_paravirt.h | 36
On 2016/04/28 07:38PM, Michael Ellerman wrote:
> We're approaching 20 locations where we need to check for ELF ABI v2.
> That's fine, except the logic is a bit awkward, because we have to check
> that _CALL_ELF is defined and then what its value is.
>
> So check it once in asm/types.h and define P
From: Pan Xinhui
This path aims to enable qspinlock on PPC. And on pseries platform, it also
support
paravirt qspinlock.
Signed-off-by: Pan Xinhui
---
arch/powerpc/include/asm/qspinlock.h | 37 +++
arch/powerpc/include/asm/qspinlock_paravirt.h | 36 +
On 2016年04月28日 15:59, Peter Zijlstra wrote:
> On Wed, Apr 27, 2016 at 05:16:45PM +0800, Pan Xinhui wrote:
>> From: Pan Xinhui
>>
>> Implement xchg{u8,u16}{local,relaxed}, and
>> cmpxchg{u8,u16}{,local,acquire,relaxed}.
>>
>> It works on all ppc.
>>
>> remove volatile of first parameter in __cmpx
On Wed, Apr 27, 2016 at 10:08:08PM +0200, Jiri Kosina wrote:
> On Tue, 26 Apr 2016, Chris J Arges wrote:
>
> [ ... snip ... ]
> > > + + Kretprobes using the ftrace framework conflict with the patched
> >
> > + + Kretprobes using the ftrace framework conflicts with the patched
>
> Chris,
>
>
On 2016年04月27日 22:59, Boqun Feng wrote:
> On Wed, Apr 27, 2016 at 10:50:34PM +0800, Boqun Feng wrote:
>>
>> Sorry, my bad, we can't implement cmpxchg like this.. please ignore
>> this, I should really go to bed soon...
>>
>> But still, we can save the "tmp" for xchg() I think.
>>
>
> No.. we can
With perf regs support enabled for powerpc, the support for obtaining
perf user stack dump is already enabled.
This patch declares the support for same and also updates documentation
to mark the support for perf-regs and perf-stackdump.
Signed-off-by: Chandan Kumar
---
Documentation/features/per
Adds support for unwinding user stack dump by linking with libunwind.
Signed-off-by: Chandan Kumar
---
tools/perf/arch/powerpc/util/Build | 1 +
tools/perf/arch/powerpc/util/unwind-libunwind.c | 96 +
tools/perf/config/Makefile | 1 +
3
From: "Naveen N. Rao"
On some architectures (powerpc in particular), the number of registers
exceeds what can be represented in an integer bitmask. Ensure we
generate the proper bitmask on such platforms.
Fixes: 71ad0f5e4 ("perf tools: Support for DWARF CFI unwinding on post
processing")
Signed
This patch set enables perf user stack dump on powerpc
Example with "ls" command as user program
./perf record --call-graph=dwarf,8192 ls
./perf script
-8< -
..
...
perf 12549 75938.934539: 1771 cycles:ppp:
210d90 .perf_event_exec (/boot/vmlinux)
On Thursday 28 April 2016 09:25:25 Geert Uytterhoeven wrote:
> On Thu, Apr 28, 2016 at 12:34 AM, Arnd Bergmann wrote:
> > --- a/arch/powerpc/platforms/Kconfig
> > +++ b/arch/powerpc/platforms/Kconfig
> > @@ -321,6 +321,17 @@ config OF_RTC
> > Uses information from the OF or flattened dev
On Thursday 28 April 2016 11:08:41 Arnd Bergmann wrote:
> I only see two of them anyway (dreamcast and sh03), so that should
> be easy enough to do. For instance in arch/sh/boards/mach-sh03/rtc.c,
> the sh03_time_init() function should register a platform driver,
> whose probe function calls devm_r
We're approaching 20 locations where we need to check for ELF ABI v2.
That's fine, except the logic is a bit awkward, because we have to check
that _CALL_ELF is defined and then what its value is.
So check it once in asm/types.h and define PPC_ELF_ABI_v2 when ELF ABI
v2 is detected.
We don't add
On Wednesday 27 April 2016 19:21:22 Rich Felker wrote:
> On Thu, Apr 28, 2016 at 12:34:18AM +0200, Arnd Bergmann wrote:
> > The rtc-generic driver provides an architecture specific
> > wrapper on top of the generic rtc_class_ops abstraction,
> > and on sh, that goes through another indirection usin
On Wed, Apr 27, 2016 at 05:16:45PM +0800, Pan Xinhui wrote:
> From: Pan Xinhui
>
> Implement xchg{u8,u16}{local,relaxed}, and
> cmpxchg{u8,u16}{,local,acquire,relaxed}.
>
> It works on all ppc.
>
> remove volatile of first parameter in __cmpxchg_local and __cmpxchg
>
> Suggested-by: Peter Zijl
>
> Thanks for taking a look Balbir, the size of crash_shutdown_handles is
> actually CRASH_HANDLER_MAX+1.
>
Acked-by: Balbir Singh
___
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev
Hello,
On Thu, Apr 28, 2016 at 2:13 AM, Marwa Hamza wrote:
> hello
> every time i try to compile the linux kernel with arch=powerpc i got this
> error
>
> WRAP arch / powerpc / boot / zImage.pseries
> powerpc-linux-gnu-ld: unrecognized emulation mode: -T
> Emulations supported: elf32ppclinux elf3
On Thu, Apr 28, 2016 at 12:34 AM, Arnd Bergmann wrote:
> I ended up stuffing the two patch series into one, as they are now
> more dependent on one another. This now thoroughly removes the
> genrtc driver including the asm/rtc.h headers it uses. For all
> architectures that still have a meaningful
On Thu, Apr 28, 2016 at 12:34 AM, Arnd Bergmann wrote:
> --- a/arch/powerpc/platforms/Kconfig
> +++ b/arch/powerpc/platforms/Kconfig
> @@ -321,6 +321,17 @@ config OF_RTC
> Uses information from the OF or flattened device tree to instantiate
> platform devices for direct mapped
Hi Rich,
On Thu, Apr 28, 2016 at 1:21 AM, Rich Felker wrote:
> Not a complaint about your patch, but I'd like to get rid of this
> platform device and abstraction layer completely since it doesn't seem
> like something that can be modeled correctly in device tree. When
> you're done cleaning this
On Thu, 28 Apr 2016 16:55:13 +1000
Balbir Singh wrote:
> On 28/04/16 16:17, Suraj Jitindar Singh wrote:
> > When unregistering a crash_shutdown_handle in the function
> > crash_shutdown_unregister() the other handles are shifted down in
> > the array to replace the unregistered handle. The for lo
Implement new character device driver to allow access from user space
to the 2x16 character operator panel display present on IBM Power Systems
machines with FSPs.
This will allow status information to be presented on the display which
is visible to a user.
The driver implements a 32 character bu
Add a binding to Documentation/devicetree/bindings/powerpc/opal
(oppanel-opal.txt) for the operator panel which is present on IBM
Power Systems machines with FSPs.
Signed-off-by: Suraj Jitindar Singh
Acked-by: Rob Herring
Acked-by: Stewart Smith
---
Change Log:
V1 -> V2:
- Nothing
V2
74 matches
Mail list logo