debugfs is a special file system available in the Linux kernel since version 2.6.10-rc3.[1] It was written by Greg Kroah-Hartman.[2]
debugfs is a simple-to-use RAM-based file system specially designed for debugging purposes. It exists as a simple way for kernel developers to make information available to user space.[3] Unlike /proc, which is only meant for information about a process, or sysfs, which has strict one-value-per-file rules, debugfs has no rules at all. Developers can put any information they want there.[4]
Use
To compile a Linux kernel with the debugfs facility, the CONFIG_DEBUG_FS option must be set to yes. It is typically mounted at /sys/kernel/debug with a command such as:[5]
mount -t debugfs none /sys/kernel/debug
It can be manipulated using several calls from the C header file linux/debugfs.h, which include:
- debugfs_create_file – for creating a file in the debug filesystem.
- debugfs_create_dir – for creating a directory inside the debug filesystem.
- debugfs_create_symlink – for creating a symbolic link inside the debug filesystem.
- debugfs_remove – for removing a debugfs entry from the debug filesystem.
References
- ↑ Linux: DebugFS Archived 2010-02-01 at the Wayback Machine, by Jeremy, December 11, 2004, KernelTrap. (Announcement of debugfs by Greg KH.)
- ↑ "Debugfs". LWN.net. 2004-12-13.
- ↑ Linux Kernel Documentation :: filesystems : debugfs.txt documentation from the source code (Based on kernel version 2.6.35.4. Page generated on 2010-09-02 21:39 EST.)
- ↑ An updated guide to debugfs, By Jonathan Corbet, May 25, 2009, LWN
- ↑ 2.5 Debugfs A guide to using debugfs, Ariane Keller, Version 0.8, July 2008, Kernel Space - User Space Interfaces