#!/bin/bash # # Copyright (C) 2013 Karel Zak # # This file is part of util-linux. # # This file is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This file is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # TS_TOPDIR="${0%/*}/../.." TS_DESC="losetup-blkdev" . $TS_TOPDIR/functions.sh ts_init "$*" ts_check_test_command "$TS_CMD_LOSETUP" ts_check_test_command "$TS_CMD_LSBLK" ts_skip_nonroot ts_check_losetup . "$TS_SELF/losetup_functions.sh" # # Backing file is a block device # ts_scsi_debug_init dev_size_mb=11 BACKFILE="$TS_DEVICE" ts_init_subtest "show" LODEV=$( $TS_CMD_LOSETUP --find --show $BACKFILE ) if [ -z "$LODEV" ]; then ts_log "Failed to create loop device" fi lo_print $LODEV >> $TS_OUTPUT udevadm settle $TS_CMD_LOSETUP -d $LODEV ts_finalize_subtest ts_init_subtest "offset" LODEV=$( $TS_CMD_LOSETUP --offset 1MiB --find --show $BACKFILE ) if [ -z "$LODEV" ]; then ts_log "Failed to create loop device" fi lo_print $LODEV >> $TS_OUTPUT udevadm settle $TS_CMD_LOSETUP -d $LODEV ts_finalize_subtest ts_init_subtest "sizelimit" LODEV=$( $TS_CMD_LOSETUP --sizelimit 3MiB --find --show $BACKFILE ) if [ -z "$LODEV" ]; then ts_log "Failed to create loop device" fi lo_print $LODEV >> $TS_OUTPUT udevadm settle $TS_CMD_LOSETUP -d $LODEV ts_finalize_subtest ts_init_subtest "section" LODEV=$( $TS_CMD_LOSETUP --offset 1MiB --sizelimit 3MiB --find --show $BACKFILE ) if [ -z "$LODEV" ]; then ts_log "Failed to create loop device" fi lo_print $LODEV >> $TS_OUTPUT udevadm settle $TS_CMD_LOSETUP -d $LODEV ts_finalize_subtest ts_finalize