From b147521611a73d0578aca14b3252e062de1e5d8a Mon Sep 17 00:00:00 2001 From: Derrick Brashear Date: Mon, 15 Dec 2008 19:12:04 +0000 Subject: [PATCH] aix-prototype-fixes-20081215 LICENSE IPL10 make the prototyping changes work on aix --- src/afs/AIX/osi_inode.c | 13 ++++++------- src/afs/afs_syscall.c | 4 ++-- src/rx/rx_kcommon.c | 10 ++++++++++ src/rx/rx_prototypes.h | 4 ++++ 4 files changed, 22 insertions(+), 9 deletions(-) diff --git a/src/afs/AIX/osi_inode.c b/src/afs/AIX/osi_inode.c index e8a4cbbd7..d72e42bb7 100644 --- a/src/afs/AIX/osi_inode.c +++ b/src/afs/AIX/osi_inode.c @@ -72,8 +72,8 @@ extern Simple_lock jfs_icache_lock; #define IWRITE_UNLOCK(ip) simple_unlock(&((ip)->afs_inode_lock)) #define SYSENT(name, arglist, decls) \ -name arglist \ -decls { \ +name decls \ +{ \ lock_t lockt; \ int rval1 = 0; \ label_t jmpbuf; \ @@ -95,8 +95,7 @@ decls { \ \ return(getuerror() ? -1 : rval1); \ } \ -afs_syscall_ ## name arglist \ -decls \ +afs_syscall_ ## name decls \ /* @@ -257,7 +256,7 @@ igetinode(dev, vfsp, inode, vpp, perror) #define INODESPECIAL 0xffffffff /* ... from ../vol/viceonode.h */ #endif -SYSENT(icreate, (dev, near_inode, param1, param2, param3, param4),) +SYSENT(icreate, (dev, near_inode, param1, param2, param3, param4), (long dev, long near_inode, long param1, long param2, long param3, long param4)) { struct inode *ip, *newip, *pip; register int err, rval1, rc = 0; @@ -320,7 +319,7 @@ SYSENT(icreate, (dev, near_inode, param1, param2, param3, param4),) return getuerror()? -1 : rval1; } -SYSENT(iopen, (dev, inode, usrmod),) +SYSENT(iopen, (dev, inode, usrmod),(int dev, int inode, int usrmod)) { struct file *fp; register struct inode *ip; @@ -388,7 +387,7 @@ idec(dev, inode, inode_p1) } -SYSENT(iincdec, (dev, inode, inode_p1, amount),) +SYSENT(iincdec, (dev, inode, inode_p1, amount),(int dev, int inode, int inode_p1, int amount)) { register struct inode *ip; char error; diff --git a/src/afs/afs_syscall.c b/src/afs/afs_syscall.c index 91cb82cc7..0d0efbb36 100644 --- a/src/afs/afs_syscall.c +++ b/src/afs/afs_syscall.c @@ -630,8 +630,8 @@ Afs_syscall() p->p_cred->pc_ucred); #else code = - afs_syscall_pioctl(uap->parm1, uap->parm2, uap->parm3, - uap->parm4); + afs_syscall_pioctl((char *)uap->parm1, (unsigned int)uap->parm2, (caddr_t)uap->parm3, + (int) uap->parm4); #endif AFS_GUNLOCK(); } else if (uap->syscall == AFSCALL_ICREATE) { diff --git a/src/rx/rx_kcommon.c b/src/rx/rx_kcommon.c index ba14d026a..72c8dbacb 100644 --- a/src/rx/rx_kcommon.c +++ b/src/rx/rx_kcommon.c @@ -126,14 +126,24 @@ rxi_GetUDPSocket(u_short port) #if !defined(AFS_LINUX26_ENV) void +#ifdef AFS_AIX_ENV +osi_Panic(char *msg, void *a1, void *a2, void *a3) +#else osi_Panic(char *msg, ...) +#endif { +#ifdef AFS_AIX_ENV + if (!msg) + msg = "Unknown AFS panic"; + printf(msg, a1, a2, a3); +#else va_list ap; if (!msg) msg = "Unknown AFS panic"; va_start(ap, msg); vprintf(msg, ap); +#endif #ifdef AFS_LINUX20_ENV * ((char *) 0) = 0; #else diff --git a/src/rx/rx_prototypes.h b/src/rx/rx_prototypes.h index 97c57bdf1..5fc88d8fe 100644 --- a/src/rx/rx_prototypes.h +++ b/src/rx/rx_prototypes.h @@ -362,8 +362,12 @@ extern osi_socket rxi_GetHostUDPSocket(u_int host, u_short port); #define osi_Assert(expr) \ do { if (!(expr)) { osi_AssertFailK(#expr, __FILE__, __LINE__); BUG(); } } while (0) #else +#if defined(KERNEL) && defined(AFS_AIX_ENV) +extern void osi_Panic(char *fmt, void *a1, void *a2, void *a3); +#else extern void osi_Panic(char *fmt, ...); #endif +#endif extern int osi_utoa(char *buf, size_t len, unsigned long val); extern void rxi_InitPeerParams(register struct rx_peer *pp); extern void shutdown_rxkernel(void); -- 2.39.5