From: Frank Rowand
Move more code into of_overlay_apply() so that it does not have
to be duplicated by each caller of of_overlay_apply().
The test in of_resolve_phandles() that the overlay tree is detached is
temporarily disabled so that old style overlay unittests do not fail.
Signed-off-by:
From: Frank Rowand
Continue improving the readability of overlay.c. The previous patches
renamed identifiers. This patch is split out from the previous patches
to make the previous patches easier to review.
Changes are:
- minor code restructuring
- some initialization of an overlay
From: Frank Rowand
The process of applying an overlay consists of:
- unflatten an overlay FDT (flattened device tree) into an
EDT (expanded device tree)
- fixup the phandle values in the overlay EDT to fit in a
range above the phandle values in the live device tree
- create the
From: Frank Rowand
kbasename() will not return NULL if passed a valid string. If
the parameter passed to kbasename() in this case is already NULL
then the devicetree has been corrupted.
Signed-off-by: Frank Rowand
---
drivers/of/overlay.c | 2 --
1 file changed, 2 deletions(-)
diff --git
From: Frank Rowand
The code to apply symbols from an overlay to the live device tree
was implemented with the intent to be minimally intrusive on the
existing code. After recent restructuring of the overlay apply
code, it is easier to disintangle the code that applies the
symbols, and to make
From: Frank Rowand
The "%pOF" printf format was recently added to print the
full name of a device tree node, with the intent of changing
the node full_name field to contain only the node name instead
of the full path of the node.
dup_and_fixup_symbol_prop() duplicates a property from the
From: Frank Rowand
Use normal shorthand for comparing a variable to zero.
For variable "XXX":
convert (XXX == 0) to (!XXX)
convert (XXX != 0) to (XXX)
Signed-off-by: Frank Rowand
---
drivers/of/overlay.c | 36 ++--
1 file changed, 18 insertions(+), 18
From: Frank Rowand
When an overlay contains a node that already exists in
the live device tree, the overlay node is not allowed
to change the phandle of the existing node.
The existing check refused to allow an overlay node to
set the node phandle even when the existing node did
not have a
From: Frank Rowand
The test of whether it is safe to remove an overlay changeset
looked at whether any node in the overlay changeset was in a
subtree rooted at any more recently applied overlay changeset
node.
The test failed to determine whether any node in the overlay
changeset was the root
From: Frank Rowand
When an attempt to apply an overlay changeset fails, an effort
is made to revert any partial application of the changeset.
When an attempt to remove an overlay changeset fails, an effort
is made to re-apply any partial reversion of the changeset.
The existing code does not
From: Frank Rowand
More renaming of identifiers to better reflect what they do.
Signed-off-by: Frank Rowand
---
drivers/of/overlay.c | 24 ++--
1 file changed, 18 insertions(+), 6 deletions(-)
diff --git a/drivers/of/overlay.c b/drivers/of/overlay.c
index
From: Frank Rowand
I have found the device tree overlay code to be difficult to read and
maintain. This patch series attempts to improve that situation.
The cleanup includes some changes visible to users of overlays. The
only in kernel user of overlays is fixed up for those changes. The
in
From: Frank Rowand
This patch is aimed primarily at drivers/of/overlay.c, but those
changes also have a small impact in a few other files.
overlay.c is difficult to read and maintain. Improve readability:
- Rename functions, types and variables to better reflect what
they do and to be
From: Frank Rowand
Follows recommendations in Documentation/process/coding-style.rst,
section 8, Commenting.
Some in function comments are promoted to function header comments.
Signed-off-by: Frank Rowand
---
drivers/of/overlay.c | 53
1
From: Frank Rowand
Add my name to the list.
Signed-off-by: Frank Rowand
---
Hi Greg,
I noticed that there is a double entry for Ivan Safonov, just below
where my name goes. I didn't want to create a merge conflict with
this patch, so I'm leaving that alone.
From: Frank Rowand
Update dtx_diff include paths in the same manner as:
commit b12869a8d519 ("of: remove drivers/of/testcase-data from
include search path for CPP"), commit 5ffa2aed389c ("of: remove
arch/$(SRCARCH)/boot/dts from include search path for CPP"), and
commit 50f9ddaf64e1 ("of: search
From: Frank Rowand
Update dtx_diff include paths in the same manner as:
commit b12869a8d519 ("of: remove drivers/of/testcase-data from
include search path for CPP"), commit 5ffa2aed389c ("of: remove
arch/$(SRCARCH)/boot/dts from include search path for CPP"), and
commit 50f9ddaf64e1 ("of: search
From: Frank Rowand
Update dtx_diff include paths in the same manner as:
commit b12869a8d519 ("of: remove drivers/of/testcase-data from
include search path for CPP"), commit 5ffa2aed389c ("of: remove
arch/$(SRCARCH)/boot/dts from include search path for CPP"), and
commit 50f9ddaf64e1 ("of: search
From: Frank Rowand
struct device_node full_name has been changed to include the
basename instead of the full path. kbasename() is no longer
needed to extract the basename from full_name.
Signed-off-by: Frank Rowand
---
drivers/of/base.c | 4 ++--
1 file changed, 2 insertions(+), 2
From: Frank Rowand
Struct device_node full_name no longer includes the full path
name.
Fix some broken overlay code that was not updated to reflect this.
Clean up the unittest changeset test that calls into this
overlay code.
kbasename(->full_name) is no longer needed, so remove kbasename()
From: Frank Rowand
struct device_node full_name has been changed to include the
basename instead of the full path. kbasename() is no longer
needed to extract the basename from full_name.
Signed-off-by: Frank Rowand
---
drivers/of/of_reserved_mem.c | 4 +---
1 file changed, 1 insertion(+), 3
From: Frank Rowand
Struct device_node full_name no longer includes the full path
name. The overlay node creation code was not modified to
reflect this change. Fix the node names generate by overlay
code to contain only the basename.
Unittests call an overlay internal function to create new
From: Frank Rowand
struct device_node full_name has been changed to include the
basename instead of the full path. kbasename() is no longer
needed to extract the basename from full_name.
Signed-off-by: Frank Rowand
---
drivers/of/platform.c | 2 +-
1 file changed, 1 insertion(+), 1
From: Frank Rowand
In preparation for fixing __of_node_dup(), clean up the unittest
function that calls it.
Devicetree nodes created from a flattened device tree have a name
property. Follow this convention for nodes added by a changeset.
For node added by changeset, remove incorrect
From: Frank Rowand
struct device_node full_name has been changed to include the
basename instead of the full path. kbasename() is no longer
needed to extract the basename from full_name.
Signed-off-by: Frank Rowand
---
drivers/of/kobj.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
From: Frank Rowand
Signed-off-by: Frank Rowand
---
Documentation/devicetree/overlay-notes.txt | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/Documentation/devicetree/overlay-notes.txt
b/Documentation/devicetree/overlay-notes.txt
index c4aa0adf13ec..5175a24d387e 100644
From: Frank Rowand
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
From: Frank Rowand
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
From: Frank Rowand
The unittest-data overlays have been pulled into proper overlay
devicetree source files without changing their format. The
next step is to convert them to use sugar syntax instead of
hand coding overlay fragments structure.
A few of the overlays can not be converted because
From: Frank Rowand
Errors while developing the patch to create of_overlay_fdt_apply()
exposed inadequate error messages to debug problems when overlay
devicetree fragment nodes contain an invalid target path. Improve
the messages in find_target_node() to remedy this.
Signed-off-by: Frank
From: Frank Rowand
x86_flattree_get_config() is incorrectly protected by
ifdef CONFIG_OF_FLATTREE. It uses of_get_flat_dt_size(), which
only exists if CONFIG_OF_EARLY_FLATTREE. This issue has not
been exposed previously because OF_FLATTREE did not occur unless
it was selected by
From: Frank Rowand
Errors while developing the patch to create of_overlay_fdt_apply()
exposed inadequate error messages to debug problems when overlay
devicetree fragment nodes contain an invalid target path. Improve
the messages in find_target_node() to remedy this.
Signed-off-by: Frank
From: Frank Rowand
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
From: Frank Rowand
The unittest-data overlays have been pulled into proper overlay
devicetree source files without changing their format. The
next step is to convert them to use sugar syntax instead of
hand coding overlay fragments structure.
A few of the overlays can not be converted because
From: Frank Rowand
x86_flattree_get_config() is incorrectly protected by
ifdef CONFIG_OF_FLATTREE. It uses of_get_flat_dt_size(), which
only exists if CONFIG_OF_EARLY_FLATTREE. This issue has not
been exposed previously because OF_FLATTREE did not occur unless
it was selected by
From: Frank Rowand
Signed-off-by: Frank Rowand
---
Documentation/devicetree/overlay-notes.txt | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/Documentation/devicetree/overlay-notes.txt
b/Documentation/devicetree/overlay-notes.txt
index c4aa0adf13ec..5175a24d387e 100644
From: Frank Rowand
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
From: Frank Rowand
Create a cache of the nodes that contain a phandle property. Use this
cache to find the node for a given phandle value instead of scanning
the devicetree to find the node. If the phandle value is not found
in the cache, of_find_node_by_phandle() will fall back to the tree
From: Frank Rowand
The initial implementation of the of_find_node_by_phandle() cache
allocates the cache using kcalloc(). Add an early boot allocation
of the cache so it will be usable during early boot. Switch over
to the kcalloc() based cache once normal memory allocation
becomes available.
From: Frank Rowand
Create a cache of the nodes that contain a phandle property. Use this
cache to find the node for a given phandle value instead of scanning
the devicetree to find the node. If the phandle value is not found
in the cache, of_find_node_by_phandle() will fall back to the tree
From: Frank Rowand
When CONFIG_HAVE_MEMBLOCK is not set, an error version of
memblock_alloc() exists. Add the matching memblock_free().
Signed-off-by: Frank Rowand
---
Andrew or Michal, can you please ack this patch to be accepted
by Rob?
With "of: add early boot allocation of
From: Frank Rowand
(One line description of patch 0/2 is now misleading, but leaving
intact to make it easier to find v1. One line description of other
patches updated as they will be part of the git commit record.)
Struct device_node full_name no longer includes the full path
name.
Fix some
From: Frank Rowand
In preparation for fixing __of_node_dup(), clean up the unittest
function that calls it.
Devicetree nodes created from a flattened device tree have a name
property. Follow this convention for nodes added by a changeset.
For node added by changeset, remove incorrect
From: Frank Rowand
Struct device_node full_name no longer includes the full path name
when the devicetree is created from a flattened device tree (FDT).
The overlay node creation code was not modified to reflect this
change. Fix the node full_name generated by overlay code to contain
only the
From: Frank Rowand
Errors while developing the patch to create of_overlay_fdt_apply()
exposed inadequate error messages to debug problems when overlay
devicetree fragment nodes contain an invalid target path. Improve
the messages in find_target_node() to remedy this.
Signed-off-by: Frank
From: Frank Rowand
kbuild test robot reported a new warning for a recent patch:
>> drivers/of/overlay.c:832:2: error: implicit declaration of function
>> 'of_fdt_unflatten_tree' [-Werror=implicit-function-declaration]
of_fdt_unflatten_tree(new_fdt, NULL, _root);
The cause is that the
From: Frank Rowand
Symbols in a loaded overlay are not currently available to subsequently
loaded overlays because the properties in the overlay's __symbols__
node are not loaded into the live device tree.
Patch 1 is unittests to test patches 2 and 3.
Patch 2 fixes a problem discovered while
From: Frank Rowand
Correct existing node name detection when overlay node name has
a unit-address.
Expected test result is overlay will update the nodes and properties
for /testcase-data-2/fairway-1/ride@100/ after the patch is applied.
Before this patch is applied:
Console error message
From: Frank Rowand
Add overlay __symbols__ properties to live tree when an overlay
is added to the live tree so that the symbols are available to
subsequent overlays.
Expected test result is new __symbols__ entries for labels from
the overlay after the patch is applied.
Before this patch is
From: Frank Rowand
Add nodes and properties to overlay_base and overlay dts files to
test for
- incorrect existing node name detection when overlay node name
has a unit-address
- adding overlay __symbols__ properties to live tree when an
overlay is added to the live tree
From: Frank Rowand
Correct existing node name detection when overlay node name has
a unit-address.
Expected test result is overlay will update the nodes and properties
for /testcase-data-2/fairway-1/ride@100/ after the patch is applied.
Before this patch is applied:
Console error message
From: Frank Rowand
Symbols in a loaded overlay are not currently available to subsequently
loaded overlays because the properties in the overlay's __symbols__
node are not loaded into the live device tree.
Patch 1 is unittests to test patches 2 and 3.
Patch 2 fixes a problem discovered while
From: Frank Rowand
Add nodes and properties to overlay_base and overlay dts files to
test for
- incorrect existing node name detection when overlay node name
has a unit-address
- adding overlay __symbols__ properties to live tree when an
overlay is added to the live tree
From: Frank Rowand
Add overlay __symbols__ properties to live tree when an overlay
is added to the live tree so that the symbols are available to
subsequent overlays.
Expected test result is new __symbols__ entries for labels from
the overlay after the patch is applied.
Before this patch is
From: Frank Rowand
Add ABI documentation for /sys/firmware/fdt
Change obsolete contact for /sys/firmware/devicetree/* to mail list
Signed-off-by: Frank Rowand
---
changes from v1:
- Remove obsolete email address as contact for /sys/firmware/devicetree/*
- For newly documented
From: Frank Rowand
Add ABI documentation for /sys/firmware/fdt
Update contact email for /sys/firmware/devicetree/* and add mail list
Signed-off-by: Frank Rowand
---
changes from v2:
- ignore v2, v3 is based on v1
changes from v1:
- updated Grant's email address
- updated Frank's email
From: Frank Rowand
Boot fails for qcom-apq8074-dragonboard on 4.13-rc1 with error:
OF: ERROR: Bad of_node_put() on /soc/usb@f9a55000
The error will occur if the configuration is set to:
CONFIG_OF_OVERLAY y
CONFIG_OF_UNITTEST y
CONFIG_OF_DYNAMIC y
CONFIG_OF_RESOLVE y
If
From: Frank Rowand
Boot fails for qcom-apq8074-dragonboard on 4.13-rc1 with error:
OF: ERROR: Bad of_node_put() on /soc/spmi@fc4cf000/pm8941@1/regulators
The error will occur if the configuration is set to:
CONFIG_OF_OVERLAY y
CONFIG_OF_UNITTEST y
CONFIG_OF_DYNAMIC y
From: Frank Rowand
Correct existing node name detection when overlay node name has
a unit-address.
Expected test result is overlay will update the nodes and properties
for /testcase-data-2/fairway-1/ride@100/ after this commit.
Before this commit:
Console error message near end of
From: Frank Rowand
Symbols in a loaded overlay are not currently available to subsequently
loaded overlays because the properties in the overlay's __symbols__
node are not loaded into the live device tree.
Patch 1 is unittests to test patches 2 and 3.
Patch 2 fixes a problem discovered while
From: Frank Rowand
Add nodes and properties to overlay_base and overlay dts files to
test for
- incorrect existing node name detection when overlay node name
has a unit-address
- adding overlay __symbols__ properties to live tree when an
overlay is added to the live tree
The
From: Frank Rowand
Add overlay __symbols__ properties to live tree when an overlay
is added to the live tree so that the symbols are available to
subsequent overlays.
Expected test result is new __symbols__ entries for labels from
the overlay after this commit.
Before this commit:
Console
From: Frank Rowand
Add overlay __symbols__ properties to live tree when an overlay
is added to the live tree so that the symbols are available to
subsequent overlays.
Expected test result is new __symbols__ entries for labels from
the overlay after this commit.
Before this commit:
Console
From: Frank Rowand
Symbols in a loaded overlay are not currently available to subsequently
loaded overlays because the properties in the overlay's __symbols__
node are not loaded into the live device tree.
Patch 1 is unittests to test patches 2 and 3.
Patch 2 fixes a problem discovered while
From: Frank Rowand
Add nodes and properties to overlay_base and overlay dts files to
test for
- incorrect existing node name detection when overlay node name
has a unit-address
- adding overlay __symbols__ properties to live tree when an
overlay is added to the live tree
The
From: Frank Rowand
Correct existing node name detection when overlay node name has
a unit-address.
Expected test result is overlay will update the nodes and properties
for /testcase-data-2/fairway-1/ride@100/ after this commit.
Before this commit:
Console error message near end of
From: Frank Rowand
Update the cpp include flags for compiling device tree dts files
to match the changes made to the kernel build process in
commit d5d332d3f7e8 ("devicetree: Move include prefixes from arch
to separate directory").
Cc: # 4.12
Signed-off-by: Frank Rowand
---
From: Frank Rowand
Device tree is impacted by changes to fwnode.h, add a file entry
to OPEN FIRMWARE AND FLATTENED DEVICE TREE
Signed-off-by: Frank Rowand
---
MAINTAINERS | 1 +
1 file changed, 1 insertion(+)
diff --git a/MAINTAINERS b/MAINTAINERS
index c0ac362e850a..cb58c20b1ef8 100644
---
From: Frank Rowand
Rafael, can you please take patch 1?
Rob, can you please take patch 2?
Several maintainers are impacted by changes to fwnode.h, add a
file entry for those maintainers.
Frank Rowand (2):
MAINTAINERS: device property: acpi: add fwnode.h
MAINTAINERS: device property: of:
From: Frank Rowand
ACPI is impacted by changes to fwnode.h, add a file entry
to ACPI
Signed-off-by: Frank Rowand
---
MAINTAINERS | 1 +
1 file changed, 1 insertion(+)
diff --git a/MAINTAINERS b/MAINTAINERS
index 205d3977ac46..c0ac362e850a 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -302,6
From: Frank Rowand
Documentation/process/submitting-patches.rst contains a non-ascii
character. Change it to the ascii equivalent.
Signed-off-by: Frank Rowand
---
Documentation/process/submitting-patches.rst | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git
From: Frank Rowand
These changes apply on top of the patches in:
[PATCH] of: unittest: Statically apply overlays using fdtoverlay
Message-Id:
<1e42183ccafa1afba33b3e79a4e3efd3329fd133.1610095159.git.viresh.ku...@linaro.org>
There are still some issues to be cleaned up, so not ready for
From: Frank Rowand
Create a cache of the nodes that contain a phandle property. Use this
cache to find the node for a given phandle value instead of scanning
the devicetree to find the node. If the phandle value is not found
in the cache, of_find_node_by_phandle() will fall back to the tree
From: Frank Rowand
Create a cache of the nodes that contain a phandle property. Use this
cache to find the node for a given phandle value instead of scanning
the devicetree to find the node. If the phandle value is not found
in the cache, of_find_node_by_phandle() will fall back to the tree
From: Frank Rowand
A device tree overlay notifier can return NOTIFY_OK, NOTIFY_STOP,
or an embedded errno. overlay_notify() incorrectly reports an
error for NOTIFY_OK.
Reported-by: at...@kernel.org
Signed-off-by: Frank Rowand
---
drivers/of/overlay.c | 2 +-
1 file changed, 1 insertion(+), 1
From: Frank Rowand
The same error string occurs in drivers/of/resolver.c. Change
the error here to more precisely describe this case, and avoid
the possible confusion of looking in the wrong source location
to understand the cause of an error.
Signed-off-by: Frank Rowand
---
And yes, I was
From: Frank Rowand
This is Lixin's patch v3, reworded for my preferred style.
---
If Lixin agrees,
Reviewed-by: Frank Rowand
drivers/of/dynamic.c | 25 +
1 file changed, 13 insertions(+), 12 deletions(-)
diff --git a/drivers/of/dynamic.c b/drivers/of/dynamic.c
From: Frank Rowand
Create a cache of the nodes that contain a phandle property. Use this
cache to find the node for a given phandle value instead of scanning
the devicetree to find the node. If the phandle value is not found
in the cache, of_find_node_by_phandle() will fall back to the tree
From: Frank Rowand
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
From: Frank Rowand
Signed-off-by: Frank Rowand
---
Changes from v1:
- new patch
Documentation/devicetree/overlay-notes.txt | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/Documentation/devicetree/overlay-notes.txt
b/Documentation/devicetree/overlay-notes.txt
index
From: Frank Rowand
The unittest-data overlays have been pulled into proper overlay
devicetree source files without changing their format. The
next step is to convert them to use sugar syntax instead of
hand coding overlay fragments structure.
A few of the overlays can not be converted because
From: Frank Rowand
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
From: Frank Rowand
The unittest-data overlays have been pulled into proper overlay
devicetree source files without changing their format. The
next step is to convert them to use sugar syntax instead of
hand coding overlay fragments structure.
A few of the overlays can not be converted because
From: Frank Rowand
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
From: Frank Rowand
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
From: Frank Rowand
Add -T and --annotations command line arguments to dtx_diff. These
arguments will be passed through to dtc. dtc will then add source
location annotations to its output.
Signed-off-by: Frank Rowand
---
If dtx_diff is provided with a single devicetree source file then
that
From: Frank Rowand
update_node_properties() reports an error when the test data contains
a node (such as "/aliases") that already exists in the base devicetree.
The error is caused by of_fdt_unflatten_tree() autogenerating the
"name" property, thus both the existing node and the new node will
From: Frank Rowand
Name of function attach_node_and_children() is misleading because
if the node already exists in the livetree then only the node's
properties are attached. This works for the existing test data,
but add comment warning of this misleading name.
Signed-off-by: Frank Rowand
---
From: Frank Rowand
1) Suppress expected error message when adding unittest data to livetree.
2) While writing patch 1, noted a misleading function name. Add comment
to the function header warning about possible unexpected results.
Frank Rowand (2):
of: unittest: remove report of
From: Frank Rowand
Fix compile warning in create_dyn_event(): 'ret' may be used uninitialized
in this function [-Wuninitialized].
Fixes: 5448d44c3855 ("tracing: Add unified dynamic event framework")
Signed-off-by: Frank Rowand
---
Compile and boot tested only. Please verify the
From: Frank Rowand
A comment in the review of the patch adding the phandle cache said that
the cache would have to be updated when modules are applied and removed.
This patch implements the cache updates.
Fixes: 0b3ce78e90fc ("of: cache phandle nodes to reduce cost of
From: Frank Rowand
Add -T and --annotations command line arguments to dtx_diff. These
arguments will be passed through to dtc. dtc will then add source
location annotations to its output.
Signed-off-by: Frank Rowand
---
This feature depends upon commit 5667e7ef9a9a ("annotations: add the
From: Frank Rowand
Non-overlay dynamic devicetree node removal may leave the node in
the phandle cache. Subsequent calls to of_find_node_by_phandle()
will incorrectly find the stale entry. This bug exposed the foloowing
phandle cache refcount bug.
The refcount of phandle_cache entries is not
From: Frank Rowand
The phandle cache contains struct device_node pointers. The refcount
of the pointers was not incremented while in the cache, allowing use
after free error after kfree() of the node. Add the proper increment
and decrement of the use count.
Fixes: 0b3ce78e90fc ("of: cache
From: Frank Rowand
Non-overlay dynamic devicetree node removal may leave the node in
the phandle cache. Subsequent calls to of_find_node_by_phandle()
will incorrectly find the stale entry. Remove the node from the
cache.
Add paranoia checks in of_find_node_by_phandle() as a second level
of
From: Frank Rowand
Non-overlay dynamic devicetree node removal may leave the node in
the phandle cache. Subsequent calls to of_find_node_by_phandle()
will incorrectly find the stale entry. Remove the node from the
cache.
Add paranoia checks in of_find_node_by_phandle() as a second level
of
From: Frank Rowand
Non-overlay dynamic devicetree node removal may leave the node in
the phandle cache. Subsequent calls to of_find_node_by_phandle()
will incorrectly find the stale entry. This bug exposed the foloowing
phandle cache refcount bug.
The refcount of phandle_cache entries is not
From: Frank Rowand
The phandle cache contains struct device_node pointers. The refcount
of the pointers was not incremented while in the cache, allowing use
after free error after kfree() of the node. Add the proper increment
and decrement of the use count.
Fixes: 0b3ce78e90fc ("of: cache
From: Frank Rowand
Non-overlay dynamic devicetree node removal may leave the node in
the phandle cache. Subsequent calls to of_find_node_by_phandle()
will incorrectly find the stale entry. This bug exposed the foloowing
phandle cache refcount bug.
The refcount of phandle_cache entries is not
From: Frank Rowand
Non-overlay dynamic devicetree node removal may leave the node in
the phandle cache. Subsequent calls to of_find_node_by_phandle()
will incorrectly find the stale entry. Remove the node from the
cache.
Add paranoia checks in of_find_node_by_phandle() as a second level
of
301 - 400 of 523 matches
Mail list logo