From: Robert Love <rml@novell.com>
To: Arjan van de Ven <arjan@linux.intel.com>
Cc: Reuben Farrelly <reuben-lkml@reub.net>,
Ingo Molnar <mingo@elte.hu>,
John McCutchan <john@johnmccutchan.com>,
Andrew Morton <akpm@osdl.org>,
Linux Kernel <linux-kernel@vger.kernel.org>,
rml@ximian.com, viro@zeniv.linux.org.uk
Subject: Re: [patch] inotify: fix deadlock found by lockdep
Date: Mon, 24 Jul 2006 18:08:37 -0400 [thread overview]
Message-ID: <1153778917.2808.14.camel@betsy.boston.ximian.com> (raw)
In-Reply-To: <1153761671.3043.89.camel@laptopd505.fenrus.org>
On Mon, 2006-07-24 at 19:21 +0200, Arjan van de Ven wrote:
> inotify_dev_queue_event schedules a kernel_event which does a
> kmem_cache_alloc( , GFP_KERNEL) which may try to shrink slabs, including
> the inode cache .. which then takes iprune_mutex.
>
> And voila, there is an AB, a BC, a CD relationship (even a direct BCD),
> and also now a DA relationship -> a circular type AB-BA deadlock but
> involving 4 locks.
>
> The solution is simple: kernel_event() is NOT allowed to use GFP_KERNEL,
> but must use GFP_NOFS to not cause recursion into the VFS.
>
> Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Nice catch.
Signed-off-by: Robert Love <rml@novell.com>
Robert Love
prev parent reply other threads:[~2006-07-24 22:08 UTC|newest]
Thread overview: 60+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-07-14 5:48 2.6.18-rc1-mm2 Andrew Morton
2006-07-14 6:55 ` 2.6.18-rc1-mm2 Reuben Farrelly
2006-07-14 7:05 ` 2.6.18-rc1-mm2 Andrew Morton
2006-07-15 0:04 ` 2.6.18-rc1-mm2 Herbert Xu
[not found] ` <20060714172010.fcc50c0a.akpm@osdl.org>
[not found] ` <20060715002623.GE9334@gondor.apana.org.au>
[not found] ` <20060714173517.cdd58097.akpm@osdl.org>
2006-07-15 1:06 ` 2.6.18-rc1-mm2 Herbert Xu
2006-07-15 5:40 ` 2.6.18-rc1-mm2 David Miller
2006-07-15 6:04 ` 2.6.18-rc1-mm2 Dave Jones
2006-07-16 1:19 ` 2.6.18-rc1-mm2 David Miller
2006-07-15 10:32 ` 2.6.18-rc1-mm2 Herbert Xu
2006-07-15 10:34 ` 2.6.18-rc1-mm2 Herbert Xu
2006-07-14 7:33 ` 2.6.18-rc1-mm2 David Miller
2006-07-14 7:00 ` 2.6.18-rc1-mm2 Reuben Farrelly
2006-07-14 8:39 ` [patch -mm] s390: kprobes compile fix Heiko Carstens
2006-07-14 11:30 ` 2.6.18-rc1-mm2 Reuben Farrelly
2006-07-14 15:00 ` 2.6.18-rc1-mm2 Andrew Morton
2006-07-14 11:36 ` 2.6.18-rc1-mm2 Rafael J. Wysocki
2006-07-14 18:00 ` 2.6.18-rc1-mm2 Andrew Morton
2006-07-14 18:36 ` 2.6.18-rc1-mm2 Michal Piotrowski
2006-07-14 20:27 ` 2.6.18-rc1-mm2 Rafael J. Wysocki
2006-07-14 12:23 ` 2.6.18-rc1-mm2 Michal Piotrowski
2006-07-14 12:36 ` 2.6.18-rc1-mm2 Lexington Luthor
2006-07-14 16:30 ` [PATCH] fixed add_bind_files() definition Yoichi Yuasa
2006-07-14 15:48 ` 2.6.18-rc1-mm2 Dave Hansen
2006-07-18 21:49 ` 2.6.18-rc1-mm2 Haavard Skinnemoen
2006-07-14 16:30 ` 2.6.18-rc1-mm2 (bttv: NULL pointer derefernce) Dominik Karall
2006-08-02 16:00 ` 2.6.18-rc1-mm2 and 2.6.18-rc3 " Dominik Karall
2006-08-02 16:49 ` Andrew Morton
2006-08-02 16:57 ` Linus Torvalds
2006-08-02 18:02 ` Mauro Carvalho Chehab
2006-08-02 17:08 ` Bret Towe
2006-07-14 17:57 ` 2.6.18-rc1-mm2 Cédric Augonnet
2006-07-14 18:18 ` 2.6.18-rc1-mm2 Andrew Morton
2006-07-14 18:50 ` 2.6.18-rc1-mm2 Cédric Augonnet
2006-07-14 18:48 ` 2.6.18-rc1-mm2: drivers/char/*synclink* compile errors Adrian Bunk
2006-07-14 21:31 ` David Miller
2006-07-14 19:08 ` 2.6.18-rc1-mm2: drivers/scsi/NCR53C9x.c compile error Adrian Bunk
2006-07-20 10:17 ` 2.6.18-rc1-mm2: drivers/fc4/fc.c " Adrian Bunk
2006-07-15 0:35 ` [-mm patch] remove net/core/skbuff.c:skb_queue_lock_key Adrian Bunk
2006-07-15 5:35 ` Arjan van de Ven
2006-07-15 0:35 ` [-mm patch] drivers/char/pc8736x_gpio.c: unexport a static struct Adrian Bunk
2006-07-15 14:50 ` Chris Boot
2006-07-15 0:35 ` [RFC: -mm patch] drivers/char/scx200_gpio.c: make code static Adrian Bunk
2006-07-15 14:49 ` Chris Boot
2006-07-15 15:37 ` Adrian Bunk
2006-07-15 17:10 ` Chris Boot
2006-07-15 23:49 ` Jim Cromie
2006-07-15 0:35 ` [-mm patch] drivers/crypto/padlock-sha.c: make 2 functions static Adrian Bunk
2006-07-15 0:39 ` Herbert Xu
2006-07-15 0:35 ` [RFC: -mm patch] drivers/usb/core/driver.c: " Adrian Bunk
2006-07-15 12:50 ` [linux-usb-devel] " Alan Stern
2006-07-15 0:36 ` [RFC: -mm patch] fs/dlm/lock.c: unexport dlm_lvb_operations Adrian Bunk
2006-07-19 23:27 ` Steven Whitehouse
2006-07-15 0:37 ` [-mm patch] drivers/char/pc8736x_gpio.c: remove unused static functions Adrian Bunk
2006-07-18 16:07 ` Jim Cromie
2006-07-30 16:49 ` Jim Cromie
2006-07-22 9:49 ` [patch] mdacon: fix __init section warnings Frederik Deweerdt
2006-07-23 0:55 ` 2.6.18-rc1-mm2 Reuben Farrelly
2006-07-24 17:21 ` [patch] inotify: fix deadlock found by lockdep Arjan van de Ven
2006-07-24 19:14 ` Ingo Molnar
2006-07-24 22:08 ` Robert Love [this message]
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=1153778917.2808.14.camel@betsy.boston.ximian.com \
--to=rml@novell.com \
--cc=akpm@osdl.org \
--cc=arjan@linux.intel.com \
--cc=john@johnmccutchan.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=reuben-lkml@reub.net \
--cc=rml@ximian.com \
--cc=viro@zeniv.linux.org.uk \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).