summaryrefslogtreecommitdiffstats
path: root/sys/vm/vm_radix.c
diff options
context:
space:
mode:
authoralc <alc@FreeBSD.org>2013-03-04 07:11:10 +0000
committeralc <alc@FreeBSD.org>2013-03-04 07:11:10 +0000
commitc3be5353b8b1310b565019846c3a7832bdb49a7c (patch)
treea32e9912dd3994f655b27f8fa950f7b3f7d9d163 /sys/vm/vm_radix.c
parent475367da614e7130eb36620439144ae75705b45f (diff)
downloadFreeBSD-src-c3be5353b8b1310b565019846c3a7832bdb49a7c.zip
FreeBSD-src-c3be5353b8b1310b565019846c3a7832bdb49a7c.tar.gz
Make a pass over most of the comments.
Diffstat (limited to 'sys/vm/vm_radix.c')
-rw-r--r--sys/vm/vm_radix.c51
1 files changed, 25 insertions, 26 deletions
diff --git a/sys/vm/vm_radix.c b/sys/vm/vm_radix.c
index 000a284..03f0036 100644
--- a/sys/vm/vm_radix.c
+++ b/sys/vm/vm_radix.c
@@ -62,10 +62,9 @@
#endif
/*
- * Such sizes should permit to keep node children contained into a single
- * cache-line, or to at least not span many of those.
- * In particular, sparse tries should however be compressed properly and
- * then make some extra-levels not a big deal.
+ * These widths should allow the pointers to a node's children to fit within
+ * a single cache line. The extra levels from a narrow width should not be
+ * a problem thanks to path compression.
*/
#ifdef __LP64__
#define VM_RADIX_WIDTH 4
@@ -97,8 +96,8 @@ struct vm_radix_node {
static uma_zone_t vm_radix_node_zone;
/*
- * Allocate a radix node. Pre-allocation ensures that the request will be
- * always successfully satisfied.
+ * Allocate a radix node. Pre-allocation should ensure that the request
+ * will always be satisfied.
*/
static __inline struct vm_radix_node *
vm_radix_node_get(vm_pindex_t owner, uint16_t count, uint16_t clevel)
@@ -108,15 +107,15 @@ vm_radix_node_get(vm_pindex_t owner, uint16_t count, uint16_t clevel)
rnode = uma_zalloc(vm_radix_node_zone, M_NOWAIT | M_ZERO);
/*
- * The required number of nodes might be already correctly
- * pre-allocated in vm_radix_init(). However, UMA can reserve
- * few nodes on per-cpu specific buckets, which will not be
- * accessible from the curcpu. The allocation could then
- * return NULL when the pre-allocation pool is close to be
- * exhausted. Anyway, in practice this should never be a
- * problem because a new node is not always required for
- * insert, thus the pre-allocation pool should already have
- * some extra-pages that indirectly deal with this situation.
+ * The required number of nodes should already be pre-allocated
+ * by vm_radix_prealloc(). However, UMA can hold a few nodes
+ * in per-CPU buckets, which will not be accessible by the
+ * current CPU. Thus, the allocation could return NULL when
+ * the pre-allocated pool is close to exhaustion. Anyway,
+ * in practice this should never occur because a new node
+ * is not always required for insert. Thus, the pre-allocated
+ * pool should have some extra pages that prevent this from
+ * becoming a problem.
*/
if (rnode == NULL)
panic("%s: uma_zalloc() returned NULL for a new node",
@@ -184,7 +183,7 @@ vm_radix_setroot(struct vm_radix *rtree, struct vm_radix_node *rnode)
/*
* Returns the associated page extracted from rnode if available,
- * NULL otherwise.
+ * and NULL otherwise.
*/
static __inline vm_page_t
vm_radix_node_page(struct vm_radix_node *rnode)
@@ -195,7 +194,7 @@ vm_radix_node_page(struct vm_radix_node *rnode)
}
/*
- * Adds the page as a child of provided node.
+ * Adds the page as a child of the provided node.
*/
static __inline void
vm_radix_addpage(struct vm_radix_node *rnode, vm_pindex_t index, uint16_t clev,
@@ -229,7 +228,7 @@ vm_radix_keydiff(vm_pindex_t index1, vm_pindex_t index2)
/*
* Returns TRUE if it can be determined that key does not belong to the
- * specified rnode. FALSE otherwise.
+ * specified rnode. Otherwise, returns FALSE.
*/
static __inline boolean_t
vm_radix_keybarr(struct vm_radix_node *rnode, vm_pindex_t idx)
@@ -296,7 +295,7 @@ vm_radix_declev(vm_pindex_t *idx, boolean_t *levels, uint16_t ilev)
}
/*
- * Internal handwork for vm_radix_reclaim_allonodes() primitive.
+ * Internal helper for vm_radix_reclaim_allonodes().
* This function is recursive.
*/
static void
@@ -364,7 +363,7 @@ vm_radix_init(void)
}
/*
- * Inserts the key-value pair in to the trie.
+ * Inserts the key-value pair into the trie.
* Panics if the key already exists.
*/
void
@@ -452,7 +451,7 @@ vm_radix_insert(struct vm_radix *rtree, vm_pindex_t index, vm_page_t page)
}
/*
- * Returns the value stored at the index. If the index is not present
+ * Returns the value stored at the index. If the index is not present,
* NULL is returned.
*/
vm_page_t
@@ -480,7 +479,7 @@ vm_radix_lookup(struct vm_radix *rtree, vm_pindex_t index)
}
/*
- * Look up any entry at a position bigger than or equal to index.
+ * Look up the nearest entry at a position bigger than or equal to index.
*/
vm_page_t
vm_radix_lookup_ge(struct vm_radix *rtree, vm_pindex_t index)
@@ -553,7 +552,7 @@ restart:
}
/*
- * If a valid page or edge, bigger than the search slot, is
+ * If a valid page or edge bigger than the search slot is
* found in the traversal, skip to the next higher-level key.
*/
if (slot == (VM_RADIX_COUNT - 1) &&
@@ -569,7 +568,7 @@ restart:
}
/*
- * Look up any entry at a position less than or equal to index.
+ * Look up the nearest entry at a position less than or equal to index.
*/
vm_page_t
vm_radix_lookup_le(struct vm_radix *rtree, vm_pindex_t index)
@@ -643,7 +642,7 @@ restart:
}
/*
- * If a valid page or edge, smaller than the search slot, is
+ * If a valid page or edge smaller than the search slot is
* found in the traversal, skip to the next higher-level key.
*/
if (slot == 0 && (rnode->rn_child[slot] == NULL || m != NULL)) {
@@ -710,7 +709,7 @@ vm_radix_remove(struct vm_radix *rtree, vm_pindex_t index)
/*
* Remove and free all the nodes from the radix tree.
- * This function is recrusive but there is a tight control on it as the
+ * This function is recursive but there is a tight control on it as the
* maximum depth of the tree is fixed.
*/
void
OpenPOWER on IntegriCloud