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 24struct file_operations; 25 26#ifdef CONFIG_TRACING 27 28struct dentry *tracefs_create_file(const char *name, umode_t mode, 29 struct dentry *parent, void *data, 30 const struct file_operations *fops); 31 32struct dentry *tracefs_create_dir(const char *name, struct dentry *parent); 33 34void tracefs_remove(struct dentry *dentry); 35void tracefs_remove_recursive(struct dentry *dentry); 36 37struct dentry *tracefs_create_instance_dir(const char *name, struct dentry *parent, 38 int (*mkdir)(const char *name), 39 int (*rmdir)(const char *name)); 40 41bool tracefs_initialized(void); 42 43#endif /* CONFIG_TRACING */ 44 45#endif 46