On Tue, Jun 26, 2012 at 12:01 PM, Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> wrote: > On Tue, Jun 26, 2012 at 11:53 AM, Yinghai Lu <yinghai@xxxxxxxxxx> wrote: >> It will take bool lock, so we could use it in other functions that >> hold the resource lock already. > > This is too damn ugly. > > These kinds of "conditionally take lock" things are always just bugs > waiting to happen. Don't do it. > > Just make the rule be that the caller of the __allocate_resource > helper has to hold the lock. Sure, that means that you need to then > use split reallocate_resource() into a helper function (ie a static > __reallocate_resource() that needs to have the lock taken by the > caller too), but dammit, that's definitely the right thing to do > anyway. > > These kinds of "bool lock" crap things have to die. They are *wrong*. > They are a sign of bad locking rules. You are right, please check updated one. Thanks Yinghai
Attachment:
probe_resource_1.patch
Description: Binary data