xfs_quota per project buggy?
Hi,
I am running a similar test to the one visible below:
http://lists.debian.org/debian-user/2011/09/msg00384.html
and I establish that the xfs_quota command may not to be trusted,
at least not for daily operations with project quota (see report below):
- after an mv operation of a file between 2 projects, the accounting is plainly wrong
Can you reproduce the bug? do you agree it exists?
tia,
Fotis
[root@block103 ~]# dd if=/dev/zero of=/root/file.xfs bs=1M count=100 [root@block103 ~]# mkdir /media/mount.xfs [root@block103 ~]# mount -o loop,prjquota /root/file.xfs /media/mount.xfs [root@block103 ~]# mkdir /media/mount.xfs/dirA /media/mount.xfs/dirB [root@block103 ~]# echo 1:/media/mount.xfs/dirA >> /etc/projects [root@block103 ~]# echo 2:/media/mount.xfs/dirB >> /etc/projects [root@block103 ~]# echo prjDirA:1 >> /etc/projid [root@block103 ~]# echo prjDirB:2 >> /etc/projid [root@block103 ~]# xfs_quota -x -c 'project -s prjDirA' /media/mount.xfs Setting up project prjDirA (path /media/mount.xfs/dirA)... Processed 1 (/etc/projects and cmdline) paths for project prjDirA with recursion depth infinite (-1). [root@block103 ~]# xfs_quota -x -c 'project -s prjDirB' /media/mount.xfs Setting up project prjDirB (path /media/mount.xfs/dirB)... Processed 1 (/etc/projects and cmdline) paths for project prjDirB with recursion depth infinite (-1). [root@block103 ~]# xfs_quota -x -c 'limit -p bhard=20m prjDirA' /media/mount.xfs [root@block103 ~]# xfs_quota -x -c 'limit -p bhard=20m prjDirB' /media/mount.xfs [root@block103 ~]# xfs_quota -x -c report /media/mount.xfs Project quota on /media/mount.xfs (/dev/loop0) Blocks Project ID Used Soft Hard Warn/Grace ---------- -------------------------------------------------- prjDirA 0 0 20480 00 [--------] prjDirB 0 0 20480 00 [--------] [root@block103 ~]# dd if=/dev/zero of=/media/mount.xfs/dirA/5Mo.file bs=1M count=5 ### CREATE file 5+0 records in 5+0 records out 5242880 bytes (5.2 MB) copied, 0.00756329 s, 693 MB/s [root@block103 ~]# xfs_quota -x -c report /media/mount.xfs Project quota on /media/mount.xfs (/dev/loop0) Blocks Project ID Used Soft Hard Warn/Grace ---------- -------------------------------------------------- prjDirA 0 0 20480 00 [--------] prjDirB 0 0 20480 00 [--------] [root@block103 ~]# du -sh /media/mount.xfs/dirA 5.0M /media/mount.xfs/dirA [root@block103 ~]# xfs_quota -x -c report /media/mount.xfs Project quota on /media/mount.xfs (/dev/loop0) Blocks Project ID Used Soft Hard Warn/Grace ---------- -------------------------------------------------- prjDirA 5120 0 20480 00 [--------] prjDirB 0 0 20480 00 [--------] [root@block103 ~]# mv /media/mount.xfs/dirA/5Mo.file /media/mount.xfs/dirB/ ### MOVE file from one project to another [root@block103 ~]# xfs_quota -x -c report /media/mount.xfs Project quota on /media/mount.xfs (/dev/loop0) Blocks Project ID Used Soft Hard Warn/Grace ---------- -------------------------------------------------- prjDirA 0 0 20480 00 [--------] prjDirB 0 0 20480 00 [--------] ### -- WHY ZERO???
And more importantly, why both zero? that means no ability for atomic operation as regards quota,
so it opens a can of worms.
Responses