From: Derrick Brashear Date: Wed, 21 May 2003 14:43:09 +0000 (+0000) Subject: STABLE12-amd64-copy-args-for-ia32-table-20030520 X-Git-Tag: openafs-stable-1_2_10~59 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=254693b41496c2c31055d6ff4e0a2efcb18f46e2;p=packages%2Fo%2Fopenafs.git STABLE12-amd64-copy-args-for-ia32-table-20030520 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) --- diff --git a/src/afs/afs_call.c b/src/afs/afs_call.c index 86bfb36e4..e274f9132 100644 --- a/src/afs/afs_call.c +++ b/src/afs/afs_call.c @@ -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) diff --git a/src/afs/afs_pioctl.c b/src/afs/afs_pioctl.c index d154e88ec..6cf43588c 100644 --- a/src/afs/afs_pioctl.c +++ b/src/afs/afs_pioctl.c @@ -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)