Lines Matching refs:class
56 ddt_object_create(ddt_t *ddt, enum ddt_type type, enum ddt_class class, in ddt_object_create() argument
61 uint64_t *objectp = &ddt->ddt_object[type][class]; in ddt_object_create()
65 ddt_object_name(ddt, type, class, name); in ddt_object_create()
76 &ddt->ddt_histogram[type][class], tx) == 0); in ddt_object_create()
80 ddt_object_destroy(ddt_t *ddt, enum ddt_type type, enum ddt_class class, in ddt_object_destroy() argument
85 uint64_t *objectp = &ddt->ddt_object[type][class]; in ddt_object_destroy()
88 ddt_object_name(ddt, type, class, name); in ddt_object_destroy()
91 ASSERT(ddt_object_count(ddt, type, class) == 0); in ddt_object_destroy()
92 ASSERT(ddt_histogram_empty(&ddt->ddt_histogram[type][class])); in ddt_object_destroy()
96 bzero(&ddt->ddt_object_stats[type][class], sizeof (ddt_object_t)); in ddt_object_destroy()
102 ddt_object_load(ddt_t *ddt, enum ddt_type type, enum ddt_class class) in ddt_object_load() argument
104 ddt_object_t *ddo = &ddt->ddt_object_stats[type][class]; in ddt_object_load()
109 ddt_object_name(ddt, type, class, name); in ddt_object_load()
112 sizeof (uint64_t), 1, &ddt->ddt_object[type][class]); in ddt_object_load()
119 &ddt->ddt_histogram[type][class])); in ddt_object_load()
124 VERIFY(ddt_object_info(ddt, type, class, &doi) == 0); in ddt_object_load()
126 ddo->ddo_count = ddt_object_count(ddt, type, class); in ddt_object_load()
134 ddt_object_sync(ddt_t *ddt, enum ddt_type type, enum ddt_class class, in ddt_object_sync() argument
137 ddt_object_t *ddo = &ddt->ddt_object_stats[type][class]; in ddt_object_sync()
141 ddt_object_name(ddt, type, class, name); in ddt_object_sync()
145 &ddt->ddt_histogram[type][class], tx) == 0); in ddt_object_sync()
150 VERIFY(ddt_object_info(ddt, type, class, &doi) == 0); in ddt_object_sync()
152 ddo->ddo_count = ddt_object_count(ddt, type, class); in ddt_object_sync()
158 ddt_object_lookup(ddt_t *ddt, enum ddt_type type, enum ddt_class class, in ddt_object_lookup() argument
161 if (!ddt_object_exists(ddt, type, class)) in ddt_object_lookup()
165 ddt->ddt_object[type][class], dde)); in ddt_object_lookup()
169 ddt_object_prefetch(ddt_t *ddt, enum ddt_type type, enum ddt_class class, in ddt_object_prefetch() argument
172 if (!ddt_object_exists(ddt, type, class)) in ddt_object_prefetch()
176 ddt->ddt_object[type][class], dde); in ddt_object_prefetch()
180 ddt_object_update(ddt_t *ddt, enum ddt_type type, enum ddt_class class, in ddt_object_update() argument
183 ASSERT(ddt_object_exists(ddt, type, class)); in ddt_object_update()
186 ddt->ddt_object[type][class], dde, tx)); in ddt_object_update()
190 ddt_object_remove(ddt_t *ddt, enum ddt_type type, enum ddt_class class, in ddt_object_remove() argument
193 ASSERT(ddt_object_exists(ddt, type, class)); in ddt_object_remove()
196 ddt->ddt_object[type][class], dde, tx)); in ddt_object_remove()
200 ddt_object_walk(ddt_t *ddt, enum ddt_type type, enum ddt_class class, in ddt_object_walk() argument
203 ASSERT(ddt_object_exists(ddt, type, class)); in ddt_object_walk()
206 ddt->ddt_object[type][class], dde, walk)); in ddt_object_walk()
210 ddt_object_count(ddt_t *ddt, enum ddt_type type, enum ddt_class class) in ddt_object_count() argument
212 ASSERT(ddt_object_exists(ddt, type, class)); in ddt_object_count()
215 ddt->ddt_object[type][class])); in ddt_object_count()
219 ddt_object_info(ddt_t *ddt, enum ddt_type type, enum ddt_class class, in ddt_object_info() argument
222 if (!ddt_object_exists(ddt, type, class)) in ddt_object_info()
225 return (dmu_object_info(ddt->ddt_os, ddt->ddt_object[type][class], in ddt_object_info()
230 ddt_object_exists(ddt_t *ddt, enum ddt_type type, enum ddt_class class) in ddt_object_exists() argument
232 return (!!ddt->ddt_object[type][class]); in ddt_object_exists()
236 ddt_object_name(ddt_t *ddt, enum ddt_type type, enum ddt_class class, in ddt_object_name() argument
241 ddt_ops[type]->ddt_op_name, ddt_class_name[class]); in ddt_object_name()
449 for (enum ddt_class class = 0; class < DDT_CLASSES; in ddt_get_dedup_object_stats() local
450 class++) { in ddt_get_dedup_object_stats()
452 &ddt->ddt_object_stats[type][class]; in ddt_get_dedup_object_stats()
473 for (enum ddt_class class = 0; class < DDT_CLASSES; in ddt_get_dedup_histogram() local
474 class++) { in ddt_get_dedup_histogram()
476 &ddt->ddt_histogram_cache[type][class]); in ddt_get_dedup_histogram()
675 enum ddt_class class; in ddt_lookup() local
704 for (class = 0; class < DDT_CLASSES; class++) { in ddt_lookup()
705 error = ddt_object_lookup(ddt, type, class, dde); in ddt_lookup()
721 dde->dde_class = class; /* will be DDT_CLASSES if no entry found */ in ddt_lookup()
751 for (enum ddt_class class = 0; class < DDT_CLASSES; class++) { in ddt_prefetch() local
752 ddt_object_prefetch(ddt, type, class, &dde); in ddt_prefetch()
831 for (enum ddt_class class = 0; class < DDT_CLASSES; in ddt_load() local
832 class++) { in ddt_load()
833 error = ddt_object_load(ddt, type, class); in ddt_load()
877 for (enum ddt_class class = 0; class <= max_class; class++) in ddt_class_contains() local
878 if (ddt_object_lookup(ddt, type, class, &dde) == 0) in ddt_class_contains()
895 for (enum ddt_class class = 0; class < DDT_CLASSES; class++) { in ddt_repair_start() local
901 if (class != DDT_CLASS_UNIQUE && in ddt_repair_start()
902 ddt_object_lookup(ddt, type, class, dde) == 0) in ddt_repair_start()
1080 for (enum ddt_class class = 0; class < DDT_CLASSES; class++) { in ddt_sync_table() local
1081 if (ddt_object_exists(ddt, type, class)) { in ddt_sync_table()
1082 ddt_object_sync(ddt, type, class, tx); in ddt_sync_table()
1083 count += ddt_object_count(ddt, type, class); in ddt_sync_table()
1086 for (enum ddt_class class = 0; class < DDT_CLASSES; class++) { in ddt_sync_table() local
1087 if (count == 0 && ddt_object_exists(ddt, type, class)) in ddt_sync_table()
1088 ddt_object_destroy(ddt, type, class, tx); in ddt_sync_table()