of: Drop properties with "/" in their name
Michael Ellerman [Wed, 19 May 2010 02:32:29 +0000 (02:32 +0000)]
Some bogus firmwares include properties with "/" in their name. This
causes problems when creating the /proc/device-tree file system,
because the slash is taken to indicate a directory.

We don't care about those properties, and we don't want to encourage
them, so just throw them away when creating /proc/device-tree.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Tested-by: Christian Kujau <lists@nerdbynature.de>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>

fs/proc/proc_devtree.c

index ce94801..d9396a4 100644 (file)
@@ -209,6 +209,9 @@ void proc_device_tree_add_node(struct device_node *np,
        for (pp = np->properties; pp != NULL; pp = pp->next) {
                p = pp->name;
 
+               if (strchr(p, '/'))
+                       continue;
+
                if (duplicate_name(de, p))
                        p = fixup_name(np, de, p);