18c2ecf20Sopenharmony_ci/**
28c2ecf20Sopenharmony_ci * @file oprofile_stats.h
38c2ecf20Sopenharmony_ci *
48c2ecf20Sopenharmony_ci * @remark Copyright 2002 OProfile authors
58c2ecf20Sopenharmony_ci * @remark Read the file COPYING
68c2ecf20Sopenharmony_ci *
78c2ecf20Sopenharmony_ci * @author John Levon
88c2ecf20Sopenharmony_ci */
98c2ecf20Sopenharmony_ci
108c2ecf20Sopenharmony_ci#ifndef OPROFILE_STATS_H
118c2ecf20Sopenharmony_ci#define OPROFILE_STATS_H
128c2ecf20Sopenharmony_ci
138c2ecf20Sopenharmony_ci#include <linux/atomic.h>
148c2ecf20Sopenharmony_ci
158c2ecf20Sopenharmony_cistruct oprofile_stat_struct {
168c2ecf20Sopenharmony_ci	atomic_t sample_lost_no_mm;
178c2ecf20Sopenharmony_ci	atomic_t sample_lost_no_mapping;
188c2ecf20Sopenharmony_ci	atomic_t bt_lost_no_mapping;
198c2ecf20Sopenharmony_ci	atomic_t event_lost_overflow;
208c2ecf20Sopenharmony_ci	atomic_t multiplex_counter;
218c2ecf20Sopenharmony_ci};
228c2ecf20Sopenharmony_ci
238c2ecf20Sopenharmony_ciextern struct oprofile_stat_struct oprofile_stats;
248c2ecf20Sopenharmony_ci
258c2ecf20Sopenharmony_ci/* reset all stats to zero */
268c2ecf20Sopenharmony_civoid oprofile_reset_stats(void);
278c2ecf20Sopenharmony_ci
288c2ecf20Sopenharmony_cistruct dentry;
298c2ecf20Sopenharmony_ci
308c2ecf20Sopenharmony_ci/* create the stats/ dir */
318c2ecf20Sopenharmony_civoid oprofile_create_stats_files(struct dentry *root);
328c2ecf20Sopenharmony_ci
338c2ecf20Sopenharmony_ci#endif /* OPROFILE_STATS_H */
34