== sanity-quota test 23: Quota should be honored with directIO (b16125) ========================================================== 13:52:42 (1747849962) OST0_SIZE: 3605552 required: 6144 run for 4MB test file Waiting for MDT destroys to complete Creating test directory fail_val=0 fail_loc=0 Waiting 90s for 'ugp' User quota (limit: 4 MB) Disk quotas for usr quota_usr (uid 60000): Filesystem kbytes bquota blimit bgrace files iquota ilimit igrace /mnt/lustre 0 0 4096 - 0 0 0 - lustre-MDT0000 0 - 0 - 0 - 0 - lustre-OST0000 0 - 0 - 0 - 0 - lustre-OST0001 0 - 0 - 0 - 0 - Total allocated inode limit: 0, total allocated block limit: 0 -u quota_usr space:0 Step1: trigger EDQUOT with O_DIRECT Write half of file running as uid/gid/euid/egid 60000/60000/60000/60000, groups: 60000 [dd] [if=/dev/zero] [bs=1M] [of=/mnt/lustre/d23.sanity-quota/f23.sanity-quota] [count=2] [oflag=direct] 2+0 records in 2+0 records out 2097152 bytes (2.1 MB) copied, 0.0394147 s, 53.2 MB/s Write out of block quota ... running as uid/gid/euid/egid 60000/60000/60000/60000, groups: 60000 [dd] [if=/dev/zero] [bs=1M] [of=/mnt/lustre/d23.sanity-quota/f23.sanity-quota] [count=3] [seek=2] [oflag=direct] [conv=notrunc] dd: error writing '/mnt/lustre/d23.sanity-quota/f23.sanity-quota': Disk quota exceeded 2+0 records in 1+0 records out 1048576 bytes (1.0 MB) copied, 0.0358726 s, 29.2 MB/s Step1: done Step2: rewrite should succeed running as uid/gid/euid/egid 60000/60000/60000/60000, groups: 60000 [dd] [if=/dev/zero] [bs=1M] [of=/mnt/lustre/d23.sanity-quota/f23.sanity-quota] [count=1] [oflag=direct] [conv=notrunc] 1+0 records in 1+0 records out 1048576 bytes (1.0 MB) copied, 0.0165969 s, 63.2 MB/s Step2: done Delete files... Wait for unlink objects finished... Waiting for MDT destroys to complete -u quota_usr --ost 000 space:0 Disk quotas for usr quota_usr (uid 60000): Filesystem kbytes bquota blimit bgrace files iquota ilimit igrace /mnt/lustre 0 0 0 - 0 0 0 - lustre-MDT0000 0 - 0 - 0 - 0 - lustre-OST0000 0 - 0 - 0 - 0 - lustre-OST0001 0 - 0 - 0 - 0 - Total allocated inode limit: 0, total allocated block limit: 0 OST0_SIZE: 3605552 required: 61440 run for 40MB test file Waiting for MDT destroys to complete Creating test directory fail_val=0 fail_loc=0 User quota (limit: 40 MB) Disk quotas for usr quota_usr (uid 60000): Filesystem kbytes bquota blimit bgrace files iquota ilimit igrace /mnt/lustre 0 0 40960 - 0 0 0 - lustre-MDT0000 0 - 0 - 0 - 0 - lustre-OST0000 0 - 0 - 0 - 0 - lustre-OST0001 0 - 0 - 0 - 0 - Total allocated inode limit: 0, total allocated block limit: 0 -u quota_usr space:0 Step1: trigger EDQUOT with O_DIRECT Write half of file running as uid/gid/euid/egid 60000/60000/60000/60000, groups: 60000 [dd] [if=/dev/zero] [bs=1M] [of=/mnt/lustre/d23.sanity-quota/f23.sanity-quota] [count=20] [oflag=direct] 20+0 records in 20+0 records out 20971520 bytes (21 MB) copied, 0.323022 s, 64.9 MB/s Write out of block quota ... running as uid/gid/euid/egid 60000/60000/60000/60000, groups: 60000 [dd] [if=/dev/zero] [bs=1M] [of=/mnt/lustre/d23.sanity-quota/f23.sanity-quota] [count=21] [seek=20] [oflag=direct] [conv=notrunc] dd: error writing '/mnt/lustre/d23.sanity-quota/f23.sanity-quota': Disk quota exceeded 20+0 records in 19+0 records out 19922944 bytes (20 MB) copied, 0.338905 s, 58.8 MB/s Step1: done Step2: rewrite should succeed running as uid/gid/euid/egid 60000/60000/60000/60000, groups: 60000 [dd] [if=/dev/zero] [bs=1M] [of=/mnt/lustre/d23.sanity-quota/f23.sanity-quota] [count=1] [oflag=direct] [conv=notrunc] 1+0 records in 1+0 records out 1048576 bytes (1.0 MB) copied, 0.0159752 s, 65.6 MB/s Step2: done Delete files... Wait for unlink objects finished... Waiting for MDT destroys to complete -u quota_usr --ost 000 space:0 Disk quotas for usr quota_usr (uid 60000): Filesystem kbytes bquota blimit bgrace files iquota ilimit igrace /mnt/lustre 0 0 0 - 0 0 0 - lustre-MDT0000 0 - 0 - 0 - 0 - lustre-OST0000 0 - 0 - 0 - 0 - lustre-OST0001 0 - 0 - 0 - 0 - Total allocated inode limit: 0, total allocated block limit: 0 Delete files... Wait for unlink objects finished... Waiting for MDT destroys to complete Delete files... Wait for unlink objects finished... Waiting for MDT destroys to complete