From 1f5ef2b86a33ecd551d5effad3a975a7502c554a Mon Sep 17 00:00:00 2001 From: Marc Dionne Date: Thu, 19 Mar 2009 03:58:04 +0000 Subject: [PATCH] DEVEL15-mypidxx-not-always-int-20090318 LICENSE IPL10 FIXES 124505 don't assume MyPidxx will be an int; on linux it's current, for instance, a task_struct (cherry picked from commit aaae44dfe993d95a253b35f60feab5e9806e51f2) --- src/afs/LINUX/osi_vnodeops.c | 2 +- src/afs/afs.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/afs/LINUX/osi_vnodeops.c b/src/afs/LINUX/osi_vnodeops.c index 8a8b319a9..f5ec0ad77 100644 --- a/src/afs/LINUX/osi_vnodeops.c +++ b/src/afs/LINUX/osi_vnodeops.c @@ -260,7 +260,7 @@ afs_linux_readdir(struct file *fp, void *dirbuf, filldir_t filldir) */ avc->f.states |= CReadDir; avc->dcreaddir = tdc; - avc->readdir_pid = MyPidxx; + avc->readdir_pid = MyPidxx2Pid(MyPidxx); ConvertWToSLock(&avc->lock); /* Fill in until we get an error or we're done. This implementation diff --git a/src/afs/afs.h b/src/afs/afs.h index 834f5e18b..939663155 100644 --- a/src/afs/afs.h +++ b/src/afs/afs.h @@ -1180,7 +1180,7 @@ struct memCacheEntry { /*#define afs_DirtyPages(avc) (((avc)->f.states & CDirty) || osi_VMDirty_p((avc)))*/ #define afs_DirtyPages(avc) ((avc)->f.states & CDirty) -#define afs_InReadDir(avc) (((avc)->f.states & CReadDir) && (avc)->readdir_pid == MyPidxx) +#define afs_InReadDir(avc) (((avc)->f.states & CReadDir) && (avc)->readdir_pid == MyPidxx2Pid(MyPidxx)) /* The PFlush algorithm makes use of the fact that Fid.Unique is not used in below hash algorithms. Change it if need be so that flushing algorithm -- 2.39.5