mirror of
https://git.FreeBSD.org/src.git
synced 2024-12-14 10:09:48 +00:00
Do not pull quota entries of the cache-list if they have already
been removed from the cache-list as part of a previous unmount. This would result in panics (page fault in dqflush()) during subsequent umounts provided that enough distinct UID's to actually make the hash do something are active. This can probably explain a number of weird quota related behaviours. PR: 32331 maybe more. Reproduced by: Søren Schrørder <sch@cybercity.dk>
This commit is contained in:
parent
fa069a3c74
commit
9c643340bb
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=89213
@ -814,7 +814,8 @@ dqget(vp, id, ump, type, dqp)
|
||||
if (dq->dq_cnt || (dq->dq_flags & DQ_MOD))
|
||||
panic("dqget: free dquot isn't");
|
||||
TAILQ_REMOVE(&dqfreelist, dq, dq_freelist);
|
||||
LIST_REMOVE(dq, dq_hash);
|
||||
if (dq->dq_ump != NULL)
|
||||
LIST_REMOVE(dq, dq_hash);
|
||||
}
|
||||
/*
|
||||
* Initialize the contents of the dquot structure.
|
||||
|
Loading…
Reference in New Issue
Block a user