[OpenAFS-devel] Re: Compiling openafs on arm64/aarch64 architecture

Chas Williams (CONTRACTOR) chas@cmf.nrl.navy.mil
Fri, 05 Sep 2014 19:28:09 -0400


In message <alpine.GSO.1.10.1409051426120.21571@multics.mit.edu>,Benjamin =
Kaduk writes:
>>On Fri, 5 Sep 2014, Micheal waltz wrote:
>> Which in src/afs/afs_syscall.c looks like it there are blocks for other=
 64-bit
>> Linux archs when AFS_LINUX_64BIT_KERNEL is defined. I don't think I can=
 just
>> copy the amd64 block for arm64 however since it appears to have Intel
>> specifics.
>
>These blocks are where the kernel is checking whether the calling process
>is a 32-bit process or not.  It is (apparently) specific to the system
>architecture on linux, which is a bit surprising.
>
>If linux arm64 does not support running 32-bit executables, you can just
>put in "if (0)".  You could probably do so for now even if arm64 does
>support 32-bit executables, with an XXX comment that it needs to be
>revisited.  I am not a linux kernel expert, so I don't know how to do thi=
s
>"properly" off the top of my head.

Actually, the comment for that routine says:

/*
 * If you need to change copyin_iparam(), you may also need to change
 * copyin_afs_ioctl().
 *
 * This function is needed only for icreate, meaning, only on platforms
 * providing the inode fileserver.
 */

And it's right.  This routine is only used for afs's icreate which will
never happen on linux unless someone ports the inode fileserver (very
unlikely).

You should be able to just safely get rid of this all Linux's.