From: Chen Hanxiao <chenhanxiao(a)gmail.com>
If we failed to add something to initrd, just error out.
Signed-off-by: Chen Hanxiao <chenhanxiao(a)gmail.com>
---
src/ext2_initrd.ml | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/src/ext2_initrd.ml b/src/ext2_initrd.ml
index d4a4e2f..d9a3a99 100644
--- a/src/ext2_initrd.ml
+++ b/src/ext2_initrd.ml
@@ -151,8 +151,12 @@ let rec build_initrd debug tmpdir modpath initrd =
visit topset;
close_out chan;
+ let num_visted = StringSet.cardinal !visited in
if debug >= 1 then
- printf "supermin: ext2: wrote %d modules to minimal initrd\n%!"
(StringSet.cardinal !visited);
+ printf "supermin: ext2: wrote %d modules to minimal initrd\n%!"
num_visted;
+
+ if num_visited == 0 then
+ error "failed to write any modules into minimal initrd, try 'depmod
-a'"
(* This is the binary blob containing the init "script". *)
let init = binary_init () in
--
1.8.3.1