Просмотр исходного кода

of: Feed entire flattened device tree into the random pool

We feed the entire DMI table into the random pool to provide
better random data during early boot, so do the same with the
flattened device tree.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Grant Likely <grant.likely@linaro.org>
Anton Blanchard 12 лет назад
Родитель
Сommit
109b623629
1 измененных файлов с 12 добавлено и 0 удалено
  1. 12 0
      drivers/of/fdt.c

+ 12 - 0
drivers/of/fdt.c

@@ -18,6 +18,7 @@
 #include <linux/string.h>
 #include <linux/string.h>
 #include <linux/errno.h>
 #include <linux/errno.h>
 #include <linux/slab.h>
 #include <linux/slab.h>
+#include <linux/random.h>
 
 
 #include <asm/setup.h>  /* for COMMAND_LINE_SIZE */
 #include <asm/setup.h>  /* for COMMAND_LINE_SIZE */
 #ifdef CONFIG_PPC
 #ifdef CONFIG_PPC
@@ -726,3 +727,14 @@ void __init unflatten_device_tree(void)
 }
 }
 
 
 #endif /* CONFIG_OF_EARLY_FLATTREE */
 #endif /* CONFIG_OF_EARLY_FLATTREE */
+
+/* Feed entire flattened device tree into the random pool */
+static int __init add_fdt_randomness(void)
+{
+	if (initial_boot_params)
+		add_device_randomness(initial_boot_params,
+				be32_to_cpu(initial_boot_params->totalsize));
+
+	return 0;
+}
+core_initcall(add_fdt_randomness);