Adding osi_procname macro to different platforms
authorsanket <sanket@sanketagarwal.com>
Sat, 17 Apr 2010 14:14:25 +0000 (19:14 +0530)
committerDerrick Brashear <shadow@dementia.org>
Thu, 22 Apr 2010 04:43:17 +0000 (21:43 -0700)
osi_procname(procname, size) is added to different platforms to obtain
the processname in the string procname( preallocated ) with size size

Change-Id: Iab8fed3e99839cee7c07a2de6144af9b09af3a57
Change-Id: Ib4e45564ae942e74c331444969a462427f5e7cf3
Reviewed-on: http://gerrit.openafs.org/1771
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

src/afs/AIX/osi_machdep.h
src/afs/DARWIN/osi_machdep.h
src/afs/HPUX/osi_machdep.h
src/afs/IRIX/osi_machdep.h
src/afs/LINUX/osi_machdep.h
src/afs/LINUX24/osi_machdep.h
src/afs/NBSD/osi_machdep.h
src/afs/OBSD/osi_machdep.h
src/afs/SOLARIS/osi_machdep.h
src/afs/UKERNEL/osi_machdep.h

index 27f1e51..878bca6 100644 (file)
@@ -80,4 +80,6 @@ extern simple_lock_data afs_global_lock;
        mutex_init(&afs_global_lock, "afs_global_lock", MUTEX_DEFAULT, NULL)
 #endif
 
+#define osi_procname(procname, size) strncpy(procname, curproc->pi_comm, size)
+
 #endif /* _OSI_MACHDEP_H_ */
index 31b6763..9e8a30f 100644 (file)
@@ -251,4 +251,10 @@ extern int (**afs_vnodeop_p) ();
 # define SetAfsVnode(v)     /* nothing; done in getnewvnode() */
 #endif
 
+#ifdef AFS_DARWIN80_ENV
+#define osi_procname(procname, size) proc_selfname(procname, size)
+#else
+#define osi_procname(procname, size) strncpy(procname, curproc->p_comm, size)
+#endif
+
 #endif /* _OSI_MACHDEP_H_ */
index bbee67f..4b72209 100644 (file)
@@ -119,4 +119,6 @@ extern caddr_t kmem_alloc();
 #include <vfs_vm.h>
 #endif
 
+#define osi_procname(procname, size) strncpy(procname, u.u_comm, size)
+
 #endif /* _OSI_MACHDEP_H_ */
index 991146a..ba6432b 100644 (file)
@@ -391,7 +391,7 @@ extern long afs_global_owner;
 #define OSI_VFS_CONVERT(V) struct vfs * V = (struct vfs*)bhvtovfs(bhv_##V)
 #endif /* AFS_SGI64_ENV */
 
-
+#define osi_procname(procname, size) strncpy(procname, proc_name(curproc()), size)
 
 
 #endif /* _OSI_MACHDEP_H_ */
index f807ae2..f1dd158 100644 (file)
@@ -364,4 +364,6 @@ do { \
 #endif
 #endif
 
+#define osi_procname(procname, size) strncpy(procname, current->comm, size)
+
 #endif /* OSI_MACHDEP_H_ */
index 0f2de98..b448050 100644 (file)
@@ -341,4 +341,6 @@ do { \
 #endif
 #endif
 
+#define osi_procname(procname, size) strncpy(procname, current->comm, size)
+
 #endif /* OSI_MACHDEP_H_ */
index 6a2b4e7..8dc69c1 100644 (file)
@@ -99,4 +99,6 @@ extern int (**afs_vnodeop_p) ();
 #define IsAfsVnode(v)           ((v)->v_op == afs_vnodeop_p)
 #define SetAfsVnode(v)          /* nothing; done in getnewvnode() */
 
+#define osi_procname(procname, size) strncpy(procname, curproc->p_comm, size)
+
 #endif /* _OSI_MACHDEP_H_ */
index e1b9000..007fe41 100644 (file)
@@ -242,4 +242,6 @@ extern int (**afs_vnodeop_p) ();
 #define IsAfsVnode(v)      ((v)->v_op == afs_vnodeop_p)
 #define SetAfsVnode(v)     /* nothing; done in getnewvnode() */
 
+#define osi_procname(procname, size) strncpy(procname, curproc->p_comm, size)
+
 #endif /* _OSI_MACHDEP_H_ */
index 2400cc0..1e17748 100644 (file)
@@ -127,4 +127,7 @@ struct afs_ifinfo {
   int         metric;
   ipaddr_t    dstaddr;
 };
+
+#define osi_procname(procname, size) strncpy(procname, PTOU(ttoproc(curthread))->u_comm, size)
+
 #endif /* _OSI_MACHDEP_H_ */
index 3da01db..8e2e5a4 100644 (file)
@@ -87,4 +87,5 @@ extern int afs_suser(void *credp);
 #define getuerror(erval) get_user_struct()->u_error
 #define osi_curcred()    get_user_struct()->u_cred
 
+#define osi_procname(procname, size) strncpy(procname, "(unknown)", size)
 #endif /* _OSI_MACHDEP_H_ */