Messages in this thread | | | Subject | Re: Quota lockups | From | Andi Kleen <> | Date | 13 Oct 1998 07:29:25 +0200 |
| |
corbet@eklektix.com (Jonathan Corbet) writes:
> > I did quite a bit of stress testing for the quota code and wasn't able to > > trigger any stuck processes. Could you put together a script to reproduce the > > problem? > > I posted some time ago the sure way to lock up the quota code: have an > empty 'quota.user' file. Then do something that causes somebody to > allocate space on the device. The file system gets locked once to make the > quota change, then again because the first block of the quota file needs to > be allocated, which requires another quota modification. *Lock*. > > Running "quotacheck" before enabling quotas fixes the problem; > unfortunately Red Hat's startup script does it wrong (with the fs > unmounted) so the new quota.user gets written in the wrong place. > > The most straightforward fix would be to force the existence of the first > block of the quota file before allowing quotas to be turned on. But this > has the look of the sort of band-aid fix that Linus doesn't like, for good > reason...
I once "fixed" it in 2.0 by allowing recursive locks in lock_dquot/wait_on_dquot/ unlock_dquot. Of course this is not the best fix, but at least it won't deadlock anymore.
-Andi
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |