login
Login
/
Register
Search
Search this site:
Forums
News
Blogs
Features
Site
Home
»
Mailing list archives
»
linux-kernel
»
2008
»
May
»
21
Re: [RFC][PATCH 0/3] configfs: Make nested default groups lockdep-friendly
view
thread
Previous message: [
thread
] [
date
] [
author
]
Next message: [
thread
] [
date
] [
author
]
[view in full thread]
From: Peter Zijlstra
Subject:
Re: [RFC][PATCH 0/3] configfs: Make nested default groups lockdep-friendly
Date: Wednesday, May 21, 2008 - 2:23 am
On Tue, 2008-05-20 at 15:13 -0700, Arjan van de Ven wrote:
quoted text
> On Tue, 20 May 2008 14:56:39 -0700 > Joel Becker <Joel.Becker@oracle.com> wrote: > > > On Tue, May 20, 2008 at 09:58:10AM -0700, Arjan van de Ven wrote: > > > On Tue, 20 May 2008 18:33:20 +0200 > > > Louis Rilling <Louis.Rilling@kerlabs.com> wrote: > > > > > > > The following patches fix lockdep warnings resulting from > > > > (correct) recursive locking in configfs. > > > > > > > > ... > > > > > > > > Since lockdep does not handle such correct recursion, the idea is > > > > to insert lockdep_off()/lockdep_on() for inode mutexes as soon as > > > > the level of recursion of the I_MUTEX_PARENT -> I_MUTEX_CHILD > > > > dependency pattern increases. > > > > > > I'm... not entirely happy with such a solution ;( > > > > > > there must be a better one. > > > > We're trying to find it. I really appreciate Louis taking the > > time to approach the issue. His first pass was to add 1 to > > MUTEX_CHILD for each level of recursion. This has a very tight limit > > (4 or 5 levels), but probably covers all users that exist and perhaps > > all that ever will exist. However, it means passing the lockdep > > annotation level throughout the entire call chain across multiple > > files. It was definitely less readable. > > This approach takes a different tack - it's very readable, but > > it assumes that the currently correct locking will always remain so - > > a particular invariant that lockdep exists to verify :-) > > Louis, what about sticking the recursion level on > > configfs_dirent? That is, you could add sd->s_level and then use it > > when needed. THis would hopefully avoid having to pass the level as > > an argument to every function. Then we can go back to your original > > scheme. If they recurse too much and hit the lockdep limit, just > > rewind everything and return -ELOOP. > > you can also make a new lockdep key for each level... not pretty but it > works
Yeah, that is what I've done in the past for trees:
http://programming.kicks-ass.net/kernel-patches/concurrent-pagecache/23-rc1-rt/radix-c...
--
unsubscribe notice
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to
majordomo@vger.kernel.org
More majordomo info at
http://vger.kernel.org/majordomo-info.html
Please read the FAQ at
http://www.tux.org/lkml/
Previous message: [
thread
] [
date
] [
author
]
Next message: [
thread
] [
date
] [
author
]
Messages in current thread:
[RFC][PATCH 0/3] configfs: Make nested default groups lock ...
, Louis Rilling
, (Tue May 20, 9:33 am)
Re: [RFC][PATCH 0/3] configfs: Make nested default groups ...
, Arjan van de Ven
, (Tue May 20, 9:58 am)
Re: [RFC][PATCH 0/3] configfs: Make nested default groups ...
, Louis Rilling
, (Tue May 20, 10:08 am)
Re: [Ocfs2-devel] [RFC][PATCH 0/3] configfs: Make nested d ...
, Joel Becker
, (Tue May 20, 2:41 pm)
Re: [RFC][PATCH 0/3] configfs: Make nested default groups ...
, Joel Becker
, (Tue May 20, 2:56 pm)
Re: [RFC][PATCH 0/3] configfs: Make nested default groups ...
, Arjan van de Ven
, (Tue May 20, 3:13 pm)
Re: [RFC][PATCH 0/3] configfs: Make nested default groups ...
, Joel Becker
, (Tue May 20, 3:27 pm)
Re: [RFC][PATCH 0/3] configfs: Make nested default groups ...
, Arjan van de Ven
, (Tue May 20, 3:35 pm)
Re: [RFC][PATCH 0/3] configfs: Make nested default groups ...
, Joel Becker
, (Tue May 20, 4:51 pm)
Re: [RFC][PATCH 0/3] configfs: Make nested default groups ...
, Louis Rilling
, (Wed May 21, 1:13 am)
Re: [RFC][PATCH 0/3] configfs: Make nested default groups ...
, Peter Zijlstra
, (Wed May 21, 2:20 am)
Re: [RFC][PATCH 0/3] configfs: Make nested default groups ...
, Peter Zijlstra
, (Wed May 21, 2:23 am)
Re: [RFC][PATCH 0/3] configfs: Make nested default groups ...
, Louis Rilling
, (Wed May 21, 3:25 am)
Re: [RFC][PATCH 0/3] configfs: Make nested default groups ...
, Peter Zijlstra
, (Wed May 21, 3:59 am)
Re: [RFC][PATCH 0/3] configfs: Make nested default groups ...
, Louis Rilling
, (Wed May 21, 5:54 am)
Re: [RFC][PATCH 0/3] configfs: Make nested default groups ...
, Joel Becker
, (Wed May 21, 3:09 pm)
Navigation
Mailing list archives
Recent posts
Popular discussions
linux-kernel
:
Mel Gorman
Re: [PATCH 1/4] vmstat: remove zone->lock from walk_zones_in_node
Guenter Roeck
Re: [lm-sensors] Location for thermal drivers
David Woodhouse
Re: RFC: Moving firmware blobs out of the kernel.
Siddha, Suresh B
Re: [PATCH 2.6.21 review I] [11/25] x86: default to physical mode on hotplug CPU k...
Peter Zijlstra
Re: [patch 4/6] mm: merge populate and nopage into fault (fixes nonlinear)
git-commits-head
:
Linux Kernel Mailing List
[MIPS] Fix potential latency problem due to non-atomic cpu_wait.
Linux Kernel Mailing List
USB: rename USB_SPEED_VARIABLE to USB_SPEED_WIRELESS
Linux Kernel Mailing List
lib/vsprintf.c: fix bug omitting minus sign of numbers (module_param)
Linux Kernel Mailing List
[Bluetooth] Initiate authentication during connection establishment
Linux Kernel Mailing List
[POWERPC] 4xx: Add ppc40x_defconfig
linux-netdev
:
MERCEDES
Your mail id has won 950,000.00 in the MERCEDES Benz Online Promo.for claims send:
David Miller
Re: [PATCH] xen/netfront: do not mark packets of length < MSS as GSO
David Miller
Re: skb_segment() questions
Shan Wei
[RFC PATCH net-next 2/5]IPv6:netfilter: Send an ICMPv6 "Fragment Reassembly Timeou...
Stanislaw Gruszka
[PATCH 1/4] bnx2x: use smp_mb() to keep ordering of read write operations
git
:
Nicolas Sebrecht
git-svn died of signal 11 (was "3 failures on test t9100 (svn)")
Junio C Hamano
Re: [PATCH 2/2] Add url.<base>.pushInsteadOf: URL rewriting for push only
Martin Langhoff
Re: [PATCH] GIT commit statistics.
Alexandre Julliard
[PATCH] gitweb: Put back shortlog instead of graphiclog in the project list.
Josh Triplett
[PATCH 2/2] Add url.<base>.pushInsteadOf: URL rewriting for push only
openbsd-misc
:
Taisto Qvist XX
Re: AMD GEODE LX-800 just works with kernel from install42.iso and kernelpanics wi...
Nico Meijer
Re: gOS Develop Kit with VIA pc-1 Processor Platform VIA C7-D
Andreas Bihlmaier
Re: jetway board sensors (Fintek F71805F)
admin
Drive a 2009 car from R799p/m
Antti Harri
Re: how to create a sha256 hash
Colocation donated by:
Syndicate