All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Leizhen (ThunderTown)" <thunder.leizhen@huawei.com>
To: Borislav Petkov <bp@alien8.de>
Cc: Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>, <x86@kernel.org>,
	"H . Peter Anvin" <hpa@zytor.com>, <linux-kernel@vger.kernel.org>,
	Dave Young <dyoung@redhat.com>, Baoquan He <bhe@redhat.com>,
	Vivek Goyal <vgoyal@redhat.com>,
	Eric Biederman <ebiederm@xmission.com>,
	<kexec@lists.infradead.org>,
	Catalin Marinas <catalin.marinas@arm.com>,
	Will Deacon <will@kernel.org>,
	<linux-arm-kernel@lists.infradead.org>,
	Rob Herring <robh+dt@kernel.org>,
	Frank Rowand <frowand.list@gmail.com>,
	<devicetree@vger.kernel.org>, "Jonathan Corbet" <corbet@lwn.net>,
	<linux-doc@vger.kernel.org>, Randy Dunlap <rdunlap@infradead.org>,
	Feng Zhou <zhoufeng.zf@bytedance.com>,
	Kefeng Wang <wangkefeng.wang@huawei.com>,
	Chen Zhou <dingguo.cz@antgroup.com>,
	"John Donnelly" <John.p.donnelly@oracle.com>
Subject: Re: [PATCH v18 02/17] x86/setup: Move xen_pv_domain() check and insert_resource() to setup_arch()
Date: Fri, 7 Jan 2022 21:09:26 +0800	[thread overview]
Message-ID: <681a2403-1e1c-1b06-54d0-ca92a7f07e71@huawei.com> (raw)
In-Reply-To: <7e7c8d93-e745-2bfd-b93d-aecb3b70bf33@huawei.com>



On 2022/1/7 16:13, Leizhen (ThunderTown) wrote:
> 
> 
> On 2021/12/25 9:53, Leizhen (ThunderTown) wrote:
>>
>>
>> On 2021/12/24 14:36, Leizhen (ThunderTown) wrote:
>>>
>>>
>>> On 2021/12/24 1:26, Borislav Petkov wrote:
>>>> On Wed, Dec 22, 2021 at 09:08:05PM +0800, Zhen Lei wrote:
>>>>> From: Chen Zhou <chenzhou10@huawei.com>
>>>>>
>>>>> We will make the functions reserve_crashkernel() as generic, the
>>>>> xen_pv_domain() check in reserve_crashkernel() is relevant only to
>>>>> x86,
>>>>
>>>> Why is that so? Is Xen-PV x86-only?
>>>>
>>>>> the same as insert_resource() in reserve_crashkernel[_low]().
>>>>
>>>> Why?
>>>>
>>>> Looking at
>>>>
>>>>   0212f9159694 ("x86: Add Crash kernel low reservation")
>>>>
>>>> it *surprisingly* explains why that resources thing is being added:
>>>>
>>>>     We need to add another range in /proc/iomem like "Crash kernel low",
>>>>     so kexec-tools could find that info and append to kdump kernel
>>>>     command line.
>>>>
>>>> Then,
>>>>
>>>>   157752d84f5d ("kexec: use Crash kernel for Crash kernel low")
>>>>
>>>> renamed it because, as it states, kexec-tools was taught to handle
>>>> multiple resources of the same name.
>>>>
>>>> So why does kexec-tools on arm *not* need those iomem resources? How
>>>> does it parse the ranges there? Questions over questions...
> 
> Hi Borislav:
>   The reason why insert_resource() cannot be used in reserve_crashkernel[_low]()
> on arm64 is clear. The parent resource node of crashk[_low]_res is added by
> request_resource() in request_standard_resources(), so that it will be conflicted.
> All request_resource() in request_standard_resources() should be changed to
> insert_resource(), to make insert_resource() can be used in reserve_crashkernel[_low]().
> 
>   I found commit e25e6e7593ca ("kdump, x86: Process multiple Crash kernel in /proc/iomem")
> in kexec-tools. I'm trying to port it to arm64, or make it generic.

Chen Zhou's done it before. But the "Crash kernel (low)" can really be eliminated. Chen
Zhou just used it to distinguish whether the crashkernel memory range is crashkernel load
range or not. We can use get_crash_kernel_load_range() to get and check the load range.


> 
>   Thanks.
> 
>>
>> It's a good question worth figuring out. I'm going to dig into this.
>> I admire your rigorous style and sharp vision.
>>
> 
> 

-- 
Regards,
  Zhen Lei

WARNING: multiple messages have this Message-ID (diff)
From: "Leizhen (ThunderTown)" <thunder.leizhen@huawei.com>
To: Borislav Petkov <bp@alien8.de>
Cc: Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>, <x86@kernel.org>,
	"H . Peter Anvin" <hpa@zytor.com>, <linux-kernel@vger.kernel.org>,
	Dave Young <dyoung@redhat.com>, Baoquan He <bhe@redhat.com>,
	Vivek Goyal <vgoyal@redhat.com>,
	Eric Biederman <ebiederm@xmission.com>,
	<kexec@lists.infradead.org>,
	Catalin Marinas <catalin.marinas@arm.com>,
	Will Deacon <will@kernel.org>,
	<linux-arm-kernel@lists.infradead.org>,
	Rob Herring <robh+dt@kernel.org>,
	Frank Rowand <frowand.list@gmail.com>,
	<devicetree@vger.kernel.org>, "Jonathan Corbet" <corbet@lwn.net>,
	<linux-doc@vger.kernel.org>, Randy Dunlap <rdunlap@infradead.org>,
	Feng Zhou <zhoufeng.zf@bytedance.com>,
	Kefeng Wang <wangkefeng.wang@huawei.com>,
	Chen Zhou <dingguo.cz@antgroup.com>,
	"John Donnelly" <John.p.donnelly@oracle.com>
Subject: Re: [PATCH v18 02/17] x86/setup: Move xen_pv_domain() check and insert_resource() to setup_arch()
Date: Fri, 7 Jan 2022 21:09:26 +0800	[thread overview]
Message-ID: <681a2403-1e1c-1b06-54d0-ca92a7f07e71@huawei.com> (raw)
In-Reply-To: <7e7c8d93-e745-2bfd-b93d-aecb3b70bf33@huawei.com>



On 2022/1/7 16:13, Leizhen (ThunderTown) wrote:
> 
> 
> On 2021/12/25 9:53, Leizhen (ThunderTown) wrote:
>>
>>
>> On 2021/12/24 14:36, Leizhen (ThunderTown) wrote:
>>>
>>>
>>> On 2021/12/24 1:26, Borislav Petkov wrote:
>>>> On Wed, Dec 22, 2021 at 09:08:05PM +0800, Zhen Lei wrote:
>>>>> From: Chen Zhou <chenzhou10@huawei.com>
>>>>>
>>>>> We will make the functions reserve_crashkernel() as generic, the
>>>>> xen_pv_domain() check in reserve_crashkernel() is relevant only to
>>>>> x86,
>>>>
>>>> Why is that so? Is Xen-PV x86-only?
>>>>
>>>>> the same as insert_resource() in reserve_crashkernel[_low]().
>>>>
>>>> Why?
>>>>
>>>> Looking at
>>>>
>>>>   0212f9159694 ("x86: Add Crash kernel low reservation")
>>>>
>>>> it *surprisingly* explains why that resources thing is being added:
>>>>
>>>>     We need to add another range in /proc/iomem like "Crash kernel low",
>>>>     so kexec-tools could find that info and append to kdump kernel
>>>>     command line.
>>>>
>>>> Then,
>>>>
>>>>   157752d84f5d ("kexec: use Crash kernel for Crash kernel low")
>>>>
>>>> renamed it because, as it states, kexec-tools was taught to handle
>>>> multiple resources of the same name.
>>>>
>>>> So why does kexec-tools on arm *not* need those iomem resources? How
>>>> does it parse the ranges there? Questions over questions...
> 
> Hi Borislav:
>   The reason why insert_resource() cannot be used in reserve_crashkernel[_low]()
> on arm64 is clear. The parent resource node of crashk[_low]_res is added by
> request_resource() in request_standard_resources(), so that it will be conflicted.
> All request_resource() in request_standard_resources() should be changed to
> insert_resource(), to make insert_resource() can be used in reserve_crashkernel[_low]().
> 
>   I found commit e25e6e7593ca ("kdump, x86: Process multiple Crash kernel in /proc/iomem")
> in kexec-tools. I'm trying to port it to arm64, or make it generic.

Chen Zhou's done it before. But the "Crash kernel (low)" can really be eliminated. Chen
Zhou just used it to distinguish whether the crashkernel memory range is crashkernel load
range or not. We can use get_crash_kernel_load_range() to get and check the load range.


> 
>   Thanks.
> 
>>
>> It's a good question worth figuring out. I'm going to dig into this.
>> I admire your rigorous style and sharp vision.
>>
> 
> 

-- 
Regards,
  Zhen Lei

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

WARNING: multiple messages have this Message-ID (diff)
From: Leizhen (ThunderTown) <thunder.leizhen@huawei.com>
To: kexec@lists.infradead.org
Subject: [PATCH v18 02/17] x86/setup: Move xen_pv_domain() check and insert_resource() to setup_arch()
Date: Fri, 7 Jan 2022 21:09:26 +0800	[thread overview]
Message-ID: <681a2403-1e1c-1b06-54d0-ca92a7f07e71@huawei.com> (raw)
In-Reply-To: <7e7c8d93-e745-2bfd-b93d-aecb3b70bf33@huawei.com>



On 2022/1/7 16:13, Leizhen (ThunderTown) wrote:
> 
> 
> On 2021/12/25 9:53, Leizhen (ThunderTown) wrote:
>>
>>
>> On 2021/12/24 14:36, Leizhen (ThunderTown) wrote:
>>>
>>>
>>> On 2021/12/24 1:26, Borislav Petkov wrote:
>>>> On Wed, Dec 22, 2021 at 09:08:05PM +0800, Zhen Lei wrote:
>>>>> From: Chen Zhou <chenzhou10@huawei.com>
>>>>>
>>>>> We will make the functions reserve_crashkernel() as generic, the
>>>>> xen_pv_domain() check in reserve_crashkernel() is relevant only to
>>>>> x86,
>>>>
>>>> Why is that so? Is Xen-PV x86-only?
>>>>
>>>>> the same as insert_resource() in reserve_crashkernel[_low]().
>>>>
>>>> Why?
>>>>
>>>> Looking at
>>>>
>>>>   0212f9159694 ("x86: Add Crash kernel low reservation")
>>>>
>>>> it *surprisingly* explains why that resources thing is being added:
>>>>
>>>>     We need to add another range in /proc/iomem like "Crash kernel low",
>>>>     so kexec-tools could find that info and append to kdump kernel
>>>>     command line.
>>>>
>>>> Then,
>>>>
>>>>   157752d84f5d ("kexec: use Crash kernel for Crash kernel low")
>>>>
>>>> renamed it because, as it states, kexec-tools was taught to handle
>>>> multiple resources of the same name.
>>>>
>>>> So why does kexec-tools on arm *not* need those iomem resources? How
>>>> does it parse the ranges there? Questions over questions...
> 
> Hi Borislav:
>   The reason why insert_resource() cannot be used in reserve_crashkernel[_low]()
> on arm64 is clear. The parent resource node of crashk[_low]_res is added by
> request_resource() in request_standard_resources(), so that it will be conflicted.
> All request_resource() in request_standard_resources() should be changed to
> insert_resource(), to make insert_resource() can be used in reserve_crashkernel[_low]().
> 
>   I found commit e25e6e7593ca ("kdump, x86: Process multiple Crash kernel in /proc/iomem")
> in kexec-tools. I'm trying to port it to arm64, or make it generic.

Chen Zhou's done it before. But the "Crash kernel (low)" can really be eliminated. Chen
Zhou just used it to distinguish whether the crashkernel memory range is crashkernel load
range or not. We can use get_crash_kernel_load_range() to get and check the load range.


> 
>   Thanks.
> 
>>
>> It's a good question worth figuring out. I'm going to dig into this.
>> I admire your rigorous style and sharp vision.
>>
> 
> 

-- 
Regards,
  Zhen Lei


  reply	other threads:[~2022-01-07 13:09 UTC|newest]

Thread overview: 87+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-12-22 13:08 [PATCH v18 00/17] support reserving crashkernel above 4G on arm64 kdump Zhen Lei
2021-12-22 13:08 ` Zhen Lei
2021-12-22 13:08 ` Zhen Lei
2021-12-22 13:08 ` [PATCH v18 01/17] x86/setup: Move CRASH_ALIGN and CRASH_ADDR_{LOW|HIGH}_MAX to asm/kexec.h Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-22 20:43   ` Borislav Petkov
2021-12-22 20:43     ` Borislav Petkov
2021-12-22 20:43     ` Borislav Petkov
2021-12-23  2:09     ` Leizhen (ThunderTown)
2021-12-23  2:09       ` Leizhen (ThunderTown)
2021-12-23  2:09       ` Leizhen (ThunderTown)
2021-12-22 13:08 ` [PATCH v18 02/17] x86/setup: Move xen_pv_domain() check and insert_resource() to setup_arch() Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-23 17:26   ` Borislav Petkov
2021-12-23 17:26     ` Borislav Petkov
2021-12-23 17:26     ` Borislav Petkov
2021-12-24  6:36     ` Leizhen (ThunderTown)
2021-12-24  6:36       ` Leizhen (ThunderTown)
2021-12-24  6:36       ` Leizhen (ThunderTown)
2021-12-25  1:53       ` Leizhen (ThunderTown)
2021-12-25  1:53         ` Leizhen (ThunderTown)
2021-12-25  1:53         ` Leizhen (ThunderTown)
2021-12-25 10:16         ` Leizhen (ThunderTown)
2021-12-25 10:16           ` Leizhen (ThunderTown)
2021-12-25 10:16           ` Leizhen (ThunderTown)
2022-01-07  8:13         ` Leizhen (ThunderTown)
2022-01-07  8:13           ` Leizhen
2022-01-07  8:13           ` Leizhen (ThunderTown)
2022-01-07 13:09           ` Leizhen (ThunderTown) [this message]
2022-01-07 13:09             ` Leizhen
2022-01-07 13:09             ` Leizhen (ThunderTown)
2021-12-22 13:08 ` [PATCH v18 03/17] x86/setup: Adjust the range of codes separated by CONFIG_X86_64 Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-22 13:08 ` [PATCH v18 04/17] x86/setup: Add helper parse_crashkernel_in_order() Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-25  1:58   ` Leizhen (ThunderTown)
2021-12-25  1:58     ` Leizhen (ThunderTown)
2021-12-25  1:58     ` Leizhen (ThunderTown)
2021-12-22 13:08 ` [PATCH v18 05/17] x86/setup: Use parse_crashkernel_in_order() to make code logic clear Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-22 13:08 ` [PATCH v18 06/17] x86/setup: Update comments in reserve_crashkernel() Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-22 13:08 ` [PATCH v18 07/17] x86/setup: Eliminate a magic number " Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-22 13:08 ` [PATCH v18 08/17] x86/setup: Add build option ARCH_WANT_RESERVE_CRASH_KERNEL Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-22 13:08 ` [PATCH v18 09/17] x86/setup: Move reserve_crashkernel[_low]() into crash_core.c Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-22 13:08 ` [PATCH v18 10/17] kdump: Simplify the parameters of __parse_crashkernel() Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-22 13:08 ` [PATCH v18 11/17] kdump: Make parse_crashkernel_{high|low} static Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-22 13:08 ` [PATCH v18 12/17] kdump: Reduce unused parameters of parse_crashkernel_{high|low} Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-22 13:08 ` [PATCH v18 13/17] arm64: kdump: introduce some macros for crash kernel reservation Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-22 13:08 ` [PATCH v18 14/17] arm64: kdump: reimplement crashkernel=X Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-22 13:08 ` [PATCH v18 15/17] of: fdt: Aggregate the processing of "linux,usable-memory-range" Zhen Lei
2021-12-22 13:08   ` [PATCH v18 15/17] of: fdt: Aggregate the processing of "linux, usable-memory-range" Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-23 15:48   ` [PATCH v18 15/17] of: fdt: Aggregate the processing of "linux,usable-memory-range" Dave Kleikamp
2021-12-23 15:48     ` Dave Kleikamp
2021-12-23 15:48     ` Dave Kleikamp
2021-12-24  1:03     ` Leizhen (ThunderTown)
2021-12-24  1:03       ` Leizhen (ThunderTown)
2021-12-24  1:03       ` Leizhen (ThunderTown)
2021-12-22 13:08 ` [PATCH v18 16/17] of: fdt: Add memory for devices by DT property "linux,usable-memory-range" Zhen Lei
2021-12-22 13:08   ` [PATCH v18 16/17] of: fdt: Add memory for devices by DT property "linux, usable-memory-range" Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-22 13:08 ` [PATCH v18 17/17] kdump: update Documentation about crashkernel Zhen Lei
2021-12-22 13:08   ` Zhen Lei
2021-12-22 13:08   ` Zhen Lei

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=681a2403-1e1c-1b06-54d0-ca92a7f07e71@huawei.com \
    --to=thunder.leizhen@huawei.com \
    --cc=John.p.donnelly@oracle.com \
    --cc=bhe@redhat.com \
    --cc=bp@alien8.de \
    --cc=catalin.marinas@arm.com \
    --cc=corbet@lwn.net \
    --cc=devicetree@vger.kernel.org \
    --cc=dingguo.cz@antgroup.com \
    --cc=dyoung@redhat.com \
    --cc=ebiederm@xmission.com \
    --cc=frowand.list@gmail.com \
    --cc=hpa@zytor.com \
    --cc=kexec@lists.infradead.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=rdunlap@infradead.org \
    --cc=robh+dt@kernel.org \
    --cc=tglx@linutronix.de \
    --cc=vgoyal@redhat.com \
    --cc=wangkefeng.wang@huawei.com \
    --cc=will@kernel.org \
    --cc=x86@kernel.org \
    --cc=zhoufeng.zf@bytedance.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.