Re: [cgroup or VFS ?] INFO: possible recursive locking detected

From: Li Zefan
Date: Mon Feb 09 2009 - 06:39:09 EST


Al Viro wrote:
> On Thu, Jan 08, 2009 at 11:45:43AM +0800, Li Zefan wrote:
>> Hi Al Viro,
>>
>> I hacked into the kernel with the patch below (I think It's ok for me
>> to comment out bdev->bd_mount_sem for testing):
>
>> And ran 2 threads:
>> for ((; ;)) # thread 1
>> {
>> mount -t ext3 /dev/sda9 /mnt1
>> umount /mnt1
>> }
>>
>> for ((; ;)) # thread 2
>> {
>> mount -t ext3 /dev/sda9 /mnt2
>> umount /mnt2
>> }
>>
>> And I got the same lockdep warning immediately, so I think it's
>> VFS's issue.
>
> It's a lockdep issue, actually. It _is_ a false positive; we could get rid

Yes, I believe it's a false positive when I looked into this issue.

> of that if we took destroy_super(s); just before grab_super(), but I really
> do not believe that there's any point.
>
> Frankly, I'd rather see if there's any way to teach lockdep that this instance
> of lock is getting initialized into "one writer" state and that yes, we know
> that it's not visible to anyone, so doing that is safe, TYVM, even though
> we are under spinlock. Then take that sucker to just before set().
>

It would be nice if we can do this way..

> In any case, I really do not believe that it might have anything to do with
> the WARN_ON() from another thread...
>

agreed. I don't think they are related, and that's why I sent 2 different reports.

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