Hello,
I'm trying to use xfs project quota on kernel 2.6.27.7 (vanilla, no additional
patches), x86_64 UP machine (SMP kernel).
mounted /home with usrquota,prjquota
[arekm@arm ~]$ mount|grep xfs
/dev/sda1 on / type xfs (rw)
/dev/sda3 on /home type xfs (rw,usrquota,prjquota)
/dev/hdb on /mnt/storage2 type xfs (rw)
played a bit with setting quota/reporting it and such.
$ cat /etc/projects
10:/home/users/arekm/public_html
10:/home/users/arekm/rpm
20:/home/users/arekm/tcl
20:/home/users/arekm/tcl-test
I did for example xfs_quota -x -c "project -s 10" and allowed it to finish. I
also started it second time and aborted with ctrl+c after few seconds (which
I assume should have no effect since initial -s 10 was finished properly
earlier). Played more with xfs_quota report and such.
Now some processes that are using /home/users/arekm/rpm are hanging in D-state
like:
SysRq : Show Blocked State
task PC stack pid father
patch D ffff88003a7dd080 0 3971 3965
ffff880034453cd8 0000000000000086 0000000000000000 ffff8800344770d0
ffff880034453cd8 ffff8800354d2440 ffffffff805d0340 ffff8800354d27b8
00000000000041ed 00000000fffc7a61 ffff8800354d27b8 0000000000000250
Call Trace:
[<ffffffffa00af4c4>] ? kmem_zone_alloc+0x94/0xe0 [xfs]
[<ffffffff804a51cd>] __down_write_nested+0x8d/0xd0
[<ffffffff804a521b>] __down_write+0xb/0x10
[<ffffffff804a4229>] down_write+0x9/0x10
[<ffffffffa008deb6>] xfs_ilock+0x76/0x90 [xfs]
[<ffffffffa00aa7d0>] xfs_lock_two_inodes+0x70/0x120 [xfs]
[<ffffffffa00ac651>] xfs_remove+0x141/0x3a0 [xfs]
[<ffffffff804a54c9>] ? _spin_lock+0x9/0x10
[<ffffffffa00b7c13>] xfs_setup_inode+0x673/0xa00 [xfs]
[<ffffffff802d0849>] vfs_unlink+0xf9/0x140
[<ffffffff802d3313>] do_unlinkat+0x1a3/0x1c0
[<ffffffff80287ce0>] ? audit_syscall_entry+0x150/0x180
[<ffffffff802d3341>] sys_unlink+0x11/0x20
[<ffffffff8020c5aa>] system_call_fastpath+0x16/0x1b
reboot, retry with patch (which accesses /home/users/arekm/rpm) and stuck in
D-state again. touch home/users/arekm/rpm/xyz - doesn't stuck.
cp /bin/bash /home/users/arekm/rpm/ - doesn't stuck.
Did reboot and third test. D-state again for patch (this is interesting since
uncompressing into /home/users/arekm/rpm/ succeeds but applying patch to
uncompressed tree fails).
SysRq : Show Blocked State
task PC stack pid father
patch D ffff88003a7d07c0 0 3631 3625
ffff88003443bcd8 0000000000000082 0000000000000000 ffff88003444e4a8
ffff88003443bcd8 ffff88003553e500 ffffffff805d0340 ffff88003553e878
00000000000041ed 00000000fffc4120 ffff88003553e878 0000000000000250
Call Trace:
[<ffffffffa00af4c4>] ? kmem_zone_alloc+0x94/0xe0 [xfs]
[<ffffffff804a51cd>] __down_write_nested+0x8d/0xd0
[<ffffffff804a521b>] __down_write+0xb/0x10
[<ffffffff804a4229>] down_write+0x9/0x10
[<ffffffffa008deb6>] xfs_ilock+0x76/0x90 [xfs]
[<ffffffffa00aa7d0>] xfs_lock_two_inodes+0x70/0x120 [xfs]
[<ffffffffa00ac651>] xfs_remove+0x141/0x3a0 [xfs]
[<ffffffff804a54c9>] ? _spin_lock+0x9/0x10
[<ffffffffa00b7c13>] xfs_setup_inode+0x673/0xa00 [xfs]
[<ffffffff802d0849>] vfs_unlink+0xf9/0x140
[<ffffffff802d3313>] do_unlinkat+0x1a3/0x1c0
[<ffffffff80287ce0>] ? audit_syscall_entry+0x150/0x180
[<ffffffff802d3341>] sys_unlink+0x11/0x20
[<ffffffff8020c5aa>] system_call_fastpath+0x16/0x1b
I'm able to make it D-stuck quite reliably.
Any ideas?
Going to do xfs_repair just in case and retest.
--
Arkadiusz Miśkiewicz PLD/Linux Team
arekm / maven.pl http://ftp.pld-linux.org/
|