Package: aufs-source Version: 0+20090302-2.1 Severity: wishlist Hi
Trying to compile aufs-source 0+20090302-2.1 against kernel 2.6.31(-rc5-git2) fails with the following error message: $ mkdir -p /tmp/pkg/usr_src ; cd /tmp/pkg $ wget http://ftp.debian.org/debian/pool/main/a/aufs/aufs-source_0+20090302-2.1_all.deb [...] $ dpkg -x aufs-source_0+20090302-2.1_all.deb . $ tar -C usr_src/ -xjf usr/src/aufs.tar.bz2 $ LANG= MODULE_LOC=/tmp/pkg/usr_src/modules/ m-a -O --kvers-list $(uname -r) --kernel-dir /usr/src/linux-headers-$(uname -r)/ --userdir /tmp/pkg/ --text-mode build aufs /usr/bin/make -C /usr/src/linux-headers-2.6.31-rc5-sidux-amd64/ M=/tmp/pkg/usr_src/modules/aufs clean [...] /usr/bin/make -C /usr/src/linux-headers-2.6.31-rc5-sidux-amd64/ M=/tmp/pkg/usr_src/modules/aufs modules make[2]: Entering directory `/usr/src/linux-headers-2.6.31-rc5-sidux-amd64' [...] CC [M] /tmp/pkg/usr_src/modules/aufs/export.o /tmp/pkg/usr_src/modules/aufs/export.c: In function ‘au_do_mnt_get’: /tmp/pkg/usr_src/modules/aufs/export.c:284: error: dereferencing pointer to incomplete type make[3]: *** [/tmp/pkg/usr_src/modules/aufs/export.o] Error 1 make[2]: *** [_module_/tmp/pkg/usr_src/modules/aufs] Error 2 make[2]: Leaving directory `/usr/src/linux-headers-2.6.31-rc5-sidux-amd64' make[1]: *** [binary-modules] Error 2 make[1]: Leaving directory `/tmp/pkg/usr_src/modules/aufs' make: *** [kdist_build] Error 2 The attached patch has been build- and runtime tested in a live CD environment, although without nfs on any of the branches, and is confirmed to work with 2.6.30 and 2.6.31(-rc5-git2). While switching to the actively maintained aufs2 branch would indeed be a better option. I do not see any way to justify or avoid the excessive amount of symbol exports for kernel innards, which are totally inacceptable for kernel upstream and likely debian-kernel as well. But maybe aufs v1 can be kept on life support until VFS based unions mounts arrive mainline. Regards Stefan Lippers-Hollmann -- System Information: Debian Release: squeeze/sid APT prefers unstable APT policy: (500, 'unstable') Architecture: amd64 (x86_64) Kernel: Linux 2.6.31-rc5-sidux-amd64 (SMP w/4 CPU cores; PREEMPT) Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Versions of packages aufs-source depends on: ii bzip2 1.0.5-3 high-quality block-sorting file co ii debhelper 7.3.9 helper programs for debian/rules ii make 3.81-6 An utility for Directing compilati ii module-assistant 0.11.1 tool to make module package creati aufs-source recommends no packages. aufs-source suggests no packages. -- no debconf information
for kernel >= 2.6.31, we need to include linux/nsproxy.h to access current->nsproxy->mnt_ns. Copyright: © 2009 Stefan Lippers-Hollmann <s....@gmx.de> --- a/fs/aufs25/export.c +++ b/fs/aufs25/export.c @@ -26,6 +26,9 @@ #include <linux/mnt_namespace.h> #include <linux/random.h> #include "aufs.h" +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 31) +#include <linux/nsproxy.h> +#endif union conv { #ifdef CONFIG_AUFS_INO_T_64
signature.asc
Description: This is a digitally signed message part.