summaryrefslogtreecommitdiff
path: root/archiso/hooks/archiso_pxe_nbd
diff options
context:
space:
mode:
authorGerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>2010-12-08 14:44:48 -0300
committerGerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>2010-12-08 14:44:48 -0300
commit0ff40f153aaad924d12f044913cb3a47f888639a (patch)
tree14ada775c55a0c46a4b05f25124d065cea9f2dbb /archiso/hooks/archiso_pxe_nbd
parent1635eacfe7b6bf24727798df5abdd3fbd80dcdbe (diff)
downloadarchiso32-0ff40f153aaad924d12f044913cb3a47f888639a.tar.xz
[archiso] Use poll_device() in _pxe_nbd and _loop_mnt hooks.
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
Diffstat (limited to 'archiso/hooks/archiso_pxe_nbd')
-rw-r--r--archiso/hooks/archiso_pxe_nbd8
1 files changed, 6 insertions, 2 deletions
diff --git a/archiso/hooks/archiso_pxe_nbd b/archiso/hooks/archiso_pxe_nbd
index 9f47116..b36b05d 100644
--- a/archiso/hooks/archiso_pxe_nbd
+++ b/archiso/hooks/archiso_pxe_nbd
@@ -64,8 +64,12 @@ archiso_pxe_nbd_mount_handler () {
# Module autoloading like with loop devices does not work, doing manually...
modprobe nbd 2> /dev/null
- while [ ! -b /dev/nbd0 ]; do
- sleep 1
+ msg ":: Waiting for boot device..."
+ while ! poll_device /dev/nbd0 30; do
+ echo "ERROR: boot device didn't show up after 30 seconds..."
+ echo " Falling back to interactive prompt"
+ echo " You can try to fix the problem manually, log out when you are finished"
+ launch_interactive_shell
done
msg "::: Setup NBD from ${nbdserver} at /dev/nbd0"