diff options
author | Doug Moore <dougm@FreeBSD.org> | 2019-11-13 15:56:07 +0000 |
---|---|---|
committer | Doug Moore <dougm@FreeBSD.org> | 2019-11-13 15:56:07 +0000 |
commit | 7cdcf863608eaea725c7421f5244eb208b38b756 (patch) | |
tree | 8eb2068fca7adb409bf4c5f13deee1ff3d3ce062 /sys/vm/vm_map.h | |
parent | 2058e7dbde0f030105007f0f34699fdc0d8e3444 (diff) | |
download | src-7cdcf863608eaea725c7421f5244eb208b38b756.tar.gz src-7cdcf863608eaea725c7421f5244eb208b38b756.zip |
Define wrapper functions vm_map_entry_{succ,pred} to act as wrappers
around entry->{next,prev} when those are used for ordered list
traversal, and use those wrapper functions everywhere. Where the next
field is used for maintaining a stack of deferred operations, #define
defer_next to make that different usage clearer, and then use the
'right' pointer instead of 'next' for that purpose.
Approved by: markj
Tested by: pho (as part of a larger patch)
Differential Revision: https://reviews.freebsd.org/D22347
Notes
Notes:
svn path=/head/; revision=354684
Diffstat (limited to 'sys/vm/vm_map.h')
-rw-r--r-- | sys/vm/vm_map.h | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/sys/vm/vm_map.h b/sys/vm/vm_map.h index d31c91822352..b4746242719a 100644 --- a/sys/vm/vm_map.h +++ b/sys/vm/vm_map.h @@ -419,10 +419,25 @@ int vm_map_lookup_locked(vm_map_t *, vm_offset_t, vm_prot_t, vm_map_entry_t *, v vm_pindex_t *, vm_prot_t *, boolean_t *); void vm_map_lookup_done (vm_map_t, vm_map_entry_t); boolean_t vm_map_lookup_entry (vm_map_t, vm_offset_t, vm_map_entry_t *); + +static inline vm_map_entry_t +vm_map_entry_succ(vm_map_entry_t entry) +{ + + return (entry->next); +} + +static inline vm_map_entry_t +vm_map_entry_pred(vm_map_entry_t entry) +{ + + return (entry->prev); +} + #define VM_MAP_ENTRY_FOREACH(it, map) \ for ((it) = (map)->header.next; \ (it) != &(map)->header; \ - (it) = (it)->next) + (it) = vm_map_entry_succ(it)) int vm_map_protect (vm_map_t, vm_offset_t, vm_offset_t, vm_prot_t, boolean_t); int vm_map_remove (vm_map_t, vm_offset_t, vm_offset_t); void vm_map_try_merge_entries(vm_map_t map, vm_map_entry_t prev, |