[Unionfs] Can't mount NFS-exported union anymore in unionfs-1.4
Michael Creel
michael.creel at uab.es
Wed Nov 22 07:30:52 EST 2006
Hi Wilhelm,
This looks like it will solve the problem I wrote about earlier today. Does this
apply to vanilla unionfs 1.4? Can you please give me the proper command to apply
it? Are there any special things that need to go into fistdev.mk?
Regards, Michael
Wilhelm Meier wrote:
> Hello Junjiro,
>
> Am Dienstag, 21. November 2006 03:07 schrieb hooanon05 at yahoo.co.jp:
>> Hello Wilhelm,
>>
>> Wilhelm Meier:
>>> I used to export a union via nfs. Now I upgraded to 1.4 and it stops
>>> working. The NFS-Server returns permission denied.
>> Please check this mail and try the patch in in.
>> It will work for you unless your problem is unknown to us.
>>
>> http://www.fsl.cs.sunysb.edu/pipermail/unionfs/2006-August/004749.html
>
> thanks for the patch. I modified it a bit for unionfs-1.4 and now it works
> again.
>
>>
>> Junjiro Okajima
>
>
> ------------------------------------------------------------------------
>
> diff -rup unionfs-1.4.nfs-permission-denied/main.c unionfs-1.4/main.c
> --- unionfs-1.4.nfs-permission-denied/main.c 2006-11-20 18:14:29.000000000 +0100
> +++ unionfs-1.4/main.c 2006-11-05 00:56:59.000000000 +0100
> @@ -694,7 +694,7 @@ static int unionfs_read_super(struct sup
> #ifdef CONFIG_EXPORTFS
> sb->s_export_op = &unionfs_export_ops;
> #endif
> - init_export_op(sb);
> +
> /*
> * we can't use d_alloc_root if we want to use
> * our own interpose function unchanged,
> diff -rup unionfs-1.4.nfs-permission-denied/super.c unionfs-1.4/super.c
> --- unionfs-1.4.nfs-permission-denied/super.c 2006-11-20 18:12:04.000000000 +0100
> +++ unionfs-1.4/super.c 2006-11-05 00:56:59.000000000 +0100
> @@ -503,12 +503,7 @@ static int unionfs_show_options(struct s
> return ret;
> }
>
> -#if defined(CONFIG_EXPORTFS) || defined(CONFIG_EXPORTFS_MODULE)
> -/*
> - - move this part to new file export.c
> - - remove '#if defined(...) || defined(..._MODULE)' from export.c
> - - add 'unionfs-$(CONFIG_EXPORTFS) += export.o' to Makefile
> -*/
> +#ifdef CONFIG_EXPORTFS
> /*
> * export operations.
> * unionfs cannot handle disconnected dentry, since it has no hidden dentries.
> Only in unionfs-1.4.nfs-permission-denied: super.c.orig
> diff -rup unionfs-1.4.nfs-permission-denied/unionfs.h unionfs-1.4/unionfs.h
> --- unionfs-1.4.nfs-permission-denied/unionfs.h 2006-11-20 18:12:04.000000000 +0100
> +++ unionfs-1.4/unionfs.h 2006-11-05 00:56:59.000000000 +0100
> @@ -76,11 +76,8 @@ extern struct inode_operations unionfs_d
> extern struct inode_operations unionfs_symlink_iops;
> extern struct super_operations unionfs_sops;
> extern struct dentry_operations unionfs_dops;
> -#if defined(CONFIG_EXPORTFS) || defined(CONFIG_EXPORTFS_MODULE)
> +#ifdef CONFIG_EXPORTFS
> extern struct export_operations unionfs_export_ops;
> -#define init_export_op(sb) ({(sb)->s_export_op = &unionfs_export_ops;})
> -#else
> -#define init_export_op(sb) /* */
> #endif
>
> /* How long should an entry be allowed to persist */
> Only in unionfs-1.4: unionfs.mod.c
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> unionfs mailing list
> unionfs at mail.fsl.cs.sunysb.edu
> http://www.fsl.cs.sunysb.edu/mailman/listinfo/unionfs
More information about the unionfs
mailing list