#include <linux/jiffies.h>
#include <linux/module.h>
#include <linux/percpu.h>
#include <linux/preempt.h>
#include <linux/time.h>
#include <linux/spinlock.h>
#include "eytzinger.h"
#include "time_stats.h"
static const struct time_unit time_units[] = …;
const struct time_unit *bch2_pick_time_units(u64 ns)
{ … }
static void quantiles_update(struct quantiles *q, u64 v)
{ … }
static inline void time_stats_update_one(struct bch2_time_stats *stats,
u64 start, u64 end)
{ … }
void __bch2_time_stats_clear_buffer(struct bch2_time_stats *stats,
struct time_stat_buffer *b)
{ … }
static noinline void time_stats_clear_buffer(struct bch2_time_stats *stats,
struct time_stat_buffer *b)
{ … }
void __bch2_time_stats_update(struct bch2_time_stats *stats, u64 start, u64 end)
{ … }
void bch2_time_stats_exit(struct bch2_time_stats *stats)
{ … }
void bch2_time_stats_init(struct bch2_time_stats *stats)
{ … }