Put extent_state_t into ecache as well as eset.

This commit is contained in:
David Goldblatt
2019-12-12 16:44:49 -08:00
committed by David Goldblatt
parent 98eb40e563
commit d8b0b66c6c
6 changed files with 17 additions and 17 deletions

View File

@@ -8,6 +8,8 @@ typedef struct ecache_s ecache_t;
struct ecache_s {
malloc_mutex_t mtx;
eset_t eset;
/* All stored extents must be in the same state. */
extent_state_t state;
/*
* If true, delay coalescing until eviction; otherwise coalesce during
* deallocation.

View File

@@ -30,12 +30,14 @@ struct eset_s {
/* Page sum for all extents in heaps. */
atomic_zu_t npages;
/* All stored extents must be in the same state. */
/*
* A duplication of the data in the containing ecache. We use this only
* for assertions on the states of the passed-in extents.
*/
extent_state_t state;
};
void eset_init(eset_t *eset, extent_state_t state);
extent_state_t eset_state_get(const eset_t *eset);
size_t eset_npages_get(eset_t *eset);
/* Get the number of extents in the given page size index. */