1*8e33eff8Schristos #ifndef JEMALLOC_INTERNAL_EXTENT_DSS_H 2*8e33eff8Schristos #define JEMALLOC_INTERNAL_EXTENT_DSS_H 3*8e33eff8Schristos 4*8e33eff8Schristos typedef enum { 5*8e33eff8Schristos dss_prec_disabled = 0, 6*8e33eff8Schristos dss_prec_primary = 1, 7*8e33eff8Schristos dss_prec_secondary = 2, 8*8e33eff8Schristos 9*8e33eff8Schristos dss_prec_limit = 3 10*8e33eff8Schristos } dss_prec_t; 11*8e33eff8Schristos #define DSS_PREC_DEFAULT dss_prec_secondary 12*8e33eff8Schristos #define DSS_DEFAULT "secondary" 13*8e33eff8Schristos 14*8e33eff8Schristos extern const char *dss_prec_names[]; 15*8e33eff8Schristos 16*8e33eff8Schristos extern const char *opt_dss; 17*8e33eff8Schristos 18*8e33eff8Schristos dss_prec_t extent_dss_prec_get(void); 19*8e33eff8Schristos bool extent_dss_prec_set(dss_prec_t dss_prec); 20*8e33eff8Schristos void *extent_alloc_dss(tsdn_t *tsdn, arena_t *arena, void *new_addr, 21*8e33eff8Schristos size_t size, size_t alignment, bool *zero, bool *commit); 22*8e33eff8Schristos bool extent_in_dss(void *addr); 23*8e33eff8Schristos bool extent_dss_mergeable(void *addr_a, void *addr_b); 24*8e33eff8Schristos void extent_dss_boot(void); 25*8e33eff8Schristos 26*8e33eff8Schristos #endif /* JEMALLOC_INTERNAL_EXTENT_DSS_H */ 27