Fix a regression that occurred with SVN revisions 259474 and 259476 where

installation to 3-4+ (depending on vdev type) vdevs would result in odd
error messages where the zpool `create' command appeared to repeat itself
(an artifact of printf when you supply too many arguments -- caused by
neglecting to properly quote the multi-word expansion of $*vdevs when
creating the pool(s)). Example error below (taken from bsdinstall_log):

DEBUG: zfs_create_boot: Creating root pool...
DEBUG: zfs_create_boot: zpool create -o altroot=/mnt -m none -f "zroot" \
ada0p3.nop ada1p3.nopzpool create ada2p3.nop "ada3p3.nop"
DEBUG: zfs_create_boot: retval=1 <output below>
cannot open 'ada1p3.nopzpool': no such GEOM provider
This commit is contained in:
dteske 2013-12-19 06:41:30 +00:00
parent 1ba70dd87d
commit d215e77160

View File

@ -979,7 +979,8 @@ zfs_create_boot()
bootpool_options="$bootpool_options -m \"/$bootpool_name\" -f"
f_eval_catch $funcname zpool "$ZPOOL_CREATE_WITH_OPTIONS" \
"$bootpool_options" "$bootpool_name" \
$bootpool_vdevtype $boot_vdevs || return $FAILURE
"$bootpool_vdevtype" "$boot_vdevs" ||
return $FAILURE
f_eval_catch $funcname mkdir "$MKDIR_P" "$bootpool/boot" ||
return $FAILURE
@ -1048,7 +1049,8 @@ zfs_create_boot()
f_dprintf "$funcname: Creating root pool..."
f_eval_catch $funcname zpool "$ZPOOL_CREATE_WITH_OPTIONS" \
"-o altroot=$BSDINSTALL_CHROOT -m none -f" \
"$zroot_name" $zroot_vdevtype $zroot_vdevs
"$zroot_name" "$zroot_vdevtype" "$zroot_vdevs" ||
return $FAILURE
# Customize the zroot a bit...
local option