[OpenAFS-devel] openafs on Linux 2.6.16 rc?
Marc Dionne
dionne@cs.wisc.edu
Sat, 18 Feb 2006 22:36:50 -0500
Stefaan wrote:
> I had the same error (at least the 'i_sem') on my linux 2.6.16-rc1.
> Some surfing on the net got me this regarding 2.6.16:
> - down(&inode->i_sem);
> + mutex_lock(&inode->i_mutex);
>
> - up(&inode->i_sem);
> + mutex_unlock(&inode->i_mutex);
>
> I did exactly those changes to osi_file.c, and it worked like a charm.
> This of course isn't a general solution, but I'm not up to speed with
> kernel development well enough to conceive such a thing :)
>
> Stefaan
> _______________________________________________
> OpenAFS-devel mailing list
> OpenAFS-devel@openafs.org
> https://lists.openafs.org/mailman/listinfo/openafs-devel
>
Hi Stefaan,
I had the same issue compiling from the CVS head, and found that there's
now a test in configure for i_mutex (in the CVS head), but it wasn't
working for me until I applied this patch to acinclude.m4. This seems
to be needed to actually produce the right #define in afsconfig.h -
otherwise the test succeeds but no #define is generated.
--- acinclude.m4 15 Feb 2006 00:31:53 -0000 1.166
+++ acinclude.m4 19 Feb 2006 03:22:01 -0000
@@ -676,6 +676,9 @@
if test
"x$ac_cv_linux_fs_struct_inode_has_i_truncate_sem" = "xyes"; then
AC_DEFINE(STRUCT_INODE_HAS_I_TRUNCATE_SEM, 1, [define
if your struct inode has truncate_sem])
fi
+ if test "x$ac_cv_linux_fs_struct_inode_has_i_mutex" =
"xyes"; then
+ AC_DEFINE(STRUCT_INODE_HAS_I_MUTEX, 1, [define if your
struct inode has i_mutex])
+ fi
if test "x$ac_cv_linux_fs_struct_inode_has_i_alloc_sem"
= "xyes"; then
AC_DEFINE(STRUCT_INODE_HAS_I_ALLOC_SEM, 1, [define if
your struct inode has alloc_sem])
fi
Marc