From: Rob Herring <robh+dt@kernel.org>
To: Patrick Daly <quic_pdaly@quicinc.com>
Cc: linux-arm-kernel <linux-arm-kernel@lists.infradead.org>,
devicetree@vger.kernel.org, surenb@google.com
Subject: Re: [PATCH] of: of_reserved_mem: Increase limit for reserved_mem regions
Date: Fri, 22 Apr 2022 08:48:25 -0500 [thread overview]
Message-ID: <CAL_JsqKSJbPT5ChmLLQME7rF=OYFe8Mk_x-DH7hL9FoV9zprRg@mail.gmail.com> (raw)
In-Reply-To: <1650488954-26662-1-git-send-email-quic_pdaly@quicinc.com>
On Wed, Apr 20, 2022 at 4:09 PM Patrick Daly <quic_pdaly@quicinc.com> wrote:
>
> The reserved_mem array must be statically allocated because it is used
> prior to memblock being aware of all "no-map" or otherwise reserved
> regions which have fixed physical addresses. Due to this limitation,
> if one architecture/board has a large number of reserved_mem regions,
> this limit must be raised for all.
>
> In particular, certain new qcom boards currently have 63 reserved memory
> regions, which when new features are added, pushes them over the existing
> limit of 64.
Please revive this instead:
https://lore.kernel.org/all/20211119075844.2902592-3-calvinzhang.cool@gmail.com/
>
> A generalized breakdown by region type:
> 13 for linux-loaded device firmware
If loaded by linux, why do you need fixed carveouts in DT? The devices
can't be told what address their fw is at?
> 9 for guest-vms or inter-vm communication
Why does that need to be in DT?
> 15 cma heaps/dma-buf heaps
Sounds like not trusting the OS to allocate memory itself. From what
I've read, the kernel's memory allocation abilities are better now
than when CMA was added.
> 24 for bootloaders/hypervisor/secure-world devices or software
> 2 misc
>
> Although this number could be reduced by a minor amount by combining
> physically adjacent regions, this comes at the cost of losing
> documention on what/who the regions are used by. In addition, combining
> adjacent regions is not possible if there are phandles in devicetree
> referring to the regions in question, such as "memory-region".
>
> Vmlinux before:
> text data bss dec hex filename
> 31030829 15807732 588524 47427085 2d3ae0d dist/vmlinux
>
> Vmlinux after:
> text data bss dec hex filename
> 31030877 15807668 592108 47430653 2d3bbfd dist/vmlinux
>
> Signed-off-by: Patrick Daly <quic_pdaly@quicinc.com>
> ---
> drivers/of/of_reserved_mem.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/of/of_reserved_mem.c b/drivers/of/of_reserved_mem.c
> index 75caa6f..de0cdda 100644
> --- a/drivers/of/of_reserved_mem.c
> +++ b/drivers/of/of_reserved_mem.c
> @@ -26,7 +26,7 @@
>
> #include "of_private.h"
>
> -#define MAX_RESERVED_REGIONS 64
> +#define MAX_RESERVED_REGIONS 128
> static struct reserved_mem reserved_mem[MAX_RESERVED_REGIONS];
> static int reserved_mem_count;
>
> --
> 2.7.4
>
next prev parent reply other threads:[~2022-04-22 13:48 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-04-20 21:09 [PATCH] of: of_reserved_mem: Increase limit for reserved_mem regions Patrick Daly
2022-04-22 13:48 ` Rob Herring [this message]
2022-04-25 22:32 ` Patrick Daly
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='CAL_JsqKSJbPT5ChmLLQME7rF=OYFe8Mk_x-DH7hL9FoV9zprRg@mail.gmail.com' \
--to=robh+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=quic_pdaly@quicinc.com \
--cc=surenb@google.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).