diff options
author | Karel Zak <kzak@redhat.com> | 2007-10-12 00:33:01 +0200 |
---|---|---|
committer | Karel Zak <kzak@redhat.com> | 2007-10-12 00:40:01 +0200 |
commit | ec3f45d33cc431832a4e5a49848b613fb2b6ecc3 (patch) | |
tree | 5ab3ac7b970d75de973227d4d767cf8f85d11165 /tests | |
parent | 031a4a7ab1b8ebab2f88f41bc98965855dbd1c62 (diff) | |
download | util-linux-old-ec3f45d33cc431832a4e5a49848b613fb2b6ecc3.tar.gz |
tests: fix blkid cache usage
Signed-off-by: Karel Zak <kzak@redhat.com>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/functions.sh | 30 | ||||
-rwxr-xr-x | tests/ts-cramfs-mkfs | 2 |
2 files changed, 22 insertions, 10 deletions
diff --git a/tests/functions.sh b/tests/functions.sh index fffd7946..7b555f5f 100644 --- a/tests/functions.sh +++ b/tests/functions.sh @@ -155,14 +155,28 @@ function ts_die { ts_finalize } +function ts_backup_cache { + if [ "$TS_HAS_VOLUMEID" != "yes" ] && [ -f "$TS_BLKIDCACHE" ]; then + cp $TS_BLKIDCACHE $OUTDIR/$TS_NAME.cache + fi +} + +function ts_restore_cache { + if [ "$TS_HAS_VOLUMEID" != "yes" ] && [ -f "$TS_BLKIDCACHE" ] && [ -s "$OUTDIR/$TS_NAME.cache" ]; then + # We have to remove the device from cache otherwise + # libblkid will reuse cached information. The cache + # refresh time is 2 seconds -- that's too long. We + # re-use the same device more quickly. --kzak + mv -f $OUTDIR/$TS_NAME.cache $TS_BLKIDCACHE + fi +} + function ts_device_init { local IMAGE="$TS_OUTDIR/$TS_NAME.img" local IMAGE_RE=$( echo "$IMAGE" | sed 's:/:\\/:g' ) local DEV="" - if [ "$TS_HAS_VOLUMEID" != "yes" ] && [ -f "$TS_BLKIDCACHE" ]; then - cp $TS_BLKIDCACHE $OUTDIR/$TS_NAME.cache - fi + ts_backup_cache dd if=/dev/zero of="$IMAGE" bs=1M count=5 &> /dev/null @@ -178,19 +192,15 @@ function ts_device_init { return 0 # succes } + + function ts_device_deinit { local DEV="$1" if [ -b "$DEV" ]; then $TS_CMD_UMOUNT "$DEV" &> /dev/null $TS_CMD_LOSETUP -d "$DEV" &> /dev/null - if [ "$TS_HAS_VOLUMEID" != "yes" ] && [ -f "$TS_BLKIDCACHE" ] && [ -s "$OUTDIR/$TS_NAME.cache" ]; then - # We have to remove the device from cache otherwise - # libblkid will reuse cached information. The cache - # refresh time is 2 seconds -- that's too long. We - # re-use the same device more quickly. --kzak - mv -f $OUTDIR/$TS_NAME.cache $TS_BLKIDCACHE - fi + ts_restore_cache fi } diff --git a/tests/ts-cramfs-mkfs b/tests/ts-cramfs-mkfs index dc707175..4185184c 100755 --- a/tests/ts-cramfs-mkfs +++ b/tests/ts-cramfs-mkfs @@ -62,6 +62,7 @@ md5sum $IMAGE 2>&1 >> $TS_OUTPUT echo >> $TS_OUTPUT ts_log "create loop device from image" +ts_backup_cache DEVICE=$( $TS_CMD_LOSETUP -f ) $TS_CMD_LOSETUP $DEVICE $IMAGE 2>&1 >> $TS_OUTPUT @@ -90,5 +91,6 @@ echo >> $TS_OUTPUT ts_log "umount the image" $TS_CMD_UMOUNT $DEVICE $TS_CMD_LOSETUP -d $DEVICE 2>&1 >> $TS_OUTPUT +ts_restore_cache ts_finalize |