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

From: Stephen Rothwell
Date: Thu Jul 11 2019 - 20:44:36 EST


Hi all,

On Mon, 8 Jul 2019 19:23:45 +1000 Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote:
>
> 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,
> ^~~~~~~~~~~~
> simple_rename
> 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,
> ^~~~~~~~~~~~
> mount_bdev
> 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,
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> BALLOON_VMW_MAGIC);
> ~~~~~~~~~~~~~~~~~~
>
> 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)
>
> #ifdef CONFIG_BALLOON_COMPACTION
>
> -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,
> - BALLOON_VMW_MAGIC);
> + 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,
> };
>

This is now a conflict between the vfs tree and Linus' tree.
--
Cheers,
Stephen Rothwell

Attachment: pgpwaEQ1vrWGn.pgp
Description: OpenPGP digital signature