mirror of
https://git.openafs.org/openafs.git
synced 2025-01-22 17:00:15 +00:00
dcache-dont-erroneously-fail-to-fill-in-tsmall-20011225
"The particular problem seems to be, when size is computed to be zero, tsmall is not filled in with valid data, and ProcessFS is called with a zeroed out OutStatus. This causes the file to magically turn into a directory (VDIR), among other things" "The second part of the patch doesn't fix any bug that I've ran into thus far, but seemed like a good idea while I was reading the code to find the former bug."
This commit is contained in:
parent
4e02670a22
commit
96f340c532
@ -2141,7 +2141,7 @@ RetryLookup:
|
||||
/*
|
||||
* Not a dynamic vnode: do the real fetch.
|
||||
*/
|
||||
if (size) do {
|
||||
do {
|
||||
/*
|
||||
* Locks held:
|
||||
* avc->lock(R) if setLocks && !slowPass
|
||||
@ -2548,7 +2548,7 @@ done:
|
||||
/* Check if we need to perform any last-minute fixes with a write-lock */
|
||||
if (!setLocks || doVcacheUpdate) {
|
||||
if (setNewCallback) avc->callback = newCallback;
|
||||
if (tsmall) afs_ProcessFS(avc, &tsmall->OutStatus, areq);
|
||||
if (tsmall && setVcacheStatus) afs_ProcessFS(avc, &tsmall->OutStatus, areq);
|
||||
if (setLocks) ReleaseWriteLock(&avc->lock);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user