Ah, there's another patch upstream that may also be needed for kernels
prior to 2.6.20. I'm attaching it as well.
[EMAIL PROTECTED] writes:
> I did the following steps:
>
> apt-get --purge -y remove openafs-modules-source
> cd /usr/src
> rm -rf modules
> apt-get install openafs-modules-source
> tar -xzf openafs.tar.gz
> rm openafs.tar.gz
> cd modules/openafs
> patch -p1 <../../openafs-patch
> ./regen.sh
> cd /usr/src
> tar -czf openafs.tar.gz modules
> rm -rf modules
> module-assistant build openafs
>
> The build log gave no difference with the first build log. But I
> remarked that out of your 2 patches, only the first one got applied, the
> second one seemed to be already in the source.
That's odd, since the second modification is not in the source that's in
the archive. The bottom of src/cf/linux-test4.m4 currently has:
AC_DEFUN([LINUX_SYSCTL_TABLE_CHECKING], [
AC_MSG_CHECKING([for sysctl table checking])
AC_CACHE_VAL([ac_cv_linux_sysctl_table_checking], [
AC_TRY_KBUILD(
[#include <linux/sysctl.h>],
[extern int sysctl_check_table(struct ctl_table *t);
sysctl_check_table(NULL);],
ac_cv_linux_sysctl_table_checking=yes,
ac_cv_linux_sysctl_table_checking=no)])
AC_MSG_RESULT($ac_cv_linux_sysctl_table_checking)])
The relevant patch is:
--- openafs/src/cf/linux-test4.m4 2007/11/23 13:45:05 1.20.2.36
+++ openafs/src/cf/linux-test4.m4 2007/12/08 17:47:50 1.20.2.37
@@ -944,8 +944,7 @@
AC_CACHE_VAL([ac_cv_linux_sysctl_table_checking], [
AC_TRY_KBUILD(
[#include <linux/sysctl.h>],
-[extern int sysctl_check_table(struct ctl_table *t);
-sysctl_check_table(NULL);],
+[ sysctl_check_table(NULL);],
ac_cv_linux_sysctl_table_checking=yes,
ac_cv_linux_sysctl_table_checking=no)])
AC_MSG_RESULT($ac_cv_linux_sysctl_table_checking)])
so the effect should have been to remove the prototype for
sysctl_check_table. That combined with the other part of the patch (to
check for undefined functions) fixes this test to more correctly determine
if this function is available.
When you tried to apply the patch, what did patch say? I get:
windlord:/usr/src/modules/openafs# patch -p1 < ~eagle/openafs-patch
patching file src/cf/linux-test1.m4
Hunk #1 succeeded at 45 (offset -1 lines).
patching file src/cf/linux-test4.m4
Unfortunately, I can't easily try this myself since I don't have an amd64
system available to poke at, and the Xen kernel in lenny for i386 is
2.6.23.
Anyway, whatever the results of that, also try applying the following
patch (which similarly requires regen.sh to be run afterwards). This
looks like it successfully changes things for me with a 2.6.23 bulid,
which although it doesn't have the same problem is a hopeful sign.
===================================================================
RCS file: /cvs/openafs/src/cf/linux-test1.m4,v
retrieving revision 1.3.2.9
retrieving revision 1.3.2.10
diff -u -r1.3.2.9 -r1.3.2.10
--- openafs/src/cf/linux-test1.m4 2007/11/23 13:45:05 1.3.2.9
+++ openafs/src/cf/linux-test1.m4 2007/11/27 20:48:00 1.3.2.10
@@ -27,8 +27,9 @@
MODULE_LICENSE("http://www.openafs.org/dl/license10.html");
_ACEOF
- echo make -C $LINUX_KERNEL_PATH M=$SRCDIR_PARENT/conftest.dir modules
KBUILD_VERBOSE=1 >&AS_MESSAGE_LOG_FD
- make -C $LINUX_KERNEL_PATH M=$SRCDIR_PARENT/conftest.dir modules
KBUILD_VERBOSE=1 >&AS_MESSAGE_LOG_FD 2>conftest.err
+ echo make -C $LINUX_KERNEL_PATH M=$SRCDIR_PARENT/conftest.dir modules
KBUILD_VERBOSE=1 >&AS_MESSAGE_LOG_FD &&
+ make -C $LINUX_KERNEL_PATH M=$SRCDIR_PARENT/conftest.dir modules
KBUILD_VERBOSE=1 >&AS_MESSAGE_LOG_FD 2>conftest.err &&
+ ! grep "^WARNING: .* undefined!$" conftest.err >/dev/null 2>&1
then [$3]
else
sed '/^ *+/d' conftest.err >&AS_MESSAGE_LOG_FD
--
Russ Allbery ([EMAIL PROTECTED]) <http://www.eyrie.org/~eagle/>
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]