Provided by: linux-doc-2.6.15_2.6.15-23.39_all bug

NAME

       debugfs_create_file - create a file in the debugfs filesystem

SYNOPSIS

       struct dentry * debugfs_create_file  (const char * name, mode_t mode,
                                                struct dentry * parent,
                                                void * data,
                                                struct file_operations * fops);

ARGUMENTS

       name   a pointer to a string containing the name of the file to create.

       mode   the permission that the file should have

       parent a pointer to the parent dentry for this file. This should  be  a
              directory  dentry  if  set.  If this paramater is NULL, then the
              file will be created in the root of the debugfs filesystem.

       data   a pointer to something that the caller will want to get to later
              on.  The  inode.u.generic_ip pointer will point to this value on
              the open call.

       fops   a pointer to a struct file_operations that should  be  used  for
              this file.

DESCRIPTION

       This is the basic ‘‘create a file’’ function for debugfs. It allows for
       a wide range of flexibility in createing a file, or a directory (if you
       want   to  create  a  directory,  the  debugfs_create_dir  function  is
       recommended to be used instead.)

       This function will return a pointer to a dentry if  it  succeeds.  This
       pointer  must be passed to the debugfs_remove function when the file is
       to be removed (no automatic cleanup happens if your module is unloaded,
       you are responsible here.) If an error occurs, NULL will be returned.

       If  debugfs  is  not  enabled  in the kernel, the value -ENODEV will be
       returned. It is not wise to check for this value, but rather, check for
       NULL  or  !NULL  instead  as  to  eliminate  the need for #ifdef in the
       calling code.

DESCRIPTION

       This is the basic ‘‘create a file’’ function for debugfs. It allows for
       a wide range of flexibility in createing a file, or a directory (if you
       want  to  create  a  directory,  the  debugfs_create_dir  function   is
       recommended to be used instead.)

       This  function  will  return a pointer to a dentry if it succeeds. This
       pointer must be passed to the debugfs_remove function when the file  is
       to be removed (no automatic cleanup happens if your module is unloaded,
       you are responsible here.) If an error occurs, NULL will be returned.

       If debugfs is not enabled in the kernel,  the  value  -ENODEV  will  be
       returned. It is not wise to check for this value, but rather, check for
       NULL or !NULL instead as to  eliminate  the  need  for  #ifdef  in  the
       calling code.