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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




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 <phil@xxxxxxxxxxxxxxx>
---
 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@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]
  Powered by Linux