linux-next: build failure after merge of the char-misc tree

From: Stephen Rothwell
Date: Mon Jul 08 2019 - 05:23:53 EST

Hi all,

After merging the char-misc tree, today's linux-next build (x86_64
allmodconfig) failed like this:

drivers/misc/vmw_balloon.c: In function 'vmballoon_mount':
drivers/misc/vmw_balloon.c:1736:14: error: 'simple_dname' undeclared (first use in this function); did you mean 'simple_rename'?
.d_dname = simple_dname,
drivers/misc/vmw_balloon.c:1736:14: note: each undeclared identifier is reported only once for each function it appears in
drivers/misc/vmw_balloon.c:1739:9: error: implicit declaration of function 'mount_pseudo'; did you mean 'mount_bdev'? [-Werror=implicit-function-declaration]
return mount_pseudo(fs_type, "balloon-vmware:", NULL, &ops,
drivers/misc/vmw_balloon.c:1739:9: warning: returning 'int' from a function with return type 'struct dentry *' makes pointer from integer without a cast [-Wint-conversion]
return mount_pseudo(fs_type, "balloon-vmware:", NULL, &ops,

Caused by commit

83a8afa72e9c ("vmw_balloon: Compaction support")

interacting with commits

7e5f7bb08b8c ("unexport simple_dname()")
8d9e46d80777 ("fold mount_pseudo_xattr() into pseudo_fs_get_tree()")

from the vfs tree.

I applied the following merge fix patch:

From: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
Date: Mon, 8 Jul 2019 19:17:56 +1000
Subject: [PATCH] convert vmwballoon to use the new mount API

Signed-off-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
drivers/misc/vmw_balloon.c | 14 ++++----------
1 file changed, 4 insertions(+), 10 deletions(-)

diff --git a/drivers/misc/vmw_balloon.c b/drivers/misc/vmw_balloon.c
index 91fa43051535..e8c0f7525f13 100644
--- a/drivers/misc/vmw_balloon.c
+++ b/drivers/misc/vmw_balloon.c
@@ -29,6 +29,7 @@
#include <linux/slab.h>
#include <linux/spinlock.h>
#include <linux/mount.h>
+#include <linux/pseudo_fs.h>
#include <linux/balloon_compaction.h>
#include <linux/vmw_vmci_defs.h>
#include <linux/vmw_vmci_api.h>
@@ -1728,21 +1729,14 @@ static inline void vmballoon_debugfs_exit(struct vmballoon *b)


-static struct dentry *vmballoon_mount(struct file_system_type *fs_type,
- int flags, const char *dev_name,
- void *data)
+static int vmballoon_init_fs_context(struct fs_context *fc)
- static const struct dentry_operations ops = {
- .d_dname = simple_dname,
- };
- return mount_pseudo(fs_type, "balloon-vmware:", NULL, &ops,
+ return init_pseudo(fc, BALLOON_VMW_MAGIC) ? 0 : -ENOMEM;

static struct file_system_type vmballoon_fs = {
.name = "balloon-vmware",
- .mount = vmballoon_mount,
+ .init_fs_context = vmballoon_init_fs_context,
.kill_sb = kill_anon_super,


Stephen Rothwell

Attachment: pgpo3uc7ekfsB.pgp
Description: OpenPGP digital signature