Is it really correct to set last_block_init to the next entry ? It would seem that the current (i.e., bogus) values are then just used without further ado. Untested. Not-Yet-Signed-off-by: Werner Almesberger --- Index: qi/src/phase2.c =================================================================== --- qi.orig/src/phase2.c 2009-01-08 23:27:41.000000000 -0200 +++ qi/src/phase2.c 2009-01-08 23:27:47.000000000 -0200 @@ -116,7 +116,7 @@ puts("block device init failed\n"); if (this_kernel->block_init != last_block_init) indicate(UI_IND_MOUNT_FAIL); - last_block_init = this_kernel[1].block_init; + last_block_init = NULL; return 0; } last_block_init = this_kernel->block_init; --