Re: 2.6.17-rc4-mm1

Andrew Morton
2006-05-15T17:05:39Z

Alexey Dobriyan <adobriyan@gmail.com> wrote:
>
> > - Added the ecryptfs filesystem
>
> CC [M] fs/ecryptfs/super.o
> fs/ecryptfs/super.c: In function `ecryptfs_statfs':
> fs/ecryptfs/super.c:129: warning: passing arg 1 of `vfs_statfs' from incompatible pointer type
> fs/ecryptfs/super.c: At top level:
> fs/ecryptfs/super.c:207: warning: initialization from incompatible pointer type

hm, I wonder why I didn't notice that.

> * ->statfs wants vfsmount as first argument
> * ecryptfs_statfs() is inlined

yup. Fixed a bunch of those, let one slip through.

I don't immediately see how to fix this one, actually:

static inline int ecryptfs_statfs(struct super_block *sb, struct kstatfs *buf)
{
return vfs_statfs(ecryptfs_superblock_to_lower(sb), buf);
}

Once we've run ecryptfs_superblock_to_lower() to get the "lower
superblock", we need to turn that back into a vfsmount for vfs_statfs()..

(and that function needn't have been inlined - it's only ever called
indirectly)

I think I'll be dropping the fs-cache patches (again) fairly soon. They're
intrusive, quite some effort to carry, they're not getting adequate review
(afaict) and there doesn't seem to be a lot of demand for them, sorry.