Subject: Re: linux-next: build failure after merge of the userns tree

From: [email-masked] (Eric W. Biederman)
Date: Fri, 08 Nov 2013 15:15:17 -0800

Stephen Rothwell <[email-masked]> writes:

> Hi Eric,
>
> After merging the userns tree, today's linux-next build (powerpc
> ppc64_defconfig) failed like this:
>
> fs/namespace.c: In function 'detach_mounts':
> fs/namespace.c:1340:2: error: implicit declaration of function 'br_write_lock' [-Werror=implicit-function-declaration]
>   br_write_lock(&vfsmount_lock);
>   ^
> fs/namespace.c:1340:17: error: 'vfsmount_lock' undeclared (first use in this function)
>   br_write_lock(&vfsmount_lock);
>                  ^
> fs/namespace.c:1340:17: note: each undeclared identifier is reported only once for each function it appears in
> fs/namespace.c:1345:2: error: implicit declaration of function 'br_write_unlock' [-Werror=implicit-function-declaration]
>   br_write_unlock(&vfsmount_lock);
>   ^
>
> Caused by the interaction between commit d7e58b8abc4f ("vfs: Add a
> function to lazily unmount all mounts from any dentry. v3") from the
> userns tree and commit 84550b9356af ("RCU'd vfsmounts") from the vfs tree.
>
> I don't know how to fix this up, so I have just dropped the userns tree
> for today.  I only dropped that tree because it was the latter of the two
> conflicting trees.

Yeah.  Al has somethng cooking where he renamed the lock.

It looks like this just needs the trivial change:
s/br_write_lock(&vfsmount_lock)/lock_mount_hash()/
s/br_write_unlock(&vfsmount_lock)/unlock_mount_hash()/

Certainly that is all it needed when I closely inspected an earlier
version of Al's changes.  He changed the name of the lock and I just
happen to be using it.  In this case I don't think any of the semantics
have changed.

Eric