From: Pantelis Antoniou <pantelis.antoniou@konsulko.com>
To: Rob Herring <robh@kernel.org>
Cc: Alan Tull <atull@kernel.org>,
Frank Rowand <frowand.list@gmail.com>,
"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
Michael Ellerman <mpe@ellerman.id.au>,
linuxppc-dev <linuxppc-dev@lists.ozlabs.org>,
linux-kernel <linux-kernel@vger.kernel.org>,
Benjamin Herrenschmidt <benh@kernel.crashing.org>,
Paul Mackerras <paulus@samba.org>,
David Laight <David.Laight@aculab.com>,
linux-fpga@vger.kernel.org
Subject: Re: [PATCH v2 5/5] of/fdt: only store the device node basename in full_name
Date: Wed, 18 Oct 2017 18:53:05 +0300 [thread overview]
Message-ID: <1508341985.25643.12.camel@hp800z> (raw)
In-Reply-To: <CAL_JsqKR3Jg+tgZr4xGPtcWnZW7ng741YjuyUFaS2SXKXbxGtg@mail.gmail.com>
On Wed, 2017-10-18 at 10:44 -0500, Rob Herring wrote:
> On Wed, Oct 18, 2017 at 10:12 AM, Alan Tull <atull@kernel.org> wrote:
> > On Tue, Oct 17, 2017 at 6:51 PM, Frank Rowand <frowand.list@gmail.com> wrote:
> >> On 10/17/17 14:46, Rob Herring wrote:
> >>> On Tue, Oct 17, 2017 at 4:32 PM, Alan Tull <atull@kernel.org> wrote:
> >>>> On Mon, Aug 21, 2017 at 10:16 AM, Rob Herring <robh@kernel.org> wrote:
> >>>>
> >>>> Hi Rob,
> >>>>
> >>>>> With dependencies on a statically allocated full path name converted to
> >>>>> use %pOF format specifier, we can store just the basename of node, and
> >>>>> the unflattening of the FDT can be simplified.
> >>>>>
> >>>>> This commit will affect the remaining users of full_name. After
> >>>>> analyzing these users, the remaining cases should only change some print
> >>>>> messages. The main users of full_name are providing a name for struct
> >>>>> resource. The resource names shouldn't be important other than providing
> >>>>> /proc/iomem names.
> >>>>>
> >>>>> We no longer distinguish between pre and post 0x10 dtb formats as either
> >>>>> a full path or basename will work. However, less than 0x10 formats have
> >>>>> been broken since the conversion to use libfdt (and no one has cared).
> >>>>> The conversion of the unflattening code to be non-recursive also broke
> >>>>> pre 0x10 formats as the populate_node function would return 0 in that
> >>>>> case.
> >>>>>
> >>>>> Signed-off-by: Rob Herring <robh@kernel.org>
> >>>>> ---
> >>>>> v2:
> >>>>> - rebase to linux-next
> >>>>>
> >>>>> drivers/of/fdt.c | 69 +++++++++-----------------------------------------------
> >>>>> 1 file changed, 11 insertions(+), 58 deletions(-)
> >>>>
> >>>> I've just updated to the latest next branch and am finding problems
> >>>> applying overlays. Reverting this commit alleviates things. The
> >>>> errors I get are:
> >>>>
> >>>> [ 88.498704] OF: overlay: Failed to apply prop @/__symbols__/clk_0
> >>>> [ 88.513447] OF: overlay: apply failed '/__symbols__'
> >>>> [ 88.518423] create_overlay: Failed to create overlay (err=-12)
> >>>
> >>> Frank's series with overlay updates should fix this.
> >>
> >> Yes, it does:
> >>
> >> [PATCH v3 11/12] of: overlay: remove a dependency on device node full_name
> >
> > Thanks for the fast response. I fetched the dt/next branch to test
> > this but there are sufficient changes that Pantelis' "OF: DT-Overlay
> > configfs interface (v7)" is broken now. I've been adding that
> > downstream since 4.4. We're using it as an interface for applying
> > overlays to program FPGAs. If we fix it again, is there any chance
> > that can go upstream now?
>
> With a drive-by posting once every few years, no.
>
I take offense to that. There's nothing changed in the patch for years.
Reposting the same patch without changes would achieve nothing.
> The issue remains that the kernel is not really setup to deal with any
> random property or node to be changed at any point in run-time. I
> think there needs to be some restrictions around what the overlays can
> touch. We can't have it be wide open and then lock things down later
> and break users. One example of what you could do is you can only add
> sub-trees to whitelisted nodes. That's probably acceptable for your
> usecase.
>
Defining what can and what cannot be changed is not as trivial as a
list of white-listed nodes.
In some cases there is a whole node hierarchy being inserted (like in
a FPGA). In others, it's merely changing a status property to "okay" and
a few device parameters.
The real issue is that the kernel has no way to verify that a given
device tree, either at boot time or at overlay application time, is
correct.
When the tree is wrong at boot-time you'll hang (if you're lucky).
If the tree is wrong at run-time you'll get some into some unidentified
funky state.
Finally what is, and what is not 'correct' is not for the kernel to
decide arbitrarily, it's a matter of policy, different for each
use-case.
> Rob
Regards
-- Pantelis
next prev parent reply other threads:[~2017-10-18 15:53 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-08-21 15:16 [PATCH v2 0/5] Removing full paths from DT full_name Rob Herring
2017-08-21 15:16 ` [PATCH v2 1/5] powerpc: Convert to using %pOF instead of full_name Rob Herring
2017-08-24 12:37 ` [v2,1/5] " Michael Ellerman
2017-08-21 15:16 ` [PATCH v2 2/5] powerpc: pseries: vio: match parent nodes with of_find_node_by_path Rob Herring
2017-08-22 5:12 ` Michael Ellerman
2017-08-24 18:08 ` Rob Herring
2017-08-25 0:10 ` Michael Ellerman
2017-08-21 15:16 ` [PATCH v2 3/5] powerpc: pseries: remove dlpar_attach_node dependency on full path Rob Herring
2017-08-24 12:37 ` [v2, " Michael Ellerman
2017-08-21 15:16 ` [PATCH v2 4/5] powerpc: pseries: only store the device node basename in full_name Rob Herring
2017-10-03 9:26 ` Michael Ellerman
2017-10-03 18:44 ` Rob Herring
2017-10-04 12:37 ` Michael Ellerman
2017-08-21 15:16 ` [PATCH v2 5/5] of/fdt: " Rob Herring
2017-10-17 21:32 ` Alan Tull
2017-10-17 21:46 ` Rob Herring
2017-10-17 23:51 ` Frank Rowand
2017-10-18 15:12 ` Alan Tull
2017-10-18 15:44 ` Rob Herring
2017-10-18 15:53 ` Pantelis Antoniou [this message]
2017-10-18 18:30 ` Rob Herring
2017-10-18 21:46 ` Frank Rowand
2017-10-19 8:41 ` Pantelis Antoniou
2017-10-19 8:51 ` Pantelis Antoniou
2017-10-19 20:06 ` Moritz Fischer
2017-10-19 21:46 ` Frank Rowand
2017-10-20 8:06 ` Pantelis Antoniou
2017-10-18 18:39 ` Alan Tull
2017-10-18 21:40 ` Frank Rowand
2017-11-28 13:13 ` Geert Uytterhoeven
2017-11-28 13:26 ` Rob Herring
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=1508341985.25643.12.camel@hp800z \
--to=pantelis.antoniou@konsulko.com \
--cc=David.Laight@aculab.com \
--cc=atull@kernel.org \
--cc=benh@kernel.crashing.org \
--cc=devicetree@vger.kernel.org \
--cc=frowand.list@gmail.com \
--cc=linux-fpga@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=mpe@ellerman.id.au \
--cc=paulus@samba.org \
--cc=robh@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 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).