bonefish+axeld:

* Removed the ref_count from vm_areas. You now always need to have the address
  space locked (read or write, depending on what you do) when dealing with
  areas.
* Added helper classes for locking the address space: AddressSpace{Read|Write}Locker,
  and MultiAddressSpaceLocker which can lock several spaces at once and makes
  sure no dead locks can happen.
* resize_area() is now using the MultiAddressSpaceLocker instead of no locking
  at all; ie. it should now be safely to use.
* Disabled transfer_area() for now; it will be changed to work like an atomic
  clone_area()/delete_area(), that is, it will hand out a new ID for the
  transfered area.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21848 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Axel Dörfler 2007-08-07 21:46:58 +00:00
parent 7e188a5b4b
commit 5af1dda793
2 changed files with 761 additions and 392 deletions

View File

@ -163,7 +163,6 @@ typedef struct vm_area {
uint32 protection;
uint16 wiring;
uint16 memory_type;
vint32 ref_count;
struct vm_cache *cache;
vint32 no_cache_change;

File diff suppressed because it is too large Load Diff