The PS3 hcall assembly code makes ad-hoc stack frames that don't have
a back-chain pointer or meet other requirements like minimum frame size.
This probably confuses stack unwinders. Give all hcalls a real stack
frame.
Signed-off-by: Nicholas Piggin
---
arch/powerpc/platforms/ps3/hvcall.S | 152
The LRSAVE constant is required for assembly compiled for both 32-bit
and 64-bit, because the value differs there. PS3 is 64-bit only so
this is a noop, but it is nice to abstract stack frame offsets.
Signed-off-by: Nicholas Piggin
---
arch/powerpc/platforms/ps3/hvcall.S | 128 ++
This (hopefully) fixes the ELFv2 bug that Geoff reported, with patch
1. And a couple of other possible improvements I noticed.
I don't have a PS3 setup[*] so I have only compile tested these, I'm
sorry.
[*] Is RPCS3 usable for this kind of thing?
Thanks,
Nick
Nicholas Piggin (3):
powerpc/ps3:
Stack-passed parameters begin at a different offset in the caller's
stack in the ELFv2 ABI.
Reported-by: Geoff Levand
Fixes: 8c5fa3b5c4df ("powerpc/64: Make ELFv2 the default for big-endian builds")
Signed-off-by: Nicholas Piggin
---
arch/powerpc/include/asm/ppc_asm.h | 6 --
arch/powerpc
From: Pingfan Liu
This patch always forces the first core onlined due to some subsystem
needs cpu0. After core0, a hole may follow, then comes the crashed core.
Signed-off-by: Pingfan Liu
Cc: Michael Ellerman
Cc: Nicholas Piggin
Cc: Christophe Leroy
Cc: Mahesh Salgaonkar
Cc: Wen Xiong
Cc:
From: Pingfan Liu
This patch aims to mark all the arrays which size is decided by
nr_cpu_ids or num_possible_cpus(). Later if a hole is allowed in
cpu_possible_mask, the corresponding array should extend to hold the
last bit number in cpu_possible_mask.
Signed-off-by: Pingfan Liu
Cc: Michael E
From: Pingfan Liu
Between early_setup()->allocate_paca_ptrs() and
smp_setup_cpu_maps()->free_unused_pacas(), there is no call to
set_nr_cpu_ids(), which means nr_cpu_ids is unchanged.
Hence removing the check.
Signed-off-by: Pingfan Liu
Cc: Michael Ellerman
Cc: Nicholas Piggin
Cc: Christophe
From: Pingfan Liu
This series addresses the nr_cpus issue for PowerPC without re-ordering
cpu number. To save the memory used by percpu area, it also limits the
possible cpu numbers by allowing hole in cpu_possible_mask.
Because the last cpu number will bigger than nr_cpu_ids in this way,
some p
Geoff Levand writes:
> Commit 8c5fa3b5c4df3d071dab42b04b971df370d99354 (powerpc/64: Make ELFv2 the
> default for big-endian builds), merged in Linux-6.5-rc1 changes the calling
> ABI
> in a way that is incompatible with the current code for the PS3's LV1
> hypervisor
> calls.
I'll take this for
Ghanshyam Agrawal writes:
> On Thu, Dec 21, 2023 at 4:55 PM Michael Ellerman wrote:
>>
>> Ghanshyam Agrawal writes:
>> > Fixed some typos
>> >
>> > Signed-off-by: Ghanshyam Agrawal
>> > ---
>> > arch/powerpc/kernel/eeh_pe.c | 6 +++---
>> > 1 file changed, 3 insertions(+), 3 deletions(-)
>>
>>
A test [1] in Android test suite started failing after [2] was merged.
It turns out that after handling a major fault under per-VMA lock, the
process major fault counter does not register that fault as major.
Before [2] read faults would be done under mmap_lock, in which case
FAULT_FLAG_TRIED flag
11 matches
Mail list logo