Re: 2.6.17-rc5-mm3-lockdep - locking error in quotaon

From: Ingo Molnar
Date: Mon Jun 05 2006 - 16:14:47 EST



* Jan Kara <jack@xxxxxxx> wrote:

> > but that doesn't quite match your description...
> This piece of code is there just because we avoid page cache when
> doing quota writes. That is a different story and should cause problems
> with your lock checker.
> Standard way of running quota is:
> - get i_mutex for data_inode
> - write some data to data_inode
> - requires allocation -> calls DQUOT_ALLOC_SPACE
> - DQUOT_ALLOC_SPACE acquires some quota locks, decides it wants to
> write out quota structure (e.g. because we are journaling quota and
> must preserve quota integrity)
> - acquires dqio_sem, calls filesystem specific quota writing
> function - e.g. ext3_quota_write()
> - this function acquires i_mutex for quota file
>
> I think this is the type of circle your checker has found.

the validator noticed a circular dependency (AB->BA, or AB->BC->CA,
etc.) - while the nesting above it would report as: "BUG: possible
deadlock detected!".

Ingo
-
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/