[OpenAFS] 1.3.85 Still Crashing w/ Fedora 3 (Linux 2.6.11)
chas williams - CONTRACTOR
chas@cmf.nrl.navy.mil
Tue, 19 Jul 2005 10:55:02 -0400
In message <4314B1E2303B938B7F24C933@rowan.devrandom.org>,Jason McCormick write
s:
>VMware has its own kernel modules that you compile for each kernel.
>Basically they provide hooks into system-level operations like networking,
>etc. I've used VMware for years and we use VMware with AFS 1.2-based
>systems on AS3 and haven't had problems with it.
i have read a bit about vmware. is linux the guest or host operating
system? are you running afs on a guest or host?
>time. This oops was taking from one of the build/development hosts. I
>cannot produce it with regularity either, but it's not infrequent either.
try this patch.
Index: src/afs/LINUX/osi_misc.c
===================================================================
RCS file: /cvs/openafs/src/afs/LINUX/osi_misc.c,v
retrieving revision 1.44
diff -u -u -r1.44 osi_misc.c
--- src/afs/LINUX/osi_misc.c 11 Jul 2005 18:45:51 -0000 1.44
+++ src/afs/LINUX/osi_misc.c 19 Jul 2005 14:03:25 -0000
@@ -336,16 +336,25 @@
struct vcache *tvc, *nvc;
extern struct vcache *afs_vhashT[VCSIZE];
+ ObtainWriteLock(&afs_xvcache, 535);
+
for (i = 0; i < VCSIZE; i++) {
for (tvc = afs_vhashT[i]; tvc; ) {
int slept;
nvc = tvc->hnext;
- if (afs_FlushVCache(tvc, &slept)) /* slept always 0 for linux? */
- printf("Failed to invalidate all pages on inode 0x%p\n", tvc);
+ if (afs_FlushVCache(tvc, &slept)) { /* slept always 0 for linux? */
+ struct dentry *dp;
+
+ dp = d_find_alias(AFSTOV(tvc));
+ printf("Failed to invalidate all pages on inode 0x%p refcount %d states 0x%x name %s\n",
+ tvc, VREFCOUNT(tvc), tvc->states, dp ? (char *) dp->d_name.name : "<null>");
+ }
tvc = nvc;
}
}
+
+ ReleaseWriteLock(&afs_xvcache);
}
struct task_struct *rxk_ListenerTask;