Nicolas Thery <[email protected]> wrote:
> 2009/1/7 Sascha Wildner <[email protected]>:
>>
>> Sascha Wildner <[email protected]> added the comment:
>>
>> Yes it's reproducible still. Could it be that it happens because this is
>> a HAMMER filesystem and /usr is already a null mount?
> 
> Maybe as I tried on UFS.

I just tried it in a vkernel and the problem occurs if the
null-mounted directory is on HAMMER.
In that case during the second mount_null call,

VFS_ROOT(mp, &newdp) called from checkdirs() in turn called from sys_mount() 
tries to acquire the same lock, that was already acquired by vn_lock()
from sys_mount() directly.

Doing checkdirs() after vn_unlock(vp) makes the problem go away, but
of course it might not be allowed to call checkdirs() without the lock
protection.

 Johannes

Reply via email to