lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <121fa1e6-f1a3-d47f-bb1d-baaacf96fddc@huawei.com>
Date:   Fri, 26 Feb 2021 14:45:25 +0800
From:   chenzhou <chenzhou10@...wei.com>
To:     Baoquan He <bhe@...hat.com>,
        Catalin Marinas <catalin.marinas@....com>,
        <ebiederm@...ssion.com>
CC:     <mingo@...hat.com>, <tglx@...utronix.de>, <rppt@...nel.org>,
        <dyoung@...hat.com>, <will@...nel.org>, <nsaenzjulienne@...e.de>,
        <corbet@....net>, <John.P.donnelly@...cle.com>,
        <prabhakar.pkin@...il.com>, <horms@...ge.net.au>,
        <robh+dt@...nel.org>, <arnd@...db.de>, <james.morse@....com>,
        <xiexiuqi@...wei.com>, <guohanjun@...wei.com>,
        <huawei.libin@...wei.com>, <wangkefeng.wang@...wei.com>,
        <linux-doc@...r.kernel.org>,
        <linux-arm-kernel@...ts.infradead.org>,
        <linux-kernel@...r.kernel.org>, <kexec@...ts.infradead.org>
Subject: Re: [PATCH v14 01/11] x86: kdump: replace the hard-coded alignment
 with macro CRASH_ALIGN



On 2021/2/25 15:25, Baoquan He wrote:
> On 02/24/21 at 02:19pm, Catalin Marinas wrote:
>> On Sat, Jan 30, 2021 at 03:10:15PM +0800, Chen Zhou wrote:
>>> Move CRASH_ALIGN to header asm/kexec.h for later use. Besides, the
>>> alignment of crash kernel regions in x86 is 16M(CRASH_ALIGN), but
>>> function reserve_crashkernel() also used 1M alignment. So just
>>> replace hard-coded alignment 1M with macro CRASH_ALIGN.
>> [...]
>>> @@ -510,7 +507,7 @@ static void __init reserve_crashkernel(void)
>>>  	} else {
>>>  		unsigned long long start;
>>>  
>>> -		start = memblock_phys_alloc_range(crash_size, SZ_1M, crash_base,
>>> +		start = memblock_phys_alloc_range(crash_size, CRASH_ALIGN, crash_base,
>>>  						  crash_base + crash_size);
>>>  		if (start != crash_base) {
>>>  			pr_info("crashkernel reservation failed - memory is in use.\n");
>> There is a small functional change here for x86. Prior to this patch,
>> crash_base passed by the user on the command line is allowed to be 1MB
>> aligned. With this patch, such reservation will fail.
>>
>> Is the current behaviour a bug in the current x86 code or it does allow
>> 1MB-aligned reservations?
> Hmm, you are right. Here we should keep 1MB alignment as is because
> users specify the address and size, their intention should be respected.
> The 1MB alignment for fixed memory region reservation was introduced in
> below commit, but it doesn't tell what is Eric's request at that time, I
> guess it meant respecting users' specifying.
I think we could make the alignment unified. Why is the alignment system reserved and
user specified different? Besides, there is no document about the 1MB alignment.
How about adding the alignment size(16MB) in doc  if user specified  start address as arm64 does.

Thanks,
Chen Zhou
>
> commit 44280733e71ad15377735b42d8538c109c94d7e3
> Author: Yinghai Lu <yinghai@...nel.org>
> Date:   Sun Nov 22 17:18:49 2009 -0800
>
>     x86: Change crash kernel to reserve via reserve_early()
>     
>     use find_e820_area()/reserve_early() instead.
>     
>     -v2: address Eric's request, to restore original semantics.
>          will fail, if the provided address can not be used.
>
> .
>

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ