DORMANTno replies

[PATCH] of/fdt: Fix EARLY_FLATTREE crash with no DTB

From: Phil Elwell <hidden>
Date: 2014-10-23 11:10:19
Subsystem: open firmware and flattened device tree, the rest · Maintainers: Rob Herring, Saravana Kannan, Linus Torvalds

of_flat_dt_debugfs_export_fdt uses initial_boot_params without checking
if it is valid, and ends up dereferencing a NULL pointer if there is
no DT blob.

This patch adds a check that initial_boot_params is NULL, returning
-ENOENT if it is.

Signed-off-by: Phil Elwell <redacted>
---
  drivers/of/fdt.c | 6 +++++-
  1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c
index d1ffca8..f018e5b 100644
--- a/drivers/of/fdt.c
+++ b/drivers/of/fdt.c
@@ -1085,8 +1085,12 @@ static struct debugfs_blob_wrapper flat_dt_blob;

  static int __init of_flat_dt_debugfs_export_fdt(void)
  {
-    struct dentry *d = debugfs_create_dir("device-tree", NULL);
+    struct dentry *d;

+    if (!initial_boot_params)
+        return -ENOENT;
+
+    d = debugfs_create_dir("device-tree", NULL);
      if (!d)
          return -ENOENT;
-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help