Changeset 769 for Whitix/branches
- Timestamp:
- 07/09/08 18:46:34 (5 months ago)
- Files:
-
- 1 modified
-
Whitix/branches/fs/fs/vfs/vcache.c (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
Whitix/branches/fs/fs/vfs/vcache.c
r700 r769 98 98 ListAddTail(&newNode->next,&superBlock->vNodeList); 99 99 100 VNodeLock(newNode); 101 100 102 return newNode; 101 103 } … … 208 210 return -EFAULT; 209 211 210 VNodeLock(vNode);211 212 212 if (vNode->superBlock && vNode->superBlock->sbOps && vNode->superBlock->sbOps->readVNode) 213 213 ret=vNode->superBlock->sbOps->readVNode(vNode); … … 224 224 if (!vNode) 225 225 return -EFAULT; 226 227 VNodeLock(vNode);228 226 229 227 if (vNode->superBlock && vNode->superBlock->sbOps && vNode->superBlock->sbOps->readVNodeWithData) 230 228 ret=vNode->superBlock->sbOps->readVNodeWithData(vNode, data); 231 229 232 230 VNodeUnlock(vNode); 233 231 … … 280 278 void VNodeSyncAll() 281 279 { 282 struct VNode* curr ;280 struct VNode* curr, *curr2; 283 281 struct VfsSuperBlock* superBlock; 284 282 285 283 ListForEachEntry(superBlock,&sbList,sbList) 286 284 /* Cycle through all vNodes. */ 287 ListForEachEntry (curr,&superBlock->vNodeList,next)285 ListForEachEntrySafe(curr, curr2, &superBlock->vNodeList, next) 288 286 if (curr->flags & VNODE_DIRTY) 289 287 VNodeWrite(curr); … … 345 343 free(vNode->extraInfo); 346 344 345 PreemptDisable(); 347 346 ListRemove(&vNode->next); 347 PreemptEnable(); 348 348 349 349 if (vNode->superBlock)