OpenAFS CVS Commit: openafs/src/afs by shadow
cvs@GRAND.CENTRAL.ORG
cvs@GRAND.CENTRAL.ORG
Mon, 06 Aug 2001 19:39:29 EDT
Update of /cvs/openafs/src/afs
In directory GRAND.CENTRAL.ORG:/data/sb/openafs/src/afs
Modified Files:
afs_dcache.c
Log Message:
DELTA solaris-locking-cleanup-20010806
AUTHOR kolya@mit.edu
reduce afs vnode lock contention, also implements async page requests
"(In afs_GetDCache, the hints in the vnode are only updated if we
can grab the write lock without blocking. In afs_GetOnePage, we
only grab the read lock, rather than the shared lock -- as far as
I can tell, there's nothing that needs the write lock.)
FWIW, the particular case where I was being bitten by this lock
contention was playing an mp3 from AFS space and at the same time
copying it to local disk. The copy kept fetching chunks while
holding the read lock, so the mp3 player couldn't grab a write
lock in the page fault, even though the data was already in cache.
While I'm not fully familiar with the semantics of afs vnode locks
[do they even exist? :-)], I believe changing from shared to read
locks in afs_GetOnePage should be safe."
--- DELTA config follows ---
solaris-locking-cleanup-20010806 openafs/src/afs/afs_dcache.c 1.8 1.9