1 /* 2 * tracefs.h - a pseudo file system for activating tracing 3 * 4 * Based on debugfs by: 2004 Greg Kroah-Hartman <greg@kroah.com> 5 * 6 * Copyright (C) 2014 Red Hat Inc, author: Steven Rostedt <srostedt@redhat.com> 7 * 8 * This program is free software; you can redistribute it and/or 9 * modify it under the terms of the GNU General Public License version 10 * 2 as published by the Free Software Foundation. 11 * 12 * tracefs is the file system that is used by the tracing infrastructure. 13 * 14 */ 15 16 #ifndef _TRACEFS_H_ 17 #define _TRACEFS_H_ 18 19 #include <linux/fs.h> 20 #include <linux/seq_file.h> 21 22 #include <linux/types.h> 23 24 struct file_operations; 25 26 #ifdef CONFIG_TRACING 27 28 struct dentry *tracefs_create_file(const char *name, umode_t mode, 29 struct dentry *parent, void *data, 30 const struct file_operations *fops); 31 32 struct dentry *tracefs_create_dir(const char *name, struct dentry *parent); 33 34 void tracefs_remove(struct dentry *dentry); 35 void tracefs_remove_recursive(struct dentry *dentry); 36 37 struct dentry *tracefs_create_instance_dir(const char *name, struct dentry *parent, 38 int (*mkdir)(const char *name), 39 int (*rmdir)(const char *name)); 40 41 bool tracefs_initialized(void); 42 43 #endif /* CONFIG_TRACING */ 44 45 #endif 46