}
trap "_cleanup; exit \$status" 0 1 2 3 15
-_filter_scratch()
-{
- sed -e "s,$SCRATCH_MNT,SCRATCH_MNT,g"
-}
-
_linux_attr_calls()
{
echo "*** set/get one initially empty attribute"
fi
}
-_filter_scratch()
-{
- sed -e "s,$SCRATCH_MNT,SCRATCH_MNT,g"
-}
-
_filter_ln()
{
sed -e "s,SCRATCH_MNT/nosymlink/target - Operation not permitted,ln: creating symbolic link \`SCRATCH_MNT/nosymlink/target\' to \`SCRATCH_MNT/nosymlink/source\': Operation not permitted,g" \
. ./common.filter
. ./common.quota
-filter_scratch()
-{
- perl -ne "
-s,$SCRATCH_MNT,[SCR_MNT],;
-s,$SCRATCH_DEV,[SCR_DEV],;
- print;"
-}
-
# real QA test starts here
_supported_fs xfs
_supported_os Linux #IRIX
chown $uid $SCRATCH_MNT/{buffer,direct,mmap}
chgrp $gid $SCRATCH_MNT/{buffer,direct,mmap}
for file in $SCRATCH_MNT/{buffer,direct,mmap}; do
- $here/src/lstat64 $file | head -3 | filter_scratch
+ $here/src/lstat64 $file | head -3 | _filter_scratch
$XFS_IO_PROG -c lsproj $file
done
}
echo "--- completed parallel IO ($type)" >>$seq.full
for file in $SCRATCH_MNT/{buffer,direct,mmap}; do
- $here/src/lstat64 $file | head -3 | filter_scratch
+ $here/src/lstat64 $file | head -3 | _filter_scratch
done
- xfs_quota -c "quota -hnb -$type $id" $QARGS | filter_scratch
- xfs_quota -c "quota -hni -$type $id" $QARGS | filter_scratch
- xfs_quota -c "quota -hnr -$type $id" $QARGS | filter_scratch
+ xfs_quota -c "quota -hnb -$type $id" $QARGS | _filter_scratch
+ xfs_quota -c "quota -hni -$type $id" $QARGS | _filter_scratch
+ xfs_quota -c "quota -hnr -$type $id" $QARGS | _filter_scratch
}
export MOUNT_OPTIONS="-opquota"
### test user accounting
### create files, setting up ownership (type=u)
- File: "[SCR_MNT]/buffer"
+ File: "SCRATCH_MNT/buffer"
Size: 0 Filetype: Regular File
Mode: (0600/-rw-------) Uid: (1) Gid: (2)
projid = 3
- File: "[SCR_MNT]/direct"
+ File: "SCRATCH_MNT/direct"
Size: 0 Filetype: Regular File
Mode: (0600/-rw-------) Uid: (1) Gid: (2)
projid = 3
- File: "[SCR_MNT]/mmap"
+ File: "SCRATCH_MNT/mmap"
Size: 0 Filetype: Regular File
Mode: (0600/-rw-------) Uid: (1) Gid: (2)
projid = 3
### some controlled buffered, direct and mmapd IO (type=u)
- File: "[SCR_MNT]/buffer"
+ File: "SCRATCH_MNT/buffer"
Size: 16777216 Filetype: Regular File
Mode: (0600/-rw-------) Uid: (1) Gid: (2)
- File: "[SCR_MNT]/direct"
+ File: "SCRATCH_MNT/direct"
Size: 16777216 Filetype: Regular File
Mode: (0600/-rw-------) Uid: (1) Gid: (2)
- File: "[SCR_MNT]/mmap"
+ File: "SCRATCH_MNT/mmap"
Size: 16777216 Filetype: Regular File
Mode: (0600/-rw-------) Uid: (1) Gid: (2)
Disk quotas for User #1 (1)
Filesystem Blocks Quota Limit Warn/Time Mounted on
-[SCR_DEV] 48M 0 0 00 [------] [SCR_MNT]
+SCRATCH_DEV 48M 0 0 00 [------] SCRATCH_MNT
Disk quotas for User #1 (1)
Filesystem Files Quota Limit Warn/Time Mounted on
-[SCR_DEV] 3 0 0 00 [------] [SCR_MNT]
+SCRATCH_DEV 3 0 0 00 [------] SCRATCH_MNT
### test group accounting
### create files, setting up ownership (type=g)
- File: "[SCR_MNT]/buffer"
+ File: "SCRATCH_MNT/buffer"
Size: 0 Filetype: Regular File
Mode: (0600/-rw-------) Uid: (1) Gid: (2)
projid = 3
- File: "[SCR_MNT]/direct"
+ File: "SCRATCH_MNT/direct"
Size: 0 Filetype: Regular File
Mode: (0600/-rw-------) Uid: (1) Gid: (2)
projid = 3
- File: "[SCR_MNT]/mmap"
+ File: "SCRATCH_MNT/mmap"
Size: 0 Filetype: Regular File
Mode: (0600/-rw-------) Uid: (1) Gid: (2)
projid = 3
### some controlled buffered, direct and mmapd IO (type=g)
- File: "[SCR_MNT]/buffer"
+ File: "SCRATCH_MNT/buffer"
Size: 16777216 Filetype: Regular File
Mode: (0600/-rw-------) Uid: (1) Gid: (2)
- File: "[SCR_MNT]/direct"
+ File: "SCRATCH_MNT/direct"
Size: 16777216 Filetype: Regular File
Mode: (0600/-rw-------) Uid: (1) Gid: (2)
- File: "[SCR_MNT]/mmap"
+ File: "SCRATCH_MNT/mmap"
Size: 16777216 Filetype: Regular File
Mode: (0600/-rw-------) Uid: (1) Gid: (2)
Disk quotas for Group #2 (2)
Filesystem Blocks Quota Limit Warn/Time Mounted on
-[SCR_DEV] 48M 0 0 00 [------] [SCR_MNT]
+SCRATCH_DEV 48M 0 0 00 [------] SCRATCH_MNT
Disk quotas for Group #2 (2)
Filesystem Files Quota Limit Warn/Time Mounted on
-[SCR_DEV] 3 0 0 00 [------] [SCR_MNT]
+SCRATCH_DEV 3 0 0 00 [------] SCRATCH_MNT
### create files, setting up ownership (type=p)
- File: "[SCR_MNT]/buffer"
+ File: "SCRATCH_MNT/buffer"
Size: 0 Filetype: Regular File
Mode: (0600/-rw-------) Uid: (1) Gid: (2)
projid = 3
- File: "[SCR_MNT]/direct"
+ File: "SCRATCH_MNT/direct"
Size: 0 Filetype: Regular File
Mode: (0600/-rw-------) Uid: (1) Gid: (2)
projid = 3
- File: "[SCR_MNT]/mmap"
+ File: "SCRATCH_MNT/mmap"
Size: 0 Filetype: Regular File
Mode: (0600/-rw-------) Uid: (1) Gid: (2)
projid = 3
### some controlled buffered, direct and mmapd IO (type=p)
- File: "[SCR_MNT]/buffer"
+ File: "SCRATCH_MNT/buffer"
Size: 16777216 Filetype: Regular File
Mode: (0600/-rw-------) Uid: (1) Gid: (2)
- File: "[SCR_MNT]/direct"
+ File: "SCRATCH_MNT/direct"
Size: 16777216 Filetype: Regular File
Mode: (0600/-rw-------) Uid: (1) Gid: (2)
- File: "[SCR_MNT]/mmap"
+ File: "SCRATCH_MNT/mmap"
Size: 16777216 Filetype: Regular File
Mode: (0600/-rw-------) Uid: (1) Gid: (2)
Disk quotas for Project #3 (3)
Filesystem Blocks Quota Limit Warn/Time Mounted on
-[SCR_DEV] 48M 0 0 00 [------] [SCR_MNT]
+SCRATCH_DEV 48M 0 0 00 [------] SCRATCH_MNT
Disk quotas for Project #3 (3)
Filesystem Files Quota Limit Warn/Time Mounted on
-[SCR_DEV] 3 0 0 00 [------] [SCR_MNT]
+SCRATCH_DEV 3 0 0 00 [------] SCRATCH_MNT
echo "Method: xfsctl"
dd if=/dev/zero bs=1024k count=3 of=$f >/dev/null 2>&1
- $e -x -l$l -o$o $f
+ $e -x -l$l -o$o $f | _filter_scratch
echo "Method: dmapi_probe"
dd if=/dev/zero bs=1024k count=3 of=$f >/dev/null 2>&1
- $e -l$l -o$o $f
+ $e -l$l -o$o $f | _filter_scratch
echo "Method: dmapi_punch"
- $e -p -l$l -o$o $f
+ $e -p -l$l -o$o $f | _filter_scratch
echo "======================================================="
done
=======================================================
Testing with length = 16k, offset = 0
Method: xfsctl
-Running Punch hole with xfsctl(XFS_IOC_FREESP64) on /mnt/scratch/dmapi/holly_file with settings:
+Running Punch hole with xfsctl(XFS_IOC_FREESP64) on SCRATCH_MNT/dmapi/holly_file with settings:
offset = '0', length = '16384', sid = '0'
ok.
Method: dmapi_probe
-Running DMAPI probe hole on /mnt/scratch/dmapi/holly_file with settings:
+Running DMAPI probe hole on SCRATCH_MNT/dmapi/holly_file with settings:
offset = '0', length = '16384', sid = '0'
roffp is 0, rlenp is 16384
Method: dmapi_punch
-Running DMAPI punch hole on /mnt/scratch/dmapi/holly_file with settings:
+Running DMAPI punch hole on SCRATCH_MNT/dmapi/holly_file with settings:
offset = '0', length = '16384', sid = '0'
=======================================================
=======================================================
Testing with length = 1k, offset = 0
Method: xfsctl
-Running Punch hole with xfsctl(XFS_IOC_FREESP64) on /mnt/scratch/dmapi/holly_file with settings:
+Running Punch hole with xfsctl(XFS_IOC_FREESP64) on SCRATCH_MNT/dmapi/holly_file with settings:
offset = '0', length = '1024', sid = '0'
ok.
Method: dmapi_probe
-Running DMAPI probe hole on /mnt/scratch/dmapi/holly_file with settings:
+Running DMAPI probe hole on SCRATCH_MNT/dmapi/holly_file with settings:
offset = '0', length = '1024', sid = '0'
roffp is 0, rlenp is 1024
Method: dmapi_punch
-Running DMAPI punch hole on /mnt/scratch/dmapi/holly_file with settings:
+Running DMAPI punch hole on SCRATCH_MNT/dmapi/holly_file with settings:
offset = '0', length = '1024', sid = '0'
=======================================================
=======================================================
Testing with length = 1k, offset = 4k
Method: xfsctl
-Running Punch hole with xfsctl(XFS_IOC_FREESP64) on /mnt/scratch/dmapi/holly_file with settings:
+Running Punch hole with xfsctl(XFS_IOC_FREESP64) on SCRATCH_MNT/dmapi/holly_file with settings:
offset = '4096', length = '1024', sid = '0'
ok.
Method: dmapi_probe
-Running DMAPI probe hole on /mnt/scratch/dmapi/holly_file with settings:
+Running DMAPI probe hole on SCRATCH_MNT/dmapi/holly_file with settings:
offset = '4096', length = '1024', sid = '0'
roffp is 4096, rlenp is 1024
Method: dmapi_punch
-Running DMAPI punch hole on /mnt/scratch/dmapi/holly_file with settings:
+Running DMAPI punch hole on SCRATCH_MNT/dmapi/holly_file with settings:
offset = '4096', length = '1024', sid = '0'
=======================================================
=======================================================
Testing with length = 4k, offset = 1k
Method: xfsctl
-Running Punch hole with xfsctl(XFS_IOC_FREESP64) on /mnt/scratch/dmapi/holly_file with settings:
+Running Punch hole with xfsctl(XFS_IOC_FREESP64) on SCRATCH_MNT/dmapi/holly_file with settings:
offset = '1024', length = '4096', sid = '0'
ok.
Method: dmapi_probe
-Running DMAPI probe hole on /mnt/scratch/dmapi/holly_file with settings:
+Running DMAPI probe hole on SCRATCH_MNT/dmapi/holly_file with settings:
offset = '1024', length = '4096', sid = '0'
roffp is 1024, rlenp is 4096
Method: dmapi_punch
-Running DMAPI punch hole on /mnt/scratch/dmapi/holly_file with settings:
+Running DMAPI punch hole on SCRATCH_MNT/dmapi/holly_file with settings:
offset = '1024', length = '4096', sid = '0'
=======================================================
=======================================================
Testing with length = 1024k, offset = 512k
Method: xfsctl
-Running Punch hole with xfsctl(XFS_IOC_FREESP64) on /mnt/scratch/dmapi/holly_file with settings:
+Running Punch hole with xfsctl(XFS_IOC_FREESP64) on SCRATCH_MNT/dmapi/holly_file with settings:
offset = '524288', length = '1048576', sid = '0'
ok.
Method: dmapi_probe
-Running DMAPI probe hole on /mnt/scratch/dmapi/holly_file with settings:
+Running DMAPI probe hole on SCRATCH_MNT/dmapi/holly_file with settings:
offset = '524288', length = '1048576', sid = '0'
roffp is 524288, rlenp is 1048576
Method: dmapi_punch
-Running DMAPI punch hole on /mnt/scratch/dmapi/holly_file with settings:
+Running DMAPI punch hole on SCRATCH_MNT/dmapi/holly_file with settings:
offset = '524288', length = '1048576', sid = '0'
=======================================================
tmp=/tmp/$$
status=1 # failure is the default!
-_filter_scratch()
-{
- sed -e "s,$SCRATCH_DEV,SCRATCH_DEV,g" | \
- sed -e "s,$SCRATCH_MNT,SCRATCH_MNT,g"
-}
-
_cleanup()
{
cd /
. ./common.filter
. ./common.quota
-filter_scratch()
-{
- perl -ne "
-s,$SCRATCH_MNT,[SCR_MNT],;
-s,$SCRATCH_DEV,[SCR_DEV],;
- print;"
-}
-
# real QA test starts here
_supported_fs generic
_supported_os Linux #IRIX
chown $uid $SCRATCH_MNT/{buffer,direct,mmap}
chgrp $gid $SCRATCH_MNT/{buffer,direct,mmap}
for file in $SCRATCH_MNT/{buffer,direct,mmap}; do
- $here/src/lstat64 $file | head -3 | filter_scratch
+ $here/src/lstat64 $file | head -3 | _filter_scratch
done
}
echo "--- completed parallel IO ($type)" >>$seq.full
for file in $SCRATCH_MNT/{buffer,direct,mmap}; do
- $here/src/lstat64 $file | head -3 | filter_scratch
+ $here/src/lstat64 $file | head -3 | _filter_scratch
done
- repquota -$type -n $SCRATCH_MNT | grep -v "^#0" | filter_scratch |
+ repquota -$type -n $SCRATCH_MNT | grep -v "^#0" | _filter_scratch |
awk '/^#/ { if (seen[$1]) next; seen[$1]++; } { print; }'
}
### test user accounting
### create files, setting up ownership (type=u)
- File: "[SCR_MNT]/buffer"
+ File: "SCRATCH_MNT/buffer"
Size: 0 Filetype: Regular File
Mode: (0644/-rw-r--r--) Uid: (1) Gid: (2)
- File: "[SCR_MNT]/direct"
+ File: "SCRATCH_MNT/direct"
Size: 0 Filetype: Regular File
Mode: (0644/-rw-r--r--) Uid: (1) Gid: (2)
- File: "[SCR_MNT]/mmap"
+ File: "SCRATCH_MNT/mmap"
Size: 0 Filetype: Regular File
Mode: (0644/-rw-r--r--) Uid: (1) Gid: (2)
### some controlled buffered, direct and mmapd IO (type=u)
- File: "[SCR_MNT]/buffer"
+ File: "SCRATCH_MNT/buffer"
Size: 49152 Filetype: Regular File
Mode: (0644/-rw-r--r--) Uid: (1) Gid: (2)
- File: "[SCR_MNT]/direct"
+ File: "SCRATCH_MNT/direct"
Size: 49152 Filetype: Regular File
Mode: (0644/-rw-r--r--) Uid: (1) Gid: (2)
- File: "[SCR_MNT]/mmap"
+ File: "SCRATCH_MNT/mmap"
Size: 49152 Filetype: Regular File
Mode: (0644/-rw-r--r--) Uid: (1) Gid: (2)
-*** Report for user quotas on device [SCR_DEV]
+*** Report for user quotas on device SCRATCH_DEV
Block grace time: 7days; Inode grace time: 7days
Block limits File limits
User used soft hard grace used soft hard grace
### test group accounting
### create files, setting up ownership (type=g)
- File: "[SCR_MNT]/buffer"
+ File: "SCRATCH_MNT/buffer"
Size: 0 Filetype: Regular File
Mode: (0644/-rw-r--r--) Uid: (1) Gid: (2)
- File: "[SCR_MNT]/direct"
+ File: "SCRATCH_MNT/direct"
Size: 0 Filetype: Regular File
Mode: (0644/-rw-r--r--) Uid: (1) Gid: (2)
- File: "[SCR_MNT]/mmap"
+ File: "SCRATCH_MNT/mmap"
Size: 0 Filetype: Regular File
Mode: (0644/-rw-r--r--) Uid: (1) Gid: (2)
### some controlled buffered, direct and mmapd IO (type=g)
- File: "[SCR_MNT]/buffer"
+ File: "SCRATCH_MNT/buffer"
Size: 49152 Filetype: Regular File
Mode: (0644/-rw-r--r--) Uid: (1) Gid: (2)
- File: "[SCR_MNT]/direct"
+ File: "SCRATCH_MNT/direct"
Size: 49152 Filetype: Regular File
Mode: (0644/-rw-r--r--) Uid: (1) Gid: (2)
- File: "[SCR_MNT]/mmap"
+ File: "SCRATCH_MNT/mmap"
Size: 49152 Filetype: Regular File
Mode: (0644/-rw-r--r--) Uid: (1) Gid: (2)
-*** Report for group quotas on device [SCR_DEV]
+*** Report for group quotas on device SCRATCH_DEV
Block grace time: 7days; Inode grace time: 7days
Block limits File limits
Group used soft hard grace used soft hard grace
rm -f $seq.full
-_filter_scratch()
-{
- sed -e "s,$SCRATCH_MNT,SCRATCH_MNT,g"
-}
-
BLOCKSIZE=4096
for SUNIT_K in 8 16 32 64 128; do
. ./common.filter
. ./common.quota
-filter_scratch()
-{
- perl -ne "
-s,$SCRATCH_MNT,[SCR_MNT],;
-s,$SCRATCH_DEV,[SCR_DEV],;
- print;"
-}
-
# real QA test starts here
_supported_fs generic
_supported_os Linux #IRIX
setquota -$type $qa_user 0 0 3 5 $SCRATCH_MNT
echo "Touch 3+4"
su $qa_user -c "touch $SCRATCH_MNT/file3 $SCRATCH_MNT/file4" \
- 2>&1 >>$seq.full | filter_scratch | tee -a $seq.full
+ 2>&1 >>$seq.full | _filter_scratch | tee -a $seq.full
repquota -$type $SCRATCH_MNT | grep -v "^root" >>$seq.full 2>&1
# Try to exceed inode hardlimit
echo "Touch 5+6"
su $qa_user -c "touch $SCRATCH_MNT/file5 $SCRATCH_MNT/file6" \
- 2>&1 >>$seq.full | filter_scratch | tee -a $seq.full
+ 2>&1 >>$seq.full | _filter_scratch | tee -a $seq.full
repquota -$type $SCRATCH_MNT | grep -v "^root" >>$seq.full 2>&1
# Wait and check grace time enforcement
rm -f $SCRATCH_MNT/file5 >>$seq.full 2>&1
sleep $((grace+1))
echo "Touch 5"
su $qa_user -c "touch $SCRATCH_MNT/file5" 2>&1 >>$seq.full |
- filter_scratch | tee -a $seq.full
+ _filter_scratch | tee -a $seq.full
repquota -$type $SCRATCH_MNT | grep -v "^root" >>$seq.full 2>&1
echo "--- completed IO ($type)" >>$seq.full
}
pwrite64: Disk quota exceeded
Touch 3+4
Touch 5+6
-touch: cannot touch `[SCR_MNT]/file6': Disk quota exceeded
+touch: cannot touch `SCRATCH_MNT/file6': Disk quota exceeded
Touch 5
-touch: cannot touch `[SCR_MNT]/file5': Disk quota exceeded
+touch: cannot touch `SCRATCH_MNT/file5': Disk quota exceeded
### test group limit enforcement
pwrite64: Disk quota exceeded
Touch 3+4
Touch 5+6
-touch: cannot touch `[SCR_MNT]/file6': Disk quota exceeded
+touch: cannot touch `SCRATCH_MNT/file6': Disk quota exceeded
Touch 5
-touch: cannot touch `[SCR_MNT]/file5': Disk quota exceeded
+touch: cannot touch `SCRATCH_MNT/file5': Disk quota exceeded
FSX_FILE_SIZE=64000000
FSX_ARGS="-q -l $FSX_FILE_SIZE -o 65536 -N 20000"
-filter_scratch()
-{
- perl -ne "
-s,$SCRATCH_MNT,[SCR_MNT],;
-s,$SCRATCH_DEV,[SCR_DEV],;
- print;"
-}
-
_fsx()
{
tasks=$1
. ./common.filter
. ./common.quota
-filter_scratch()
-{
- perl -ne "
-s,$SCRATCH_MNT,[SCR_MNT],;
-s,$SCRATCH_DEV,[SCR_DEV],;
- print;"
-}
-
_filter_num()
{
tee -a $here/$seq.full |\
FSX_FILE_SIZE=64000000
FSX_ARGS="-q -l $FSX_FILE_SIZE -o 65536 -S 191110531 -N 100000"
-filter_scratch()
-{
- perl -ne "
-s,$SCRATCH_MNT,[SCR_MNT],;
-s,$SCRATCH_DEV,[SCR_DEV],;
- print;"
-}
-
_filter_num()
{
tee -a $here/$seq.full |\
. ./common.filter
. ./common.quota
-filter_scratch()
-{
- perl -ne "
-s,$SCRATCH_MNT,[SCR_MNT],;
-s,$SCRATCH_DEV,[SCR_DEV],;
- print;"
-}
-
# real QA test starts here
_supported_fs generic
_supported_os Linux #IRIX
touch $SCRATCH_MNT/testfile
chown $qa_user:$qa_user $SCRATCH_MNT/testfile
-repquota -u -g $SCRATCH_MNT | grep -v "^root" | filter_scratch
+repquota -u -g $SCRATCH_MNT | grep -v "^root" | _filter_scratch
-mount -o remount,ro $SCRATCH_DEV 2>&1 | tee -a $seq.full | filter_scratch
-touch $SCRATCH_MNT/failed 2>&1 | tee -a $seq.full | filter_scratch
-mount -o remount,rw $SCRATCH_DEV 2>&1 | tee -a $seq.full | filter_scratch
+mount -o remount,ro $SCRATCH_DEV 2>&1 | tee -a $seq.full | _filter_scratch
+touch $SCRATCH_MNT/failed 2>&1 | tee -a $seq.full | _filter_scratch
+mount -o remount,rw $SCRATCH_DEV 2>&1 | tee -a $seq.full | _filter_scratch
$XFS_IO_PROG -F -c 'pwrite 0 16k' -c 'fsync' \
$SCRATCH_MNT/testfile >>$seq.full 2>&1
-repquota -u -g $SCRATCH_MNT | grep -v "^root" | filter_scratch
+repquota -u -g $SCRATCH_MNT | grep -v "^root" | _filter_scratch
umount $SCRATCH_DEV 2>/dev/null
QA output created by 235
-*** Report for user quotas on device [SCR_DEV]
+*** Report for user quotas on device SCRATCH_DEV
Block grace time: 7days; Inode grace time: 7days
Block limits File limits
User used soft hard grace used soft hard grace
fsgqa -- 0 0 0 1 0 0
-*** Report for group quotas on device [SCR_DEV]
+*** Report for group quotas on device SCRATCH_DEV
Block grace time: 7days; Inode grace time: 7days
Block limits File limits
Group used soft hard grace used soft hard grace
fsgqa -- 0 0 0 1 0 0
-touch: cannot touch `[SCR_MNT]/failed': Read-only file system
-*** Report for user quotas on device [SCR_DEV]
+touch: cannot touch `SCRATCH_MNT/failed': Read-only file system
+*** Report for user quotas on device SCRATCH_DEV
Block grace time: 7days; Inode grace time: 7days
Block limits File limits
User used soft hard grace used soft hard grace
fsgqa -- 16 0 0 1 0 0
-*** Report for group quotas on device [SCR_DEV]
+*** Report for group quotas on device SCRATCH_DEV
Block grace time: 7days; Inode grace time: 7days
Block limits File limits
Group used soft hard grace used soft hard grace
common_line_filter | _filter_xfs_io
}
+_filter_scratch()
+{
+ sed -e "s,$SCRATCH_DEV,SCRATCH_DEV,g" -e "s,$SCRATCH_MNT,SCRATCH_MNT,g"
+}
+
# make sure this script returns success
/bin/true
VFS_QUOTA=1
quotaon -f -u -g $SCRATCH_MNT 2>/dev/null
fi
- repquota -u -n $SCRATCH_MNT | grep -v "^#0" | filter_scratch |
+ repquota -u -n $SCRATCH_MNT | grep -v "^#0" | _filter_scratch |
sort >$tmp.user.orig
- repquota -g -n $SCRATCH_MNT | grep -v "^#0" | filter_scratch |
+ repquota -g -n $SCRATCH_MNT | grep -v "^#0" | _filter_scratch |
sort >$tmp.group.orig
if [ $VFS_QUOTA -eq 1 ]; then
quotacheck -u -g $SCRATCH_MNT 2>/dev/null
mount -o remount,noquota $SCRATCH_DEV
mount -o remount,usrquota,grpquota $SCRATCH_DEV
fi
- repquota -u -n $SCRATCH_MNT | grep -v "^#0" | filter_scratch |
+ repquota -u -n $SCRATCH_MNT | grep -v "^#0" | _filter_scratch |
sort >$tmp.user.checked
- repquota -g -n $SCRATCH_MNT | grep -v "^#0" | filter_scratch |
+ repquota -g -n $SCRATCH_MNT | grep -v "^#0" | _filter_scratch |
sort >$tmp.group.checked
if [ $VFS_QUOTA -eq 1 ]; then
quotaon -u -g $SCRATCH_MNT 2>/dev/null