Subject: Re: powerpc/kdump: skip enabling big endian exception during crash

From: Mahesh Jagannath Salgaonkar <[email-masked]>
Date: Fri, 12 Dec 2014 09:36:56 +0530

On 12/12/2014 04:10 AM, Michael Ellerman wrote:
> On Thu, 2014-11-12 at 16:44:54 UTC, Hari Bathini wrote:
>> In LE kernel, we currently have a hack for kexec that resets the exception endian
>> before starting a new kernel as the kernel that is loaded could be a big endian
>> or a little endian kernel. In kdump case, resetting exception endian fails when
>> one or more cpus is disabled. But in case of kdump, we can conveniently ignore
>> resetting endianess as crashkernel is always of same endianess as primary kernel.
> 
> No, it's not guaranteed to be the same endianess.
> 
> That tends to be what people do in practice, but it's not an assumption you can
> hard code.

Agree. The other solution could be to wakeup offline CPUs in crash path
as we do it in normal kexec path. PHYP expects all partitions processors
MSR[EE] = 0 while we call pseries_big_endian_exceptions(). Waking up
offline CPUs will help to achieve that. But since we are already in
crashed kernel context I am not sure how safe is to call
wake_offline_cpus().

Thanks,
-Mahesh.