From: Andrea della Porta <andrea.porta@suse.com>
To: Stephen Boyd <sboyd@kernel.org>
Cc: Andrea della Porta <andrea.porta@suse.com>,
Andrew Lunn <andrew@lunn.ch>, Arnd Bergmann <arnd@arndb.de>,
Bjorn Helgaas <bhelgaas@google.com>,
Broadcom internal kernel review list
<bcm-kernel-feedback-list@broadcom.com>,
Catalin Marinas <catalin.marinas@arm.com>,
Claudiu Beznea <claudiu.beznea@tuxon.dev>,
Conor Dooley <conor+dt@kernel.org>,
"David S. Miller" <davem@davemloft.net>,
Derek Kiernan <derek.kiernan@amd.com>,
Dragan Cvetic <dragan.cvetic@amd.com>,
Eric Dumazet <edumazet@google.com>,
Florian Fainelli <florian.fainelli@broadcom.com>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Jakub Kicinski <kuba@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Lee Jones <lee@kernel.org>,
Linus Walleij <linus.walleij@linaro.org>,
Michael Turquette <mturquette@baylibre.com>,
Nicolas Ferre <nicolas.ferre@microchip.com>,
Paolo Abeni <pabeni@redhat.com>, Rob Herring <robh@kernel.org>,
Saravana Kannan <saravanak@google.com>,
Stefan Wahren <wahrenst@gmx.net>, Will Deacon <will@kernel.org>,
devicetree@vger.kernel.org, linux-arch@vger.kernel.org,
linux-arm-kernel@lists.infradead.org, linux-clk@vger.kernel.org,
linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-pci@vger.kernel.org, linux-rpi-kernel@lists.infradead.org,
netdev@vger.kernel.org
Subject: Re: [PATCH 05/11] vmlinux.lds.h: Preserve DTB sections from being discarded after init
Date: Tue, 3 Sep 2024 14:29:18 +0200 [thread overview]
Message-ID: <ZtcBHvI9JxgH9iFT@apocalypse> (raw)
In-Reply-To: <2113b8df52164733a0ee3860bb793d6e.sboyd@kernel.org>
Hi Stephen,
On 12:46 Fri 30 Aug , Stephen Boyd wrote:
> Quoting Andrea della Porta (2024-08-20 07:36:07)
> > The special section .dtb.init.rodata contains dtb and dtbo compiled
> > as objects inside the kernel and ends up in .init.data sectiion that
> > will be discarded early after the init phase. This is a problem for
> > builtin drivers that apply dtb overlay at runtime since this happens
> > later (e.g. during bus enumeration) and also for modules that should
> > be able to do it dynamically during runtime.
> > Move the dtb section to .data.
> >
> > Signed-off-by: Andrea della Porta <andrea.porta@suse.com>
> > ---
> > include/asm-generic/vmlinux.lds.h | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h
> > index ad6afc5c4918..3ae9097774b0 100644
> > --- a/include/asm-generic/vmlinux.lds.h
> > +++ b/include/asm-generic/vmlinux.lds.h
> > @@ -365,6 +365,7 @@
> > TRACE_PRINTKS() \
> > BPF_RAW_TP() \
> > TRACEPOINT_STR() \
> > + KERNEL_DTB() \
>
> The KERNEL_DTB() macro shows the section name is dtb.init.rodata. Can
> you remove the ".init." part if this isn't initdata anymore? And
> shouldn't it be in the RO_DATA() macro?
Ack.
>
> It would be nice to keep the initdata properties when this isn't used
> after init as well. Perhaps we need another macro and/or filename to
> indicate that the DTB{O} can be thrown away after init/module init.
We can certainly add some more filename extension that would place the
relevant data in a droppable section.
Throwing away the dtb/o after init is like the actual KERNEL_DTB macro that
is adding teh data to section .init.data, but this would mean t would be
useful only at very early init stage, just like for CONFIG_OF_UNITTEST.
Throwing after module init could be more difficult though, I think,
for example we're not sure when to discard the section in case of deferred
modules probe.
Many thanks,
Andrea
WARNING: multiple messages have this Message-ID (diff)
From: Andrea della Porta <andrea.porta@suse.com>
To: Stephen Boyd <sboyd@kernel.org>
Cc: Andrew Lunn <andrew@lunn.ch>,
Catalin Marinas <catalin.marinas@arm.com>,
Linus Walleij <linus.walleij@linaro.org>,
Eric Dumazet <edumazet@google.com>,
Dragan Cvetic <dragan.cvetic@amd.com>,
Will Deacon <will@kernel.org>,
linux-clk@vger.kernel.org, linux-arch@vger.kernel.org,
Rob Herring <robh@kernel.org>,
Florian Fainelli <florian.fainelli@broadcom.com>,
Lee Jones <lee@kernel.org>,
Saravana Kannan <saravanak@google.com>,
Broadcom internal kernel review list
<bcm-kernel-feedback-list@broadcom.com>,
linux-pci@vger.kernel.org, Jakub Kicinski <kuba@kernel.org>,
Paolo Abeni <pabeni@redhat.com>,
Michael Turquette <mturquette@baylibre.com>,
devicetree@vger.kernel.org, Conor Dooley <conor+dt@kernel.org>,
Arnd Bergmann <arnd@arndb.de>,
linux-gpio@vger.kernel.org, linux-rpi-kernel@lists.infradead.org,
Bjorn Helgaas <bhelgaas@google.com>,
Andrea della Porta <andrea.porta@suse.com>,
linux-arm-kernel@lists.infradead.org,
Derek Kiernan <derek.kiernan@amd.com>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Claudiu Beznea <claudiu.beznea@tuxon.dev>,
linux-kernel@vger.kernel.org, Stefan Wahren <wahrenst@gmx.net>,
netdev@vger.kernel.org, Krzysztof Kozlowski <krzk+dt@kernel.org>,
"David S. Miller" <davem@davemloft.net>
Subject: Re: [PATCH 05/11] vmlinux.lds.h: Preserve DTB sections from being discarded after init
Date: Tue, 3 Sep 2024 14:29:18 +0200 [thread overview]
Message-ID: <ZtcBHvI9JxgH9iFT@apocalypse> (raw)
In-Reply-To: <2113b8df52164733a0ee3860bb793d6e.sboyd@kernel.org>
Hi Stephen,
On 12:46 Fri 30 Aug , Stephen Boyd wrote:
> Quoting Andrea della Porta (2024-08-20 07:36:07)
> > The special section .dtb.init.rodata contains dtb and dtbo compiled
> > as objects inside the kernel and ends up in .init.data sectiion that
> > will be discarded early after the init phase. This is a problem for
> > builtin drivers that apply dtb overlay at runtime since this happens
> > later (e.g. during bus enumeration) and also for modules that should
> > be able to do it dynamically during runtime.
> > Move the dtb section to .data.
> >
> > Signed-off-by: Andrea della Porta <andrea.porta@suse.com>
> > ---
> > include/asm-generic/vmlinux.lds.h | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h
> > index ad6afc5c4918..3ae9097774b0 100644
> > --- a/include/asm-generic/vmlinux.lds.h
> > +++ b/include/asm-generic/vmlinux.lds.h
> > @@ -365,6 +365,7 @@
> > TRACE_PRINTKS() \
> > BPF_RAW_TP() \
> > TRACEPOINT_STR() \
> > + KERNEL_DTB() \
>
> The KERNEL_DTB() macro shows the section name is dtb.init.rodata. Can
> you remove the ".init." part if this isn't initdata anymore? And
> shouldn't it be in the RO_DATA() macro?
Ack.
>
> It would be nice to keep the initdata properties when this isn't used
> after init as well. Perhaps we need another macro and/or filename to
> indicate that the DTB{O} can be thrown away after init/module init.
We can certainly add some more filename extension that would place the
relevant data in a droppable section.
Throwing away the dtb/o after init is like the actual KERNEL_DTB macro that
is adding teh data to section .init.data, but this would mean t would be
useful only at very early init stage, just like for CONFIG_OF_UNITTEST.
Throwing after module init could be more difficult though, I think,
for example we're not sure when to discard the section in case of deferred
modules probe.
Many thanks,
Andrea
next prev parent reply other threads:[~2024-09-03 12:29 UTC|newest]
Thread overview: 199+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-08-20 14:36 [PATCH 00/11] Add support for RaspberryPi RP1 PCI device using a DT overlay Andrea della Porta
2024-08-20 14:36 ` [PATCH 01/11] dt-bindings: clock: Add RaspberryPi RP1 clock bindings Andrea della Porta
2024-08-20 16:19 ` Conor Dooley
2024-08-20 16:19 ` Conor Dooley
2024-08-20 18:25 ` Andrea della Porta
2024-08-20 18:25 ` Andrea della Porta
2024-08-21 11:46 ` Conor Dooley
2024-08-22 9:35 ` Andrea della Porta
2024-08-22 9:35 ` Andrea della Porta
2024-08-22 9:52 ` Krzysztof Kozlowski
2024-08-22 16:23 ` Conor Dooley
2024-08-22 16:23 ` Conor Dooley
2024-08-23 18:21 ` Andrea della Porta
2024-08-23 18:21 ` Andrea della Porta
2024-08-20 14:36 ` [PATCH 02/11] dt-bindings: pinctrl: Add RaspberryPi RP1 gpio/pinctrl/pinmux bindings Andrea della Porta
2024-08-21 8:42 ` Krzysztof Kozlowski
2024-08-21 8:42 ` Krzysztof Kozlowski
2024-08-30 10:22 ` Andrea della Porta
2024-08-30 10:22 ` Andrea della Porta
2024-08-30 11:46 ` Krzysztof Kozlowski
2024-08-30 11:46 ` Krzysztof Kozlowski
2024-09-02 8:44 ` Andrea della Porta
2024-09-02 8:44 ` Andrea della Porta
2024-08-20 14:36 ` [PATCH 03/11] PCI: of_property: Sanitize 32 bit PCI address parsed from DT Andrea della Porta
2024-08-21 15:24 ` Bjorn Helgaas
2024-08-21 15:24 ` Bjorn Helgaas
2024-08-26 19:51 ` Andrea della Porta
2024-08-26 19:51 ` Andrea della Porta
2024-09-03 22:26 ` Bjorn Helgaas
2024-09-05 16:43 ` Andrea della Porta
2024-09-05 16:43 ` Andrea della Porta
2024-09-05 20:16 ` Bjorn Helgaas
2024-09-05 20:16 ` Bjorn Helgaas
2024-09-27 6:48 ` Andrea della Porta
2024-09-27 6:48 ` Andrea della Porta
2024-09-28 20:17 ` Bjorn Helgaas
2024-09-28 20:17 ` Bjorn Helgaas
2024-10-06 11:20 ` Andrea della Porta
2024-10-06 11:20 ` Andrea della Porta
2024-10-08 1:08 ` Bjorn Helgaas
2024-10-08 1:08 ` Bjorn Helgaas
2024-10-18 12:41 ` Andrea della Porta
2024-10-18 12:41 ` Andrea della Porta
2024-10-18 22:28 ` Bjorn Helgaas
2024-10-18 22:28 ` Bjorn Helgaas
2024-10-19 8:46 ` Andrea della Porta
2024-10-19 8:46 ` Andrea della Porta
2024-08-20 14:36 ` [PATCH 04/11] of: address: Preserve the flags portion on 1:1 dma-ranges mapping Andrea della Porta
2024-08-21 0:16 ` Rob Herring
2024-08-21 0:16 ` Rob Herring
2024-08-21 8:18 ` Andrea della Porta
2024-08-21 8:18 ` Andrea della Porta
2024-08-26 21:29 ` Rob Herring
2024-08-29 10:13 ` Andrea della Porta
2024-08-29 10:13 ` Andrea della Porta
2024-08-29 13:18 ` Rob Herring
2024-08-29 13:18 ` Rob Herring
2024-08-29 16:26 ` Andrea della Porta
2024-08-29 16:26 ` Andrea della Porta
2024-08-30 19:37 ` Rob Herring
2024-08-30 19:37 ` Rob Herring
2024-09-03 9:09 ` Herve Codina
2024-09-03 9:09 ` Herve Codina
2024-09-03 9:33 ` Andrea della Porta
2024-09-03 9:33 ` Andrea della Porta
2024-09-03 18:55 ` Rob Herring
2024-09-03 18:55 ` Rob Herring
2024-09-03 16:15 ` Andrea della Porta
2024-09-03 16:15 ` Andrea della Porta
2024-09-03 18:46 ` Rob Herring
2024-09-03 18:46 ` Rob Herring
2024-09-04 8:33 ` Andrea della Porta
2024-09-04 8:33 ` Andrea della Porta
2024-08-20 14:36 ` [PATCH 05/11] vmlinux.lds.h: Preserve DTB sections from being discarded after init Andrea della Porta
2024-08-30 19:46 ` Stephen Boyd
2024-09-03 12:29 ` Andrea della Porta [this message]
2024-09-03 12:29 ` Andrea della Porta
2024-09-21 20:47 ` Stephen Boyd
2024-09-22 8:14 ` Masahiro Yamada
2024-09-22 8:14 ` Masahiro Yamada
2024-09-23 18:13 ` Stephen Boyd
2024-09-24 2:45 ` Masahiro Yamada
2024-09-24 2:45 ` Masahiro Yamada
2024-08-20 14:36 ` [PATCH 06/11] clk: rp1: Add support for clocks provided by RP1 Andrea della Porta
2024-08-21 13:17 ` Simon Horman
2024-08-21 13:17 ` Simon Horman
2024-08-22 10:04 ` Andrea della Porta
2024-08-22 10:04 ` Andrea della Porta
2024-08-20 14:36 ` [PATCH 07/11] pinctrl: rp1: Implement RaspberryPi RP1 gpio support Andrea della Porta
2024-08-21 8:45 ` Krzysztof Kozlowski
2024-08-21 8:45 ` Krzysztof Kozlowski
2024-08-30 10:39 ` Andrea della Porta
2024-08-30 10:39 ` Andrea della Porta
2024-08-21 9:22 ` kernel test robot
2024-08-21 12:06 ` kernel test robot
2024-08-21 13:27 ` Simon Horman
2024-08-21 13:27 ` Simon Horman
2024-08-23 17:16 ` Andrea della Porta
2024-08-23 17:16 ` Andrea della Porta
2024-08-21 20:51 ` kernel test robot
2024-08-26 8:59 ` Linus Walleij
2024-08-26 8:59 ` Linus Walleij
2024-08-28 15:24 ` Andrea della Porta
2024-08-28 15:24 ` Andrea della Porta
2024-09-02 8:31 ` Linus Walleij
2024-08-20 14:36 ` [PATCH 08/11] misc: rp1: RaspberryPi RP1 misc driver Andrea della Porta
2024-08-21 8:38 ` Krzysztof Kozlowski
2024-08-21 8:38 ` Krzysztof Kozlowski
2024-08-21 14:20 ` Krzysztof Kozlowski
2024-08-21 14:20 ` Krzysztof Kozlowski
2024-08-22 14:33 ` Andrea della Porta
2024-08-22 14:33 ` Andrea della Porta
2024-08-22 14:46 ` Krzysztof Kozlowski
2024-08-30 13:49 ` Andrea della Porta
2024-08-30 13:49 ` Andrea della Porta
2024-08-30 14:21 ` Andrew Lunn
2024-08-30 14:21 ` Andrew Lunn
2024-09-03 14:56 ` Andrea della Porta
2024-09-03 14:56 ` Andrea della Porta
2024-08-30 16:52 ` Krzysztof Kozlowski
2024-08-30 16:52 ` Krzysztof Kozlowski
2024-09-03 15:15 ` Andrea della Porta
2024-09-03 15:15 ` Andrea della Porta
2024-09-03 18:27 ` Krzysztof Kozlowski
2024-09-03 18:27 ` Krzysztof Kozlowski
2024-09-05 16:33 ` Andrea della Porta
2024-09-05 16:33 ` Andrea della Porta
2024-09-05 16:52 ` Krzysztof Kozlowski
2024-09-05 16:52 ` Krzysztof Kozlowski
2024-09-05 18:54 ` Andrea della Porta
2024-09-05 18:54 ` Andrea della Porta
2024-09-05 21:20 ` Krzysztof Kozlowski
2024-09-05 21:20 ` Krzysztof Kozlowski
2024-08-21 13:07 ` kernel test robot
2024-08-21 13:49 ` kernel test robot
2024-08-21 16:20 ` Stefan Wahren
2024-08-23 9:44 ` Andrea della Porta
2024-08-23 9:44 ` Andrea della Porta
2024-08-23 10:23 ` Stefan Wahren
2024-08-23 16:31 ` Andrea della Porta
2024-08-23 16:31 ` Andrea della Porta
2024-08-30 18:27 ` Rob Herring
2024-08-30 18:27 ` Rob Herring
2024-09-02 9:34 ` Andrea della Porta
2024-09-02 9:34 ` Andrea della Porta
2024-08-21 16:55 ` Bjorn Helgaas
2024-08-21 16:55 ` Bjorn Helgaas
2024-08-23 10:21 ` Andrea della Porta
2024-08-23 10:21 ` Andrea della Porta
2024-08-21 17:56 ` kernel test robot
2024-08-24 1:53 ` Greg Kroah-Hartman
2024-08-24 1:53 ` Greg Kroah-Hartman
2024-08-26 9:07 ` Andrea della Porta
2024-08-26 9:07 ` Andrea della Porta
2024-08-26 9:18 ` Greg Kroah-Hartman
2024-08-20 14:36 ` [PATCH 09/11] arm64: defconfig: Enable RP1 misc/clock/gpio drivers as built-in Andrea della Porta
2024-08-21 8:47 ` Krzysztof Kozlowski
2024-08-21 8:47 ` Krzysztof Kozlowski
2024-08-30 22:24 ` Andrea della Porta
2024-08-30 22:24 ` Andrea della Porta
2024-08-20 14:36 ` [PATCH 10/11] net: macb: Add support for RP1's MACB variant Andrea della Porta
2024-08-20 15:13 ` Andrew Lunn
2024-08-20 15:13 ` Andrew Lunn
2024-08-20 18:31 ` Andrea della Porta
2024-08-20 18:31 ` Andrea della Porta
2024-08-21 8:49 ` Krzysztof Kozlowski
2024-08-21 8:49 ` Krzysztof Kozlowski
2024-08-30 22:32 ` Andrea della Porta
2024-08-30 22:32 ` Andrea della Porta
2024-08-21 17:01 ` Florian Fainelli
2024-08-26 20:03 ` Andrea della Porta
2024-08-26 20:03 ` Andrea della Porta
2024-08-20 14:36 ` [PATCH 11/11] arm64: dts: rp1: Add support for MACB contained in RP1 Andrea della Porta
2024-08-21 8:43 ` Krzysztof Kozlowski
2024-08-21 8:43 ` Krzysztof Kozlowski
2024-08-30 22:33 ` Andrea della Porta
2024-08-30 22:33 ` Andrea della Porta
2024-08-21 17:02 ` Florian Fainelli
2024-08-26 20:18 ` Andrea della Porta
2024-08-26 20:18 ` Andrea della Porta
2024-08-21 13:42 ` [PATCH 00/11] Add support for RaspberryPi RP1 PCI device using a DT overlay Krzysztof Kozlowski
2024-08-21 13:42 ` Krzysztof Kozlowski
2024-08-22 9:05 ` Andrea della Porta
2024-08-22 9:05 ` Andrea della Porta
2024-08-22 9:50 ` Krzysztof Kozlowski
2024-08-29 13:11 ` Andrea della Porta
2024-08-29 13:11 ` Andrea della Porta
2024-08-22 13:04 ` Andrew Lunn
2024-08-29 12:01 ` Andrea della Porta
2024-08-29 12:01 ` Andrea della Porta
2024-08-29 13:04 ` Andrew Lunn
2024-08-29 13:13 ` Andrea della Porta
2024-08-29 13:13 ` Andrea della Porta
2024-08-30 5:21 ` Andrea della Porta
2024-08-30 5:21 ` Andrea della Porta
2024-08-30 14:10 ` Andrew Lunn
2024-08-30 14:10 ` Andrew Lunn
2024-09-02 9:21 ` Andrea della Porta
2024-09-02 9:21 ` Andrea della Porta
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=ZtcBHvI9JxgH9iFT@apocalypse \
--to=andrea.porta@suse.com \
--cc=andrew@lunn.ch \
--cc=arnd@arndb.de \
--cc=bcm-kernel-feedback-list@broadcom.com \
--cc=bhelgaas@google.com \
--cc=catalin.marinas@arm.com \
--cc=claudiu.beznea@tuxon.dev \
--cc=conor+dt@kernel.org \
--cc=davem@davemloft.net \
--cc=derek.kiernan@amd.com \
--cc=devicetree@vger.kernel.org \
--cc=dragan.cvetic@amd.com \
--cc=edumazet@google.com \
--cc=florian.fainelli@broadcom.com \
--cc=gregkh@linuxfoundation.org \
--cc=krzk+dt@kernel.org \
--cc=kuba@kernel.org \
--cc=lee@kernel.org \
--cc=linus.walleij@linaro.org \
--cc=linux-arch@vger.kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-clk@vger.kernel.org \
--cc=linux-gpio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=linux-rpi-kernel@lists.infradead.org \
--cc=mturquette@baylibre.com \
--cc=netdev@vger.kernel.org \
--cc=nicolas.ferre@microchip.com \
--cc=pabeni@redhat.com \
--cc=robh@kernel.org \
--cc=saravanak@google.com \
--cc=sboyd@kernel.org \
--cc=wahrenst@gmx.net \
--cc=will@kernel.org \
/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.