[OpenAFS] 1.4.7pre3 client success on EL4&5 - and a question
Stephan Wiesand
Stephan.Wiesand@desy.de
Fri, 11 Apr 2008 13:50:42 +0200 (CEST)
Hi Marc,
On Thu, 10 Apr 2008, Marc Dionne wrote:
> On Wed, Apr 9, 2008 at 11:45 AM, Stephan Wiesand
> <Stephan.Wiesand@desy.de> wrote:
>> PS On SL3, inserting the module from 1.4.7pre3 fails with the message that
>> hlist_unhashed is GPLONLY. I'll file a bug in RT.
>
>> From looking at your error messages in RT and 2.4 kernel sources, I
> think hlist_unhashed simply doesn't exist on 2.4. So the code that
> was added to hash inodes (to prevent dealocks when using mmap())
> probably needs to be made conditional to 2.6.
>
> Could you try the patch below for src/afs/LINUX/osi_vnodeops.c
Yes, this patch is sufficient to make it load and work. Thanks.
There seems to be an ABI incompatibility somewhere: Our build of
the AFS Perl module on this platform seems unable to use my token
("vsu_ClientInit: Could not get afs tokens, running unauthenticated.").
The module was built against OpenAFS-1.2.13 in May 2006, but up to and
including 1.4.6 it was still working fine with 1.4.x clients. Maybe that
was by chance only?
Anyway, I'll keep pre3 running on an i386 and an x86_64 system and report
further problems if any show up.
-- Stephan
> Marc
>
> =====================
> --- osi_vnodeops.c.orig Wed Apr 02 14:27:13 2008
> +++ osi_vnodeops.c Thu Apr 10 11:39:59 2008
> @@ -960,7 +960,9 @@
>
> afs_getattr(vcp, &vattr, credp);
> afs_fill_inode(ip, &vattr);
> +#if defined(AFS_LINUX26_ENV)
> insert_inode_hash(ip);
> +#endif
> dp->d_op = &afs_dentry_operations;
> dp->d_time = hgetlo(VTOAFS(dip)->m.DataVersion);
> d_instantiate(dp, ip);
> @@ -1006,8 +1008,10 @@
> ip = AFSTOV(vcp);
> afs_getattr(vcp, &vattr, credp);
> afs_fill_inode(ip, &vattr);
> +#if defined(AFS_LINUX26_ENV)
> if (hlist_unhashed(&ip->i_hash))
> insert_inode_hash(ip);
> +#endif
> }
> dp->d_op = &afs_dentry_operations;
> dp->d_time = hgetlo(VTOAFS(dip)->m.DataVersion);
>
--
Stephan Wiesand
DESY - DV -
Platanenallee 6
15738 Zeuthen, Germany