The bug related to eternal "waiting for / [SM]" appears to be a real problem then.
The message "mountall.c:2726: Not reached assertion failed" is unfortunately not helpful though. I've looked at mountall.c, and that message is simply because we both pressed <ENTER>, when the valid choices were "[SM]", ie S (skip) or M (maintenance shell). There appears to be a buglet here: either plymouth_prompt should not be allowing <ENTER>, or mountall.c should be handling it. But the message is unfortunately not telling us anything about why "/" is not available.
answer = plymouth_prompt (NULL, message, "SsMm");
if (answer is null or is S or is M) // real code removed for brevity.. .. else
nih_assert_not_reached (); // <== the failure message seen above
The bug related to eternal "waiting for / [SM]" appears to be a real problem then.
The message "mountall.c:2726: Not reached assertion failed" is unfortunately not helpful though. I've looked at mountall.c, and that message is simply because we both pressed <ENTER>, when the valid choices were "[SM]", ie S (skip) or M (maintenance shell). There appears to be a buglet here: either plymouth_prompt should not be allowing <ENTER>, or mountall.c should be handling it. But the message is unfortunately not telling us anything about why "/" is not available.
From mountall.c:
message = NIH_MUST (nih_sprintf (NULL, _("Waiting for %s [SM]"),
MOUNT_NAME (mnt)));
answer = plymouth_prompt (NULL, message, "SsMm");
. .
else assert_ not_reached (); // <== the failure message seen above
if (answer is null or is S or is M) // real code removed for brevity..
nih_