]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
STABLE12-amd64-copy-args-for-ia32-table-20030520
authorDerrick Brashear <shadow@dementia.org>
Wed, 21 May 2003 14:43:09 +0000 (14:43 +0000)
committerDerrick Brashear <shadow@dementia.org>
Wed, 21 May 2003 14:43:09 +0000 (14:43 +0000)
so the ia32 emulation might work

====================
This delta was composed from multiple commits as part of the CVS->Git migration.
The checkin message with each commit was inconsistent.
The following are the additional commit messages.
====================

first cut at an opteron port

(cherry picked from commit 055e0b99f911a1c821cf6264f72bad61d8e63d11)

src/afs/afs_call.c
src/afs/afs_pioctl.c

index 86bfb36e40d4b1a46acd20da2f50730dafa85646..e274f9132d23f7f36746defc6698d49c983c68d9 100644 (file)
@@ -1088,16 +1088,18 @@ copyin_iparam(caddr_t cmarg, struct iparam *dst)
        }
 #endif /* AFS_SUN57_64BIT_ENV */
 
-#if defined(AFS_LINUX_64BIT_KERNEL) && !defined(AFS_ALPHA_LINUX20_ENV) && !defined(AFS_IA64_LINUX20_ENV) && !defined(AFS_AMD64_LINUX20_ENV)
+#if defined(AFS_LINUX_64BIT_KERNEL) && !defined(AFS_ALPHA_LINUX20_ENV) && !defined(AFS_IA64_LINUX20_ENV)
        struct iparam32 dst32;
 
 #ifdef AFS_SPARC64_LINUX24_ENV
        if (current->thread.flags & SPARC_FLAG_32BIT) 
-#elif AFS_SPARC64_LINUX20_ENV
+#elif defined(AFS_SPARC64_LINUX20_ENV)
        if (current->tss.flags & SPARC_FLAG_32BIT) 
+#elif defined(AFS_AMD64_LINUX20_ENV)
+       if (current->thread.flags & THREAD_IA32) 
 #else
 #error Not done for this linux version
-#endif /* AFS_SPARC64_LINUX20_ENV */
+#endif 
        {
                AFS_COPYIN(cmarg, (caddr_t) &dst32, sizeof dst32, code);
                if (!code)
index d154e88ec887cd3ae15057c19cab6e35c2393809..6cf43588c31888d3267f2321db8cf88d1603b424 100644 (file)
@@ -208,16 +208,18 @@ copyin_afs_ioctl(caddr_t cmarg, struct afs_ioctl *dst)
        }
 #endif /* defined(AFS_SGI_ENV) && (_MIPS_SZLONG==64) */
 
-#if defined(AFS_LINUX_64BIT_KERNEL) && !defined(AFS_ALPHA_LINUX20_ENV) && !defined(AFS_IA64_LINUX20_ENV) && !defined(AFS_AMD64_LINUX20_ENV)
+#if defined(AFS_LINUX_64BIT_KERNEL) && !defined(AFS_ALPHA_LINUX20_ENV) && !defined(AFS_IA64_LINUX20_ENV) 
        struct afs_ioctl32 dst32;
 
 #ifdef AFS_SPARC64_LINUX24_ENV
         if (current->thread.flags & SPARC_FLAG_32BIT)
-#elif AFS_SPARC64_LINUX20_ENV
+#elif defined(AFS_SPARC64_LINUX20_ENV)
        if (current->tss.flags & SPARC_FLAG_32BIT) 
+#elif defined(AFS_AMD64_LINUX20_ENV)
+        if (current->thread.flags & THREAD_IA32)
 #else
 #error Not done for this linux type
-#endif /* AFS_SPARC64_LINUX20_ENV */
+#endif 
          {
                AFS_COPYIN(cmarg, (caddr_t) &dst32, sizeof dst32, code);
                if (!code)