All of lore.kernel.org
 help / color / mirror / Atom feed
From: Lakshmi Ramasubramanian <nramas@linux.microsoft.com>
To: Thiago Jung Bauermann <bauerman@linux.ibm.com>
Cc: Rob Herring <robh@kernel.org>,
	takahiro.akashi@linaro.org, will@kernel.org,
	catalin.marinas@arm.com, mpe@ellerman.id.au, zohar@linux.ibm.com,
	james.morse@arm.com, sashal@kernel.org, benh@kernel.crashing.org,
	paulus@samba.org, frowand.list@gmail.com,
	vincenzo.frascino@arm.com, mark.rutland@arm.com,
	dmitry.kasatkin@gmail.com, jmorris@namei.org, serge@hallyn.com,
	pasha.tatashin@soleen.com, allison@lohutok.net,
	masahiroy@kernel.org, bhsharma@redhat.com, mbrugger@suse.com,
	hsinyi@chromium.org, tao.li@vivo.com, christophe.leroy@c-s.fr,
	linux-integrity@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org,
	prsriva@linux.microsoft.com, balajib@linux.microsoft.com
Subject: Re: [RFC PATCH 2/4] of: Add a common kexec FDT setup function
Date: Fri, 11 Dec 2020 21:46:27 -0800	[thread overview]
Message-ID: <49579baf-6159-0eac-fa36-6fdb618c2320@linux.microsoft.com> (raw)
In-Reply-To: <87360bahup.fsf@manicouagan.localdomain>

On 12/11/20 6:17 PM, Thiago Jung Bauermann wrote:
> 
> Lakshmi Ramasubramanian <nramas@linux.microsoft.com> writes:
> 
>> On 12/11/20 2:10 PM, Rob Herring wrote:
>>
>> Hi Rob,
>>
>>> Both arm64 and powerpc do essentially the same FDT /chosen setup for
>>> kexec. We can simply combine everything each arch does. The differences
>>> are either omissions that arm64 should have or additional properties
>>> that will be ignored.
>>> The differences relative to the arm64 version:
>>> - If /chosen doesn't exist, it will be created (should never happen).
>>> - Any old dtb and initrd reserved memory will be released.
>>> - The new initrd and elfcorehdr are marked reserved.
>>> - "linux,booted-from-kexec" is set.
>>> The differences relative to the powerpc version:
>>> - "kaslr-seed" and "rng-seed" may be set.
>>> - "linux,elfcorehdr" is set.
>>> - Any existing "linux,usable-memory-range" is removed.
>>> Signed-off-by: Rob Herring <robh@kernel.org>
>>> ---
>>> This could be taken a step further and do the allocation of the new
>>> FDT. The difference is arm64 uses vmalloc and powerpc uses kmalloc. The
>>> arm64 version also retries with a bigger allocation. That seems
>>> unnecessary.
>>> ---
>>>    drivers/of/Makefile |   1 +
>>>    drivers/of/kexec.c  | 228 ++++++++++++++++++++++++++++++++++++++++++++
>>>    include/linux/of.h  |   5 +
>>>    3 files changed, 234 insertions(+)
>>>    create mode 100644 drivers/of/kexec.c
>>> diff --git a/drivers/of/Makefile b/drivers/of/Makefile
>>> index 6e1e5212f058..8ce11955afde 100644
>>> --- a/drivers/of/Makefile
>>> +++ b/drivers/of/Makefile
>>> @@ -13,5 +13,6 @@ obj-$(CONFIG_OF_RESERVED_MEM) += of_reserved_mem.o
>>>    obj-$(CONFIG_OF_RESOLVE)  += resolver.o
>>>    obj-$(CONFIG_OF_OVERLAY) += overlay.o
>>>    obj-$(CONFIG_OF_NUMA) += of_numa.o
>>> +obj-$(CONFIG_KEXEC_FILE) += kexec.o
>>
>> For the functions moved from powerpc & arm64 to "drivers/of/kexec.c" in this
>> patch, compiling kexec.c when CONFIG_KEXEC_FILE is enabled is fine. But when
>> more functions (such as remove_ima_buffer()) are moved to this file, Makefile
>> needs to be updated for other ima kexec related CONFIGs.
> 
> IMA kexec is only available if CONFIG_KEXEC_FILE is enabled, so I don't
> understand what problem you are seeing.
> 

delete_fdt_mem_rsv() and setup_fdt() functions are defined when 
CONFIG_KEXEC_FILE is enabled. So there is no problem with this patch as 
such.

I was thinking when other arch independent functions such as 
do_get_kexec_buffer() and remove_ima_buffer() are moved to 
"drivers/of/kexec.c", they need to be defined only when 
CONFIG_HAVE_IMA_KEXEC is enabled.

If CONFIG_HAVE_IMA_KEXEC is enabled, CONFIG_KEXEC_FILE is also enabled. 
So there shouldn't be a problem moving those functions to 
"drivers/of/kexec.c". You are right Thiago. Thanks.

  -lakshmi




WARNING: multiple messages have this Message-ID (diff)
From: Lakshmi Ramasubramanian <nramas@linux.microsoft.com>
To: Thiago Jung Bauermann <bauerman@linux.ibm.com>
Cc: mark.rutland@arm.com, benh@kernel.crashing.org,
	bhsharma@redhat.com, tao.li@vivo.com, zohar@linux.ibm.com,
	paulus@samba.org, vincenzo.frascino@arm.com,
	frowand.list@gmail.com, sashal@kernel.org,
	Rob Herring <robh@kernel.org>,
	mpe@ellerman.id.au, masahiroy@kernel.org, jmorris@namei.org,
	takahiro.akashi@linaro.org, linux-arm-kernel@lists.infradead.org,
	catalin.marinas@arm.com, serge@hallyn.com,
	devicetree@vger.kernel.org, pasha.tatashin@soleen.com,
	will@kernel.org, prsriva@linux.microsoft.com,
	hsinyi@chromium.org, allison@lohutok.net,
	christophe.leroy@c-s.fr, mbrugger@suse.com,
	balajib@linux.microsoft.com, dmitry.kasatkin@gmail.com,
	linux-kernel@vger.kernel.org, james.morse@arm.com,
	linux-integrity@vger.kernel.org
Subject: Re: [RFC PATCH 2/4] of: Add a common kexec FDT setup function
Date: Fri, 11 Dec 2020 21:46:27 -0800	[thread overview]
Message-ID: <49579baf-6159-0eac-fa36-6fdb618c2320@linux.microsoft.com> (raw)
In-Reply-To: <87360bahup.fsf@manicouagan.localdomain>

On 12/11/20 6:17 PM, Thiago Jung Bauermann wrote:
> 
> Lakshmi Ramasubramanian <nramas@linux.microsoft.com> writes:
> 
>> On 12/11/20 2:10 PM, Rob Herring wrote:
>>
>> Hi Rob,
>>
>>> Both arm64 and powerpc do essentially the same FDT /chosen setup for
>>> kexec. We can simply combine everything each arch does. The differences
>>> are either omissions that arm64 should have or additional properties
>>> that will be ignored.
>>> The differences relative to the arm64 version:
>>> - If /chosen doesn't exist, it will be created (should never happen).
>>> - Any old dtb and initrd reserved memory will be released.
>>> - The new initrd and elfcorehdr are marked reserved.
>>> - "linux,booted-from-kexec" is set.
>>> The differences relative to the powerpc version:
>>> - "kaslr-seed" and "rng-seed" may be set.
>>> - "linux,elfcorehdr" is set.
>>> - Any existing "linux,usable-memory-range" is removed.
>>> Signed-off-by: Rob Herring <robh@kernel.org>
>>> ---
>>> This could be taken a step further and do the allocation of the new
>>> FDT. The difference is arm64 uses vmalloc and powerpc uses kmalloc. The
>>> arm64 version also retries with a bigger allocation. That seems
>>> unnecessary.
>>> ---
>>>    drivers/of/Makefile |   1 +
>>>    drivers/of/kexec.c  | 228 ++++++++++++++++++++++++++++++++++++++++++++
>>>    include/linux/of.h  |   5 +
>>>    3 files changed, 234 insertions(+)
>>>    create mode 100644 drivers/of/kexec.c
>>> diff --git a/drivers/of/Makefile b/drivers/of/Makefile
>>> index 6e1e5212f058..8ce11955afde 100644
>>> --- a/drivers/of/Makefile
>>> +++ b/drivers/of/Makefile
>>> @@ -13,5 +13,6 @@ obj-$(CONFIG_OF_RESERVED_MEM) += of_reserved_mem.o
>>>    obj-$(CONFIG_OF_RESOLVE)  += resolver.o
>>>    obj-$(CONFIG_OF_OVERLAY) += overlay.o
>>>    obj-$(CONFIG_OF_NUMA) += of_numa.o
>>> +obj-$(CONFIG_KEXEC_FILE) += kexec.o
>>
>> For the functions moved from powerpc & arm64 to "drivers/of/kexec.c" in this
>> patch, compiling kexec.c when CONFIG_KEXEC_FILE is enabled is fine. But when
>> more functions (such as remove_ima_buffer()) are moved to this file, Makefile
>> needs to be updated for other ima kexec related CONFIGs.
> 
> IMA kexec is only available if CONFIG_KEXEC_FILE is enabled, so I don't
> understand what problem you are seeing.
> 

delete_fdt_mem_rsv() and setup_fdt() functions are defined when 
CONFIG_KEXEC_FILE is enabled. So there is no problem with this patch as 
such.

I was thinking when other arch independent functions such as 
do_get_kexec_buffer() and remove_ima_buffer() are moved to 
"drivers/of/kexec.c", they need to be defined only when 
CONFIG_HAVE_IMA_KEXEC is enabled.

If CONFIG_HAVE_IMA_KEXEC is enabled, CONFIG_KEXEC_FILE is also enabled. 
So there shouldn't be a problem moving those functions to 
"drivers/of/kexec.c". You are right Thiago. Thanks.

  -lakshmi




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

  reply	other threads:[~2020-12-12  5:48 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-12-11 22:10 [RFC PATCH 0/4] Kexec FDT setup consolidation Rob Herring
2020-12-11 22:10 ` Rob Herring
2020-12-11 22:10 ` [RFC PATCH 1/4] powerpc: Rename kexec elfcorehdr_addr to elf_headers_mem Rob Herring
2020-12-11 22:10   ` Rob Herring
2020-12-12  0:54   ` Lakshmi Ramasubramanian
2020-12-12  0:54     ` Lakshmi Ramasubramanian
2020-12-22 21:42   ` Thiago Jung Bauermann
2020-12-22 21:42     ` Thiago Jung Bauermann
2020-12-11 22:10 ` [RFC PATCH 2/4] of: Add a common kexec FDT setup function Rob Herring
2020-12-11 22:10   ` Rob Herring
2020-12-12  1:18   ` Lakshmi Ramasubramanian
2020-12-12  1:18     ` Lakshmi Ramasubramanian
2020-12-12  2:17     ` Thiago Jung Bauermann
2020-12-12  2:17       ` Thiago Jung Bauermann
2020-12-12  5:46       ` Lakshmi Ramasubramanian [this message]
2020-12-12  5:46         ` Lakshmi Ramasubramanian
2020-12-22 21:48   ` Thiago Jung Bauermann
2020-12-22 21:48     ` Thiago Jung Bauermann
2020-12-11 22:10 ` [RFC PATCH 3/4] arm64: Use common of_kexec_setup_new_fdt() Rob Herring
2020-12-11 22:10   ` Rob Herring
2020-12-12 15:20   ` Lakshmi Ramasubramanian
2020-12-12 15:20     ` Lakshmi Ramasubramanian
2020-12-22 21:49   ` Thiago Jung Bauermann
2020-12-22 21:49     ` Thiago Jung Bauermann
2021-01-12 14:02   ` Will Deacon
2021-01-12 14:02     ` Will Deacon
2020-12-11 22:10 ` [RFC PATCH 4/4] powerpc: " Rob Herring
2020-12-11 22:10   ` Rob Herring
2020-12-12 15:22   ` Lakshmi Ramasubramanian
2020-12-12 15:22     ` Lakshmi Ramasubramanian
2020-12-22 21:55   ` Thiago Jung Bauermann
2020-12-22 21:55     ` Thiago Jung Bauermann
2020-12-22 23:33     ` Lakshmi Ramasubramanian
2020-12-22 23:33       ` Lakshmi Ramasubramanian

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=49579baf-6159-0eac-fa36-6fdb618c2320@linux.microsoft.com \
    --to=nramas@linux.microsoft.com \
    --cc=allison@lohutok.net \
    --cc=balajib@linux.microsoft.com \
    --cc=bauerman@linux.ibm.com \
    --cc=benh@kernel.crashing.org \
    --cc=bhsharma@redhat.com \
    --cc=catalin.marinas@arm.com \
    --cc=christophe.leroy@c-s.fr \
    --cc=devicetree@vger.kernel.org \
    --cc=dmitry.kasatkin@gmail.com \
    --cc=frowand.list@gmail.com \
    --cc=hsinyi@chromium.org \
    --cc=james.morse@arm.com \
    --cc=jmorris@namei.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-integrity@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=masahiroy@kernel.org \
    --cc=mbrugger@suse.com \
    --cc=mpe@ellerman.id.au \
    --cc=pasha.tatashin@soleen.com \
    --cc=paulus@samba.org \
    --cc=prsriva@linux.microsoft.com \
    --cc=robh@kernel.org \
    --cc=sashal@kernel.org \
    --cc=serge@hallyn.com \
    --cc=takahiro.akashi@linaro.org \
    --cc=tao.li@vivo.com \
    --cc=vincenzo.frascino@arm.com \
    --cc=will@kernel.org \
    --cc=zohar@linux.ibm.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.