summaryrefslogtreecommitdiffstats
path: root/include/linux/umsdos_fs_i.h
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>1998-08-25 09:12:35 +0000
committerRalf Baechle <ralf@linux-mips.org>1998-08-25 09:12:35 +0000
commitc7fc24dc4420057f103afe8fc64524ebc25c5d37 (patch)
tree3682407a599b8f9f03fc096298134cafba1c9b2f /include/linux/umsdos_fs_i.h
parent1d793fade8b063fde3cf275bf1a5c2d381292cd9 (diff)
o Merge with Linux 2.1.116.
o New Newport console code. o New G364 console code.
Diffstat (limited to 'include/linux/umsdos_fs_i.h')
-rw-r--r--include/linux/umsdos_fs_i.h93
1 files changed, 48 insertions, 45 deletions
diff --git a/include/linux/umsdos_fs_i.h b/include/linux/umsdos_fs_i.h
index 1020179eb..dea618561 100644
--- a/include/linux/umsdos_fs_i.h
+++ b/include/linux/umsdos_fs_i.h
@@ -4,65 +4,68 @@
#ifndef _LINUX_TYPES_H
#include <linux/types.h>
#endif
+
#include <linux/msdos_fs_i.h>
#include <linux/pipe_fs_i.h>
/* #Specification: strategy / in memory inode
- Here is the information specific to the inode of the UMSDOS file
- system. This information is added to the end of the standard struct
- inode. Each file system has its own extension to struct inode,
- so do the umsdos file system.
-
- The strategy is to have the umsdos_inode_info as a superset of
- the msdos_inode_info, since most of the time the job is done
- by the msdos fs code.
-
- So we duplicate the msdos_inode_info, and add our own info at the
- end.
-
- For all file type (and directory) the inode has a reference to:
- the directory which hold this entry: i_dir_owner
- The EMD file of i_dir_owner: i_emd_owner
- The offset in this EMD file of the entry: pos
-
- For directory, we also have a reference to the inode of its
- own EMD file. Also, we have dir_locking_info to help synchronise
- file creation and file lookup. This data is sharing space with
- the pipe_inode_info not used by directory. See also msdos_fs_i.h
- for more information about pipe_inode_info and msdos_inode_info.
+ * Here is the information specific to the inode of the UMSDOS file
+ * system. This information is added to the end of the standard struct
+ * inode. Each file system has its own extension to struct inode,
+ * so do the umsdos file system.
+ *
+ * The strategy is to have the umsdos_inode_info as a superset of
+ * the msdos_inode_info, since most of the time the job is done
+ * by the msdos fs code.
+ *
+ * So we duplicate the msdos_inode_info, and add our own info at the
+ * end.
+ *
+ * For all file type (and directory) the inode has a reference to:
+ * the directory which hold this entry: i_dir_owner
+ * The EMD file of i_dir_owner: i_emd_owner
+ * The offset in this EMD file of the entry: pos
+ *
+ * For directory, we also have a reference to the inode of its
+ * own EMD file. Also, we have dir_locking_info to help synchronise
+ * file creation and file lookup. This data is sharing space with
+ * the pipe_inode_info not used by directory. See also msdos_fs_i.h
+ * for more information about pipe_inode_info and msdos_inode_info.
+ *
+ * Special file and fifo do have an inode which correspond to an
+ * empty MSDOS file.
+ *
+ * symlink are processed mostly like regular file. The content is the
+ * link.
+ *
+ * fifos add there own extension to the inode. I have reserved some
+ * space for fifos side by side with msdos_inode_info. This is just
+ * to for the show, because msdos_inode_info already include the
+ * pipe_inode_info.
+ *
+ * The UMSDOS specific extension is placed after the union.
+ */
- Special file and fifo do have an inode which correspond to an
- empty MSDOS file.
-
- symlink are processed mostly like regular file. The content is the
- link.
-
- fifos add there own extension to the inode. I have reserved some
- space for fifos side by side with msdos_inode_info. This is just
- to for the show, because msdos_inode_info already include the
- pipe_inode_info.
-
- The UMSDOS specific extension is placed after the union.
-*/
struct dir_locking_info {
struct wait_queue *p;
- short int looking; /* How many process doing a lookup */
- short int creating; /* Is there any creation going on here */
- /* Only one at a time, although one */
- /* may recursively lock, so it is a counter */
- long pid; /* pid of the process owning the creation */
- /* lock */
+ short int looking; /* How many process doing a lookup */
+ short int creating; /* Is there any creation going on here
+ * Only one at a time, although one
+ * may recursively lock, so it is a counter
+ */
+ long pid; /* pid of the process owning the creation */
+ /* lock */
};
+
struct umsdos_inode_info {
union {
struct msdos_inode_info msdos_info;
struct pipe_inode_info pipe_info;
struct dir_locking_info dir_info;
- }u; /* Simply a filler, never referenced by fs/umsdos/... */
- unsigned long i_dir_owner; /* Inode of the dir which hold this */
- /* entry */
+ } u; /* Simply a filler, never referenced by fs/umsdos/... */
+ unsigned long i_dir_owner; /* Inode of the dir which hold this entry */
unsigned long i_emd_owner; /* Inode of the EMD file of i_dir_owner */
- off_t pos; /* Entry offset in the emd_owner file */
+ off_t pos; /* Entry offset in the emd_owner file */
/* The rest is used only if this inode describe a directory */
unsigned long i_emd_dir; /* Inode of the EMD file of this inode */
};