* I accidently broke get_next_locked_block_cache() in r27074; it would always
ignore every other cache (starting from the first). * The consequence of this was that no blocks were written back automatically for those caches, and their transactions were never idle, causing bug #2781. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27831 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
parent
1b910a79a2
commit
56ab6f077f
11
src/system/kernel/cache/block_cache.cpp
vendored
11
src/system/kernel/cache/block_cache.cpp
vendored
@ -1596,17 +1596,10 @@ get_next_locked_block_cache(block_cache *last)
|
||||
} else
|
||||
cache = sCaches.Head();
|
||||
|
||||
while (cache != NULL) {
|
||||
cache = sCaches.GetNext(cache);
|
||||
if (cache == NULL)
|
||||
break;
|
||||
|
||||
if (cache != NULL) {
|
||||
mutex_lock(&cache->lock);
|
||||
break;
|
||||
}
|
||||
|
||||
if (cache != NULL)
|
||||
sCaches.Insert(sCaches.GetNext(cache), (block_cache *)&sMarkCache);
|
||||
}
|
||||
|
||||
return cache;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user