* Removed the VMArea::Wire() version that has to allocate a VMAreaWiredRange.

Since the requirement is that the area's top cache is locked, allocating
  memory isn't allowed.
* lock_memory_etc(): Create the VMAreaWiredRange object explicitly before
  locking the area's top cache.

Fixes #5680 (deadlocks when using the slab as malloc() backend).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36033 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Ingo Weinhold
2010-04-05 11:08:01 +00:00
parent 4c587ade77
commit 369111e741
3 changed files with 12 additions and 26 deletions
-1
View File
@@ -94,7 +94,6 @@ struct VMArea {
bool IsWired(addr_t base, size_t size) const;
void Wire(VMAreaWiredRange* range);
VMAreaWiredRange* Wire(addr_t base, size_t size, bool writable);
void Unwire(VMAreaWiredRange* range);
void Unwire(addr_t base, size_t size, bool writable);