remount-ro & umount & quota interaction

From: Michael Tokarev
Date: Wed Feb 06 2008 - 12:55:46 EST


For a long time I'm bitten by a bad interaction
of mount -o remount,ro and quota operations.

The sequence is as follows:

mount /fs
quotaon -ug /fs
mount -o remount,ro /fs
umount /fs

At this point, umount never returns. /proc/$pid/wchan
shows vfs_quota_off:

Feb 6 20:53:25 linux kernel: umount D e5183eb8 0 8646 1
Feb 6 20:53:25 linux kernel: e5183ecc 00000086 00000002 e5183eb8 e5183eb0 00000000 c1db2540 c1db2684
Feb 6 20:53:25 linux kernel: c1db2684 c1c0dd00 00000000 cfd9f1c0 c0367080 c0367080 f5849000 f7f06880
Feb 6 20:53:25 linux kernel: f7e89d80 00000000 c0367080 b7c9795c 005f3997 00000000 000000ff 00000000
Feb 6 20:53:25 linux kernel: Call Trace:
Feb 6 20:53:25 linux kernel: [<c01a2a65>] vfs_quota_off+0x345/0x490
Feb 6 20:53:25 linux kernel: [<c013a3a0>] autoremove_wake_function+0x0/0x50
Feb 6 20:53:25 linux kernel: [<c0174bf6>] deactivate_super+0x46/0x80
Feb 6 20:53:25 linux kernel: [<c0188bba>] sys_umount+0x4a/0x240
Feb 6 20:53:25 linux kernel: [<c017637f>] sys_stat64+0xf/0x30
Feb 6 20:53:25 linux kernel: [<c0162069>] remove_vma+0x39/0x50
Feb 6 20:53:25 linux kernel: [<c0162b67>] do_munmap+0x197/0x1f0
Feb 6 20:53:25 linux kernel: [<c0188dc5>] sys_oldumount+0x15/0x20
Feb 6 20:53:25 linux kernel: [<c010417e>] sysenter_past_esp+0x5f/0x85

The filesystem is ext3. The issue is here for a long time,
at least since before 2.6.20, and is still present in 2.6.23
(I'll try 2.6.24 later today).

Can it be fixed please? :)

Thanks!

/mjt
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/