From: Stephen Warren Date: Mon, 14 Dec 2015 22:01:15 +0000 (-0700) Subject: test/fs: error case fixes/enhancements X-Git-Tag: v2016.03-rc1~325 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=08eee2718aefea16d7a7e32e318ff03a1539e5c2;p=u-boot test/fs: error case fixes/enhancements - Use "mkdir -p" to avoid errors when intermediate directories are missing. - Fall back to "dd" when "fallocate" fails. For example, fallocate isn't supported on ext4. - Add error checking for test image generation. Without this, the test simply plows on spewing all kinds of errors which are hard to immediately root-cause. Signed-off-by: Stephen Warren --- diff --git a/test/fs/fs-test.sh b/test/fs/fs-test.sh index fc41c04c15..043e5d0c0e 100755 --- a/test/fs/fs-test.sh +++ b/test/fs/fs-test.sh @@ -100,7 +100,7 @@ function compile_sandbox() { # We save time by not deleting and recreating the file system images function prepare_env() { rm -f ${MD5_FILE}.* ${OUT}.* - mkdir ${OUT_DIR} + mkdir -p ${OUT_DIR} } # 1st parameter is the name of the image file to be created @@ -115,11 +115,23 @@ function create_image() { fi if [ ! -f "$1" ]; then fallocate -l 3G "$1" &> /dev/null + if [ $? -ne 0 ]; then + echo fallocate failed - using dd instead + dd if=/dev/zero of=$1 bs=1024 count=$((3 * 1024 * 1024)) + if [ $? -ne 0 ]; then + echo Could not create empty disk image + exit $? + fi + fi mkfs -t "$2" $MKFS_OPTION "$1" &> /dev/null if [ $? -ne 0 -a "$2" = "fat" ]; then # If we fail and we did fat, try vfat. mkfs -t vfat $MKFS_OPTION "$1" &> /dev/null fi + if [ $? -ne 0 ]; then + echo Could not create filesystem + exit $? + fi fi }