Good day, folks.
I obtained the source for CentOS 7's Linux kernel 3.10.0-123.6.3.el7.x86_64,
by following this[1] decent guide. Using the aufs3-standalone git, I
checked out branch aufs3.10. I then followed the "3. Configuration and
Compilation" section for "aufs3-standalone" from this[2] decent guide. From
its subsection "1.", I applied all four patches. With 'make menuconfig', I
chose to build aufs3 as a module. Running 'make', I eventually landed with:
LD fs/aufs/built-in.o
CC [M] fs/aufs/module.o
In file included from fs/aufs/aufs.h:54:0,
from fs/aufs/module.c:24:
fs/aufs/vfsub.h:75:18: error: âI_MUTEX_QUOTAâ undeclared here (not in a
function)
AuLsc_I_Begin = I_MUTEX_QUOTA, /* 4 */
^
make[2]: *** [fs/aufs/module.o] Error 1
make[1]: *** [fs/aufs] Error 2
make: *** [fs] Error 2
Reviewing the mailing-list, I saw something about I_MUTEX_QUOTA in 2006[3],
but I'm not sure that's relevant. I also found this[4] more recent message,
so I tried changing the single instance of I_MUTEX_QUOTA to I_MUTEX_NONDIR2,
but then hit a wealth of other errors which causes me to believe that I've
mismatched the aufs3 with the kernel:
CC [M] fs/aufs/vfsub.o
fs/aufs/vfsub.c: In function âvfsub_linkâ:
fs/aufs/vfsub.c:276:2: error: too few arguments to function âvfs_linkâ
err = vfs_link(src_dentry, dir, path->dentry);
^
In file included from include/linux/ima.h:13:0,
from fs/aufs/vfsub.c:22:
include/linux/fs.h:1469:12: note: declared here
extern int vfs_link(struct dentry *, struct inode *, struct dentry *,
struct inode **);
^
fs/aufs/vfsub.c: In function âvfsub_renameâ:
fs/aufs/vfsub.c:318:2: error: too few arguments to function
âvfs_renameâ
err = vfs_rename(src_dir, src_dentry, dir, path->dentry);
^
In file included from include/linux/ima.h:13:0,
from fs/aufs/vfsub.c:22:
include/linux/fs.h:1472:12: note: declared here
extern int vfs_rename(struct inode *, struct dentry *, struct inode *,
struct dentry *, struct inode **);
^
fs/aufs/vfsub.c: In function âcall_notify_changeâ:
fs/aufs/vfsub.c:671:3: error: too few arguments to function
ânotify_changeâ
*a->errp = notify_change(a->path->dentry, a->ia);
^
In file included from include/linux/ima.h:13:0,
from fs/aufs/vfsub.c:22:
include/linux/fs.h:2276:12: note: declared here
extern int notify_change(struct dentry *, struct iattr *, struct inode
**);
^
fs/aufs/vfsub.c: In function âcall_unlinkâ:
fs/aufs/vfsub.c:723:15: error: âstruct dentryâ has no member named
âd_countâ
&& d->d_count == 1);
^
fs/aufs/vfsub.c:740:2: error: too few arguments to function
âvfs_unlinkâ
*a->errp = vfs_unlink(a->dir, d);
^
In file included from include/linux/ima.h:13:0,
from fs/aufs/vfsub.c:22:
include/linux/fs.h:1471:12: note: declared here
extern int vfs_unlink(struct inode *, struct dentry *, struct inode **);
^
make[2]: *** [fs/aufs/vfsub.o] Error 1
make[1]: *** [fs/aufs] Error 2
make: *** [fs] Error 2
Does anyone have an idea about what I've done incorrectly?
[1] [1]http://wiki.centos.org/HowTos/I_need_the_Kernel_Source
[2] [2]http://aufs.sourceforge.net/
[3] [3]http://sourceforge.net/p/aufs/mailman/message/2262862/
[4] [4]http://sourceforge.net/p/aufs/mailman/message/31778609/
--
Shao Miller
Network Technician
905-836-4442 ext: 112
[5]www.treefrog.ca/shao-miller
Treefrog Inc.
905-836-4442
567 Davis Drive, Newmarket, ON
[6]www.treefrog.ca - @Treefrog
References
1. http://wiki.centos.org/HowTos/I_need_the_Kernel_Source
2. http://aufs.sourceforge.net/
3. http://sourceforge.net/p/aufs/mailman/message/2262862/
4. http://sourceforge.net/p/aufs/mailman/message/31778609/
5. http://www.treefrog.ca/shao-miller
6. http://www.treefrog.ca/
------------------------------------------------------------------------------
Slashdot TV. Video for Nerds. Stuff that Matters.
http://pubads.g.doubleclick.net/gampad/clk?id=160591471&iu=/4140/ostg.clktrk