Re: [PATCH] x86, kdump: Set crashkernel_low automatically

From: Eric W. Biederman
Date: Mon Mar 11 2013 - 15:14:27 EST


"H. Peter Anvin" <hpa@xxxxxxxxx> writes:

> On 03/11/2013 11:50 AM, Yinghai Lu wrote:
>>>
>>> What is the purpose of reserving that kind of memory below 896 MB? If
>>> you have a 32-bit system, it will likely be useless since you are
>>> robbing the primary of most of lowmem, on a 64-bit system 896 MB is not
>>> a magic value in any way...?
>>
>> We did not touch 32 bit system.
>>
>> Do you mean that we should
>> For 64bit, we should try under 4G, and then try MAXMEM
>> instead of try under 896M, then 4G, and MAXMEM?
>>
>> Try 896M at first, we will let user to avoid updating their kexec-tools.
>>
>
> Are you saying 896M is somehow hardcoded into kexec-tools?
>
> I actually disagree with trying low memory at all. Push kdump as high
> into the memory range as we can go, if there is a performance penalty it
> is much better to take it in the kdump kernel.
>
> All the voodoo to try to keep people from updating kexec-tools is
> disturbing; although breaking userspace is bad, updating kexec-tools is
> probably easier than updating the kernel, and carrying the voodoo on
> indefinitely has serious consequences.

I don't totally follow the reasoning, but there is one real motivating
example that is not easy to fix and it has little to do with
kexec-tools. There is a practical issue that so far the easiest way
to deal with iommus after a kexec on panic is to just not use them.
The problem is what to do with existing DMAs transfers that were setup
by the kernel that crashed and are using the iommu.

When you are loaded above 4G not using iommus can be a challenge.

There are practical consequences to all of this that started this
discussion, and the practical consequences are primarily in kernel
behavior.


Eric
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/