Skip to content

Commit 96436dd

Browse files
author
David Scott
committed
setup.sh: detect a free loop device rather than using /dev/loop0
In particular this makes it work in XenServer dom0. Signed-off-by: David Scott <[email protected]>
1 parent 3133506 commit 96436dd

File tree

2 files changed

+10
-8
lines changed

2 files changed

+10
-8
lines changed

cleanup.sh

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,11 @@ if [ "$EUID" -ne "0" ]; then
44
echo "Please run me as uid 0. I need to create a loop device and device mapper devices"
55
exit 1
66
fi
7-
7+
LOOP=$(losetup -j bigdisk | cut -f 1 -d ':')
88
./xenvm.native lvchange -an /dev/djstest/live || true
99
#./xenvm.native shutdown /dev/djstest
1010
killall xenvmd.native
1111
dmsetup remove_all
12-
dd if=/dev/zero of=/dev/loop0 bs=1M count=128
13-
losetup -d /dev/loop0
12+
dd if=/dev/zero of=$LOOP bs=1M count=128
13+
losetup -d $LOOP
1414
rm -f localJournal bigdisk *.out

setup.sh

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,16 +15,18 @@ fi
1515
# Making a 1G disk
1616
rm -f bigdisk _build/xenvm*.out
1717
dd if=/dev/zero of=bigdisk bs=1 seek=256G count=0
18-
echo Using /dev/loop0
19-
losetup /dev/loop0 bigdisk
20-
cat test.xenvmd.conf.in | sed -r "s|@BIGDISK@|/dev/loop0|g" > test.xenvmd.conf
18+
19+
LOOP=$(losetup -f)
20+
echo Using $LOOP
21+
losetup $LOOP bigdisk
22+
cat test.xenvmd.conf.in | sed -r "s|@BIGDISK@|$LOOP|g" > test.xenvmd.conf
2123
mkdir -p /etc/xenvm.d
22-
BISECT_FILE=_build/xenvm.coverage ./xenvm.native format /dev/loop0 --vg djstest
24+
BISECT_FILE=_build/xenvm.coverage ./xenvm.native format $LOOP --vg djstest
2325
BISECT_FILE=_build/xenvmd.coverage ./xenvmd.native --config ./test.xenvmd.conf --daemon
2426

2527
export BISECT_FILE=_build/xenvm.coverage
2628

27-
./xenvm.native set-vg-info --pvpath /dev/loop0 -S /tmp/xenvmd djstest --local-allocator-path /tmp/xenvm-local-allocator --uri file://local/services/xenvmd/djstest
29+
./xenvm.native set-vg-info --pvpath $LOOP -S /tmp/xenvmd djstest --local-allocator-path /tmp/xenvm-local-allocator --uri file://local/services/xenvmd/djstest
2830

2931
./xenvm.native lvcreate -n live -L 4 djstest
3032
./xenvm.native lvchange -ay /dev/djstest/live

0 commit comments

Comments
 (0)