kernel - Add a flags field to the vm_map and a MAP_WIREFUTURE flag.
authorVenkatesh Srinivas <me@endeavour.zapto.org>
Wed, 24 Nov 2010 19:15:58 +0000 (11:15 -0800)
committerVenkatesh Srinivas <me@endeavour.zapto.org>
Wed, 24 Nov 2010 19:15:58 +0000 (11:15 -0800)
sys/vm/vm_map.c
sys/vm/vm_map.h

index 49f3a65..c01e96d 100644 (file)
@@ -486,6 +486,7 @@ vm_map_init(struct vm_map *map, vm_offset_t min, vm_offset_t max, pmap_t pmap)
        map->first_free = &map->header;
        map->hint = &map->header;
        map->timestamp = 0;
+       map->flags = 0;
        lockinit(&map->lock, "thrd_sleep", 0, 0);
 }
 
index 5061ffb..93c6a39 100644 (file)
@@ -110,6 +110,7 @@ RB_PROTOTYPE(vm_map_rb_tree, vm_map_entry, rb_entry, rb_vm_map_compare);
  *     vm_map_entry_t          an entry in an address map.
  */
 
+typedef u_int vm_flags_t;
 typedef u_int vm_eflags_t;
 
 /*
@@ -224,12 +225,18 @@ struct vm_map {
        vm_map_entry_t hint;            /* hint for quick lookups */
        unsigned int timestamp;         /* Version number */
        vm_map_entry_t first_free;      /* First free space hint */
+       vm_flags_t flags;               /* flags for this vm_map */
        struct pmap *pmap;              /* Physical map */
 #define        min_offset              header.start
 #define max_offset             header.end
 };
 
 /*
+ * vm_flags_t values
+ */
+#define MAP_WIREFUTURE         0x01    /* wire all future pages */
+
+/*
  * Registered upcall
  */
 struct upcall;