Lines Matching full:entry
61 struct ceph_subvol_metric_rb_entry *entry = in __lookup_entry() local
64 if (subvol_id < entry->subvolume_id) in __lookup_entry()
66 else if (subvol_id > entry->subvolume_id) in __lookup_entry()
69 return entry; in __lookup_entry()
77 struct ceph_subvol_metric_rb_entry *entry) in __insert_entry() argument
88 if (entry->subvolume_id < cur->subvolume_id) in __insert_entry()
90 else if (entry->subvolume_id > cur->subvolume_id) { in __insert_entry()
97 rb_link_node(&entry->node, parent, link); in __insert_entry()
98 rb_insert_color_cached(&entry->node, &tracker->tree, leftmost); in __insert_entry()
100 return entry; in __insert_entry()
109 struct ceph_subvol_metric_rb_entry *entry = in ceph_subvolume_metrics_clear_locked() local
113 rb_erase_cached(&entry->node, &tracker->tree); in ceph_subvolume_metrics_clear_locked()
115 kmem_cache_free(ceph_subvol_metric_entry_cachep, entry); in ceph_subvolume_metrics_clear_locked()
147 struct ceph_subvol_metric_rb_entry *entry, *new_entry = NULL; in ceph_subvolume_metrics_record() local
171 entry = __lookup_entry(tracker, subvol_id); in ceph_subvolume_metrics_record()
172 if (!entry) { in ceph_subvolume_metrics_record()
183 entry = __insert_entry(tracker, new_entry); in ceph_subvolume_metrics_record()
184 if (entry != new_entry) { in ceph_subvolume_metrics_record()
196 entry->write_ops++; in ceph_subvolume_metrics_record()
197 entry->write_bytes += size; in ceph_subvolume_metrics_record()
198 entry->write_latency_us += latency_us; in ceph_subvolume_metrics_record()
202 entry->read_ops++; in ceph_subvolume_metrics_record()
203 entry->read_bytes += size; in ceph_subvolume_metrics_record()
204 entry->read_latency_us += latency_us; in ceph_subvolume_metrics_record()
234 struct ceph_subvol_metric_rb_entry *entry = in ceph_subvolume_metrics_snapshot() local
238 if (entry->read_ops || entry->write_ops) in ceph_subvolume_metrics_snapshot()
257 struct ceph_subvol_metric_rb_entry *entry = in ceph_subvolume_metrics_snapshot() local
262 if (!entry->read_ops && !entry->write_ops) { in ceph_subvolume_metrics_snapshot()
263 rb_erase_cached(&entry->node, &tracker->tree); in ceph_subvolume_metrics_snapshot()
265 kmem_cache_free(ceph_subvol_metric_entry_cachep, entry); in ceph_subvolume_metrics_snapshot()
276 snap[idx].subvolume_id = entry->subvolume_id; in ceph_subvolume_metrics_snapshot()
277 snap[idx].read_ops = entry->read_ops; in ceph_subvolume_metrics_snapshot()
278 snap[idx].write_ops = entry->write_ops; in ceph_subvolume_metrics_snapshot()
279 snap[idx].read_bytes = entry->read_bytes; in ceph_subvolume_metrics_snapshot()
280 snap[idx].write_bytes = entry->write_bytes; in ceph_subvolume_metrics_snapshot()
281 snap[idx].read_latency_us = entry->read_latency_us; in ceph_subvolume_metrics_snapshot()
282 snap[idx].write_latency_us = entry->write_latency_us; in ceph_subvolume_metrics_snapshot()
286 entry->read_ops = 0; in ceph_subvolume_metrics_snapshot()
287 entry->write_ops = 0; in ceph_subvolume_metrics_snapshot()
288 entry->read_bytes = 0; in ceph_subvolume_metrics_snapshot()
289 entry->write_bytes = 0; in ceph_subvolume_metrics_snapshot()
290 entry->read_latency_us = 0; in ceph_subvolume_metrics_snapshot()
291 entry->write_latency_us = 0; in ceph_subvolume_metrics_snapshot()
292 rb_erase_cached(&entry->node, &tracker->tree); in ceph_subvolume_metrics_snapshot()
294 kmem_cache_free(ceph_subvol_metric_entry_cachep, entry); in ceph_subvolume_metrics_snapshot()
337 struct ceph_subvol_metric_rb_entry *entry = in ceph_subvolume_metrics_dump() local
341 if (!entry->read_ops && !entry->write_ops) in ceph_subvolume_metrics_dump()
350 avg_rd_lat = entry->read_ops ? in ceph_subvolume_metrics_dump()
351 div64_u64(entry->read_latency_us, entry->read_ops) : 0; in ceph_subvolume_metrics_dump()
352 avg_wr_lat = entry->write_ops ? in ceph_subvolume_metrics_dump()
353 div64_u64(entry->write_latency_us, entry->write_ops) : 0; in ceph_subvolume_metrics_dump()
356 entry->subvolume_id, in ceph_subvolume_metrics_dump()
357 entry->read_ops, in ceph_subvolume_metrics_dump()
358 entry->read_bytes, in ceph_subvolume_metrics_dump()
360 entry->write_ops, in ceph_subvolume_metrics_dump()
361 entry->write_bytes, in ceph_subvolume_metrics_dump()