~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

Linux Cross Reference
Linux/include/linux/umsdos_fs_i.h

Version: ~ [ 2.4.0 ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 #ifndef UMSDOS_FS_I_H
  2 #define UMSDOS_FS_I_H
  3 
  4 #ifndef _LINUX_TYPES_H
  5 #include <linux/types.h>
  6 #endif
  7 
  8 #include <linux/msdos_fs_i.h>
  9 #include <linux/pipe_fs_i.h>
 10 
 11 /* #Specification: strategy / in memory inode
 12  * Here is the information specific to the inode of the UMSDOS file
 13  * system. This information is added to the end of the standard struct
 14  * inode. Each file system has its own extension to struct inode,
 15  * so do the umsdos file system.
 16  * 
 17  * The strategy is to have the umsdos_inode_info as a superset of
 18  * the msdos_inode_info, since most of the time the job is done
 19  * by the msdos fs code.
 20  * 
 21  * So we duplicate the msdos_inode_info, and add our own info at the
 22  * end.
 23  * 
 24  * The offset in this EMD file of the entry: pos
 25  * 
 26  * For directory, we have dir_locking_info to help synchronise
 27  * file creation and file lookup. See also msdos_fs_i.h for more 
 28  * information about msdos_inode_info.
 29  * 
 30  * Special file and fifo do have an inode which correspond to an
 31  * empty MSDOS file.
 32  * 
 33  * symlink are processed mostly like regular file. The content is the
 34  * link.
 35  * 
 36  * The UMSDOS specific extension is placed after the union.
 37  */
 38 
 39 struct dir_locking_info {
 40         wait_queue_head_t p;
 41         short int looking;      /* How many process doing a lookup */
 42         short int creating;     /* Is there any creation going on here
 43                                  *  Only one at a time, although one
 44                                  *  may recursively lock, so it is a counter
 45                                  */
 46         long pid;               /* pid of the process owning the creation
 47                                  * lock */
 48 };
 49 
 50 struct umsdos_inode_info {
 51         struct msdos_inode_info msdos_info;
 52         struct dir_locking_info dir_info;
 53         int i_patched;                  /* Inode has been patched */
 54         int i_is_hlink;                 /* Resolved hardlink inode? */
 55         off_t pos;                      /* Entry offset in the emd_owner file */
 56 };
 57 
 58 #endif
 59 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

This page was automatically generated by the LXR engine.
Visit the LXR main site for more information.