blob: ee38abcc74f390bd5b6da4dc1a7fc7c78761114a [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001/**
2 * @file oprof.h
3 *
4 * @remark Copyright 2002 OProfile authors
5 * @remark Read the file COPYING
6 *
7 * @author John Levon <levon@movementarian.org>
8 */
9
10#ifndef OPROF_H
11#define OPROF_H
12
13int oprofile_setup(void);
Robert Richter6a180372008-10-16 15:01:40 +020014void oprofile_shutdown(void);
Linus Torvalds1da177e2005-04-16 15:20:36 -070015
16int oprofilefs_register(void);
17void oprofilefs_unregister(void);
18
19int oprofile_start(void);
20void oprofile_stop(void);
21
22struct oprofile_operations;
Robert Richter6a180372008-10-16 15:01:40 +020023
Robert Richterbd2172f2008-12-16 16:19:54 +010024extern unsigned long oprofile_buffer_size;
25extern unsigned long oprofile_cpu_buffer_size;
26extern unsigned long oprofile_buffer_watershed;
Linus Torvalds1da177e2005-04-16 15:20:36 -070027extern struct oprofile_operations oprofile_ops;
28extern unsigned long oprofile_started;
Robert Richterbd2172f2008-12-16 16:19:54 +010029extern unsigned long oprofile_backtrace_depth;
Jason Yeh4d4036e2009-07-08 13:49:38 +020030extern unsigned long timeout_jiffies;
Robert Richter6a180372008-10-16 15:01:40 +020031
Linus Torvalds1da177e2005-04-16 15:20:36 -070032struct super_block;
33struct dentry;
34
Robert Richter25ad2912008-09-05 17:12:36 +020035void oprofile_create_files(struct super_block *sb, struct dentry *root);
36void oprofile_timer_init(struct oprofile_operations *ops);
Linus Torvalds1da177e2005-04-16 15:20:36 -070037
38int oprofile_set_backtrace(unsigned long depth);
Jason Yeh4d4036e2009-07-08 13:49:38 +020039int oprofile_set_timeout(unsigned long time);
Robert Richter6a180372008-10-16 15:01:40 +020040
Linus Torvalds1da177e2005-04-16 15:20:36 -070041#endif /* OPROF_H */