From: frowand.list@gmail.com
To: Rob Herring <robh+dt@kernel.org>,
pantelis.antoniou@konsulko.com,
Pantelis Antoniou <panto@antoniou-consulting.com>
Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
geert@linux-m68k.org, laurent.pinchart+renesas@ideasonboard.com
Subject: [PATCH v7 0/5] of: change overlay apply input data from unflattened
Date: Sat, 3 Mar 2018 16:17:48 -0800 [thread overview]
Message-ID: <1520122673-11003-1-git-send-email-frowand.list@gmail.com> (raw)
From: Frank Rowand <frank.rowand@sony.com>
Move duplicating and unflattening of an overlay flattened devicetree
(FDT) into the overlay application code. To accomplish this,
of_overlay_apply() is replaced by of_overlay_fdt_apply().
The copy of the FDT (aka "duplicate FDT") now belongs to devicetree
code, which is thus responsible for freeing the duplicate FDT. The
caller of of_overlay_fdt_apply() remains responsible for freeing the
original FDT.
The unflattened devicetree now belongs to devicetree code, which is
thus responsible for freeing the unflattened devicetree.
These ownership changes prevent early freeing of the duplicated FDT
or the unflattened devicetree, which could result in use after free
errors.
These changes led to migrating some unittest overlay data into
their own devicetree source files, and then converting most of
them to use sugar syntax instead of hand coding fragments.
Changes from v6:
- patches 2-5 were previously patches 1-4
- patch 1/5 previously submitted separately as:
"x86: devicetree: fix config option around x86_flattree_get_config()"
https://lkml.org/lkml/2018/3/2/1148
Changes from v5:
- Add __init to of_unittest_apply_revert_overlay_check(),
of_unittest_overlay_5(), and of_unittest_overlay_11() to fix
compile warnings reported by Geert
Changes from v4:
(all in patch 1/4)
- move of_overlay_fdt_apply() prototype from of_private.h to of.h
- of_overlay_apply(): add kfree(fdt) if resolve phandles or
initialize changeset fail
- of_overlay_fdt_apply(): add parameter size of overlay_fdt and use
it for some additional validation of the overlay fdt
- update unittest.c with additional parameter to of_overlay_fdt_apply()
Changes from v3:
- patch 1/4: OF_OVERLAY: add select OF_FLATTREE
Changes from v2:
- improve error messages in patch 4/4, as suggested by Geert
Changes from v1:
- rebase on v4.16-rc1
- update documentation
- split out error message to a separate patch
Frank Rowand (5):
x86: devicetree: fix config option around x86_flattree_get_config()
of: change overlay apply input data from unflattened to FDT
of: Documentation: of_overlay_apply() replaced by
of_overlay_fdt_apply()
of: convert unittest overlay devicetree source to sugar syntax
of: improve reporting invalid overlay target path
Documentation/devicetree/overlay-notes.txt | 4 +-
arch/x86/kernel/devicetree.c | 2 +-
drivers/of/Kconfig | 1 +
drivers/of/overlay.c | 134 ++++++++--
drivers/of/resolver.c | 6 -
drivers/of/unittest-data/Makefile | 28 ++-
drivers/of/unittest-data/overlay.dts | 101 ++++----
drivers/of/unittest-data/overlay_0.dts | 14 ++
drivers/of/unittest-data/overlay_1.dts | 14 ++
drivers/of/unittest-data/overlay_10.dts | 27 ++
drivers/of/unittest-data/overlay_11.dts | 28 +++
drivers/of/unittest-data/overlay_12.dts | 14 ++
drivers/of/unittest-data/overlay_13.dts | 14 ++
drivers/of/unittest-data/overlay_15.dts | 30 +++
drivers/of/unittest-data/overlay_2.dts | 9 +
drivers/of/unittest-data/overlay_3.dts | 9 +
drivers/of/unittest-data/overlay_4.dts | 18 ++
drivers/of/unittest-data/overlay_5.dts | 9 +
drivers/of/unittest-data/overlay_6.dts | 10 +
drivers/of/unittest-data/overlay_7.dts | 10 +
drivers/of/unittest-data/overlay_8.dts | 10 +
drivers/of/unittest-data/overlay_9.dts | 10 +
drivers/of/unittest-data/overlay_bad_phandle.dts | 23 +-
drivers/of/unittest-data/overlay_bad_symbol.dts | 25 +-
drivers/of/unittest-data/tests-overlay.dtsi | 217 +---------------
drivers/of/unittest.c | 300 +++++++++++------------
include/linux/of.h | 6 +-
27 files changed, 586 insertions(+), 487 deletions(-)
create mode 100644 drivers/of/unittest-data/overlay_0.dts
create mode 100644 drivers/of/unittest-data/overlay_1.dts
create mode 100644 drivers/of/unittest-data/overlay_10.dts
create mode 100644 drivers/of/unittest-data/overlay_11.dts
create mode 100644 drivers/of/unittest-data/overlay_12.dts
create mode 100644 drivers/of/unittest-data/overlay_13.dts
create mode 100644 drivers/of/unittest-data/overlay_15.dts
create mode 100644 drivers/of/unittest-data/overlay_2.dts
create mode 100644 drivers/of/unittest-data/overlay_3.dts
create mode 100644 drivers/of/unittest-data/overlay_4.dts
create mode 100644 drivers/of/unittest-data/overlay_5.dts
create mode 100644 drivers/of/unittest-data/overlay_6.dts
create mode 100644 drivers/of/unittest-data/overlay_7.dts
create mode 100644 drivers/of/unittest-data/overlay_8.dts
create mode 100644 drivers/of/unittest-data/overlay_9.dts
--
Frank Rowand <frank.rowand@sony.com>
next reply other threads:[~2018-03-04 0:17 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-03-04 0:17 frowand.list [this message]
2018-03-04 0:17 ` [PATCH v7 1/5] x86: devicetree: fix config option around x86_flattree_get_config() frowand.list
2018-03-04 0:27 ` Frank Rowand
2018-03-04 7:20 ` Thomas Gleixner
2018-03-04 0:17 ` [PATCH v7 2/5] of: change overlay apply input data from unflattened to FDT frowand.list
2018-04-04 22:35 ` Jan Kiszka
2018-04-05 0:55 ` Rob Herring
2018-04-05 7:22 ` Jan Kiszka
2018-04-05 19:16 ` Frank Rowand
2018-04-05 19:26 ` Rob Herring
2018-04-05 19:37 ` Frank Rowand
2018-04-05 19:13 ` Frank Rowand
2018-04-05 19:17 ` Jan Kiszka
2018-04-05 18:59 ` Frank Rowand
2018-04-05 19:13 ` Jan Kiszka
2018-04-05 19:28 ` Frank Rowand
2018-04-05 19:38 ` Jan Kiszka
2018-04-05 20:33 ` Frank Rowand
2018-04-05 21:12 ` Rob Herring
2018-04-11 5:42 ` Jan Kiszka
2018-04-22 10:30 ` Jan Kiszka
2018-04-23 22:38 ` Frank Rowand
2018-04-24 5:29 ` Jan Kiszka
2018-04-24 16:08 ` Alan Tull
2018-04-24 18:26 ` Alan Tull
2018-04-25 5:38 ` Jan Kiszka
2018-04-24 21:15 ` Frank Rowand
2018-04-25 5:22 ` Jan Kiszka
2018-04-25 18:56 ` Frank Rowand
2018-04-25 19:02 ` Frank Rowand
2018-04-25 19:40 ` Jan Kiszka
2018-04-25 19:53 ` Geert Uytterhoeven
2018-04-25 20:09 ` Jan Kiszka
2018-04-25 23:07 ` Frank Rowand
2018-04-24 20:56 ` Frank Rowand
2018-04-25 5:23 ` Jan Kiszka
2018-04-25 18:40 ` Frank Rowand
2018-04-25 20:07 ` Jan Kiszka
2018-04-25 20:26 ` Alan Tull
2018-04-26 0:20 ` Frank Rowand
2018-04-25 14:59 ` Alan Tull
2018-04-25 17:41 ` Frank Rowand
2018-04-25 18:19 ` Alan Tull
2018-04-26 0:07 ` Frank Rowand
2018-04-26 0:10 ` Frank Rowand
2018-03-04 0:17 ` [PATCH v7 3/5] of: Documentation: of_overlay_apply() replaced by of_overlay_fdt_apply() frowand.list
2018-03-04 0:17 ` [PATCH v7 4/5] of: convert unittest overlay devicetree source to sugar syntax frowand.list
2018-03-04 0:17 ` [PATCH v7 5/5] of: improve reporting invalid overlay target path frowand.list
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=1520122673-11003-1-git-send-email-frowand.list@gmail.com \
--to=frowand.list@gmail.com \
--cc=devicetree@vger.kernel.org \
--cc=geert@linux-m68k.org \
--cc=laurent.pinchart+renesas@ideasonboard.com \
--cc=linux-kernel@vger.kernel.org \
--cc=pantelis.antoniou@konsulko.com \
--cc=panto@antoniou-consulting.com \
--cc=robh+dt@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.