HPA: Some minor reformattings.

This commit is contained in:
David Goldblatt 2020-12-03 18:02:23 -08:00 committed by David Goldblatt
parent b25ee5d88e
commit 94cd9444c5
2 changed files with 12 additions and 9 deletions

View File

@ -77,6 +77,10 @@ struct hpdata_s {
fb_group_t dirty_pages[FB_NGROUPS(HUGEPAGE_PAGES)]; fb_group_t dirty_pages[FB_NGROUPS(HUGEPAGE_PAGES)];
}; };
TYPED_LIST(hpdata_list, hpdata_t, ql_link)
typedef ph(hpdata_t) hpdata_age_heap_t;
ph_proto(, hpdata_age_heap_, hpdata_age_heap_t, hpdata_t);
static inline void * static inline void *
hpdata_addr_get(const hpdata_t *hpdata) { hpdata_addr_get(const hpdata_t *hpdata) {
return hpdata->h_address; return hpdata->h_address;
@ -188,11 +192,6 @@ hpdata_assert_consistent(hpdata_t *hpdata) {
assert(hpdata_consistent(hpdata)); assert(hpdata_consistent(hpdata));
} }
TYPED_LIST(hpdata_list, hpdata_t, ql_link)
typedef ph(hpdata_t) hpdata_age_heap_t;
ph_proto(, hpdata_age_heap_, hpdata_age_heap_t, hpdata_t);
static inline bool static inline bool
hpdata_empty(hpdata_t *hpdata) { hpdata_empty(hpdata_t *hpdata) {
return hpdata->h_nactive == 0; return hpdata->h_nactive == 0;

View File

@ -135,16 +135,20 @@ hpa_alloc_ps(tsdn_t *tsdn, hpa_shard_t *shard) {
} }
static bool static bool
hpa_should_hugify(hpa_shard_t *shard, hpdata_t *ps) { hpa_good_hugification_candidate(hpa_shard_t *shard, hpdata_t *ps) {
/* /*
* For now, just use a static check; hugify a page if it's <= 5% * For now, just use a static check; hugify a page if it's <= 5%
* inactive. Eventually, this should be a malloc conf option. * inactive. Eventually, this should be a malloc conf option.
*/ */
if (hpdata_changing_state_get(ps)) { return hpdata_nactive_get(ps) >= (HUGEPAGE_PAGES) * 95 / 100;
}
static bool
hpa_should_hugify(hpa_shard_t *shard, hpdata_t *ps) {
if (hpdata_changing_state_get(ps) || hpdata_huge_get(ps)) {
return false; return false;
} }
return !hpdata_huge_get(ps) return hpa_good_hugification_candidate(shard, ps);
&& hpdata_nactive_get(ps) >= (HUGEPAGE_PAGES) * 95 / 100;
} }
/* /*