Remove chunks_dirty tree, nruns_avail and nruns_adjac since we no

longer need to maintain the tree for dirty page purging.
This commit is contained in:
Qinfan Wu
2014-07-21 19:39:20 -07:00
parent e970800c78
commit 90737fcda1
2 changed files with 10 additions and 196 deletions

View File

@@ -167,24 +167,9 @@ struct arena_chunk_s {
/* Arena that owns the chunk. */
arena_t *arena;
/* Linkage for tree of arena chunks that contain dirty runs. */
rb_node(arena_chunk_t) dirty_link;
/* Number of dirty pages. */
size_t ndirty;
/* Number of available runs. */
size_t nruns_avail;
/*
* Number of available run adjacencies that purging could coalesce.
* Clean and dirty available runs are not coalesced, which causes
* virtual memory fragmentation. The ratio of
* (nruns_avail-nruns_adjac):nruns_adjac is used for tracking this
* fragmentation.
*/
size_t nruns_adjac;
/*
* Map of pages within chunk that keeps track of free/large/small. The
* first map_bias entries are omitted, since the chunk header does not
@@ -193,7 +178,6 @@ struct arena_chunk_s {
*/
arena_chunk_map_t map[1]; /* Dynamically sized. */
};
typedef rb_tree(arena_chunk_t) arena_chunk_tree_t;
struct arena_run_s {
/* Bin this run is associated with. */
@@ -333,9 +317,6 @@ struct arena_s {
dss_prec_t dss_prec;
/* Tree of dirty-page-containing chunks this arena manages. */
arena_chunk_tree_t chunks_dirty;
/* List of dirty runs this arena manages. */
arena_chunk_mapelms_t runs_dirty;