From: Jarek Poplawski <jarkao2@o2.pl>
To: Jan Kara <jack@suse.cz>
Cc: Folkert van Heusden <folkert@vanheusden.com>,
Andrew Morton <akpm@linux-foundation.org>,
linux-kernel@vger.kernel.org, Oleg Nesterov <oleg@tv-sign.ru>,
Neil Brown <neilb@suse.de>, Christoph Hellwig <hch@lst.de>
Subject: Re: dquot.c: possible circular locking Re: [2.6.20] BUG: workqueue leaked lock
Date: Tue, 20 Mar 2007 14:44:46 +0100 [thread overview]
Message-ID: <20070320134446.GA12517@ff.dom.local> (raw)
In-Reply-To: <20070320121909.GB14319@duck.suse.cz>
On Tue, Mar 20, 2007 at 01:19:09PM +0100, Jan Kara wrote:
> On Tue 20-03-07 12:31:51, Jarek Poplawski wrote:
> > On Tue, Mar 20, 2007 at 12:22:53PM +0100, Jarek Poplawski wrote:
> > > On Tue, Mar 20, 2007 at 12:17:01PM +0100, Jarek Poplawski wrote:
> > > ...
> > > > IMHO lockdep found that two locks are taken in different order:
> > > >
> > > > -> #1: 1) tty_mutex in con_console() 2) dqptr_sem (somewhere later)
> > > > -> #0: 1) dqptr_sem 2) tty_console in dquot_alloc_space() with print_warning()
> >
> > Once more - should be:
> > -> #1: 1) tty_mutex in con_close() 2) dqptr_sem (somewhere later)
> > -> #0: 1) dqptr_sem 2) tty_mutex in dquot_alloc_space() with print_warning()
> Yes, I was looking at it. Hmm, we can possibly get rid of tty_mutex being
> acquired under dqptr_sem in quota code. But looking at the path from
> con_close() there's another inversion with i_mutex which is also acquired
> along the path for sysfs. And we can hardly get rid of it in the quota code.
> Now none of these is a real deadlock as quota should never call
> print_warning() for sysfs (it doesn't use quota) but still it's nasty. I
> suppose tty_mutex is above i_mutex because of those sysfs calls and it
> seems sysfs must be called under tty_mutex because of races with
> init_dev(). So it's not easy to get rid of that dependency either.
I wonder if this cannot be done with a workqueue (message to a buffer,
maybe after try_lock on tty_mutex) and BTW isn't there any "modern"
way to queue console messages like these?
Jarek P.
next prev parent reply other threads:[~2007-03-20 13:40 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-03-13 16:50 [2.6.20] BUG: workqueue leaked lock Folkert van Heusden
2007-03-15 19:06 ` Andrew Morton
2007-03-15 19:17 ` Folkert van Heusden
2007-03-16 14:49 ` Jarek Poplawski
2007-03-20 11:17 ` dquot.c: possible circular locking " Jarek Poplawski
2007-03-20 11:22 ` Jarek Poplawski
2007-03-20 11:31 ` Jarek Poplawski
2007-03-20 12:19 ` Jan Kara
2007-03-20 13:35 ` Arjan van de Ven
2007-03-20 14:21 ` Jan Kara
2007-03-20 14:18 ` Arjan van de Ven
2007-03-20 13:44 ` Jarek Poplawski [this message]
2007-03-20 14:00 ` Jan Kara
2007-03-16 8:41 ` Peter Zijlstra
2007-03-16 11:39 ` Andrew Morton
2007-03-19 6:24 ` Neil Brown
2007-03-20 9:37 ` [PATCH] " Jarek Poplawski
2007-03-20 16:07 ` Oleg Nesterov
2007-03-21 8:05 ` Jarek Poplawski
2007-03-21 14:46 ` Oleg Nesterov
2007-03-21 15:16 ` Jarek Poplawski
2007-03-21 15:17 ` Folkert van Heusden
2007-03-21 15:29 ` Oleg Nesterov
2007-03-21 18:16 ` Oleg Nesterov
2007-03-22 6:11 ` [PATCH] lockdep: lockdep_depth vs. debug_locks " Jarek Poplawski
2007-03-22 6:28 ` Andrew Morton
2007-03-22 7:06 ` Jarek Poplawski
2007-03-22 7:23 ` Jarek Poplawski
2007-03-22 7:13 ` Jarek Poplawski
2007-03-22 8:26 ` Jarek Poplawski
2007-03-22 6:57 ` [PATCH] lockdep: debug_show_all_locks & debug_show_held_locks vs. debug_locks Jarek Poplawski
2007-03-22 7:23 ` Peter Zijlstra
2007-03-22 9:06 ` Ingo Molnar
2007-03-22 7:22 ` [PATCH] lockdep: lockdep_depth vs. debug_locks Re: [2.6.20] BUG: workqueue leaked lock Peter Zijlstra
2007-03-22 9:06 ` Ingo Molnar
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20070320134446.GA12517@ff.dom.local \
--to=jarkao2@o2.pl \
--cc=akpm@linux-foundation.org \
--cc=folkert@vanheusden.com \
--cc=hch@lst.de \
--cc=jack@suse.cz \
--cc=linux-kernel@vger.kernel.org \
--cc=neilb@suse.de \
--cc=oleg@tv-sign.ru \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.