IO memory read from /proc/vmcore leads to hang.

Maxim Uvarov muvarov at gmail.com
Thu Jul 21 12:33:58 PDT 2016


2016-07-21 18:19 GMT+03:00 Daniel Walker <danielwa at cisco.com>:
>
>  There appears to be no code which checks what is or is not System ram,
> there is nothing that checks the device tree to see what is IO memory, and
> nothing reads /proc/iomem .. So AFAIK nothing cares if it's IO memory, or
> system ram, and there's no method to config things to skip any memory in the
> system, except in makedumpfile which can skip symbols not IO memory.
>
>

Daniel,  unfortunately it's long time for me when I looked to powerpc
code. But I just
checked that here:

kexec-tools-2.0.6/kexec/arch/ppc64/kexec-ppc64.c

is probably what you need.

Maxim.

>
> On 07/21/2016 12:34 AM, Maxim Uvarov wrote:
>>
>> Second kernel should already know that it's not system ram of the
>> first kernel and in that case makedumpfile will not dump that memory.
>> Simple way is to pass additional kernel argument to kexec is when you
>> load the kernel. If it works than you can think how it's better to
>> pass this parameter.  Variants might be request_resource() in first
>> kernel or add some logic to kexec tools.
>>
>> Best regards,
>> Maxim.
>>
>> 2016-07-20 22:18 GMT+03:00 Daniel Walker <danielwa at cisco.com>:
>>>
>>> Mahesh, I didn't get your email for some reason . I saw it in the
>>> Archives.
>>>
>>> makedumpfile doesn't appear to have a way to drop free form memory areas.
>>> So
>>> I need to drop 00800000 to 00807fff , but I don't see a way to do that.
>>> Any
>>> other suggestions on how to prevent this hang ?
>>>
>>>
>>>
>>> On 07/11/2016 02:46 PM, Daniel Walker wrote:
>>>>
>>>>
>>>> Hi,
>>>>
>>>> I found found that on my Powerpc machine there is some IO memory which
>>>> will cause the box to hang if I read it. It's a custom device that was
>>>> added
>>>> to the board for a special purpose.
>>>>
>>>> I was looking for a way to exclude this memory from the dump, and while
>>>> doing that I found that kexec makes a list of memory segments that go
>>>> into
>>>> the core file. I was wondering why most of the kexec architecture don't
>>>> appear to exclude device memory like what's listed in /proc/iomem.
>>>>
>>>> Is there a good reason why that's not the case?
>>>>
>>>> Daniel
>>>
>>>
>>>
>>> _______________________________________________
>>> kexec mailing list
>>> kexec at lists.infradead.org
>>> http://lists.infradead.org/mailman/listinfo/kexec
>>
>>
>>
>



-- 
Best regards,
Maxim Uvarov



More information about the kexec mailing list