[PATCH 2/3] xfstests: Add new standard loop handling functions
Eric Sandeen
sandeen at sandeen.net
Sun Feb 3 10:08:06 CST 2013
On 2/3/13 4:19 AM, Tomas Racek wrote:
> Add _create_loop_device and _destroy_loop_device to uniformly handle
> loopback devices.
Good idea, small comment below
> Signed-off-by: Tomas Racek <tracek at redhat.com>
> ---
> common.rc | 14 ++++++++++++++
> 1 file changed, 14 insertions(+)
>
> diff --git a/common.rc b/common.rc
> index 0cccb94..67a5e3a 100644
> --- a/common.rc
> +++ b/common.rc
> @@ -1833,6 +1833,20 @@ _require_dumpe2fs()
> fi
> }
>
> +_create_loop_device()
> +{
> + file=$1
> + dev=`losetup -f`
> + losetup $dev $file || _fail "Cannot associate $file with $dev"
> + echo $dev
In theory this is a little racy, right? the loop device could become
used in between.
I wonder if something like:
_create_loop_device()
{
dev=`losetup -f --show $file` || _fail "Cannot associate $file with $dev"
echo $dev
}
would work better? From the manpage:
-f, --find
find the first unused loop device. If a file argument is present,
use this device. Otherwise, print its name
--show print device name if the -f option and a file argument are present.
So this will set up the first available loop device and print its name.
Thanks,
-Eric
> +}
> +
> +_destroy_loop_device()
> +{
> + dev=$1
> + losetup -d $dev || _fail "Cannot destroy loop device $dev"
> +}
> +
> ################################################################################
>
> if [ "$iam" != new -a "$iam" != bench ]
>
More information about the xfs
mailing list