1 #ifndef _HPFS_FS_I
2 #define _HPFS_FS_I
3 
4 struct hpfs_inode_info {
5 	unsigned long mmu_private;
6 	ino_t i_parent_dir;	/* (directories) gives fnode of parent dir */
7 	unsigned i_dno;		/* (directories) root dnode */
8 	unsigned i_dpos;	/* (directories) temp for readdir */
9 	unsigned i_dsubdno;	/* (directories) temp for readdir */
10 	unsigned i_file_sec;	/* (files) minimalist cache of alloc info */
11 	unsigned i_disk_sec;	/* (files) minimalist cache of alloc info */
12 	unsigned i_n_secs;	/* (files) minimalist cache of alloc info */
13 	unsigned i_ea_size;	/* size of extended attributes */
14 	unsigned i_conv : 2;	/* (files) crlf->newline hackery */
15 	unsigned i_ea_mode : 1;	/* file's permission is stored in ea */
16 	unsigned i_ea_uid : 1;	/* file's uid is stored in ea */
17 	unsigned i_ea_gid : 1;	/* file's gid is stored in ea */
18 	unsigned i_dirty : 1;
19 	struct semaphore i_sem;	/* semaphore */
20 	loff_t **i_rddir_off;
21 };
22 
23 #define i_hpfs_dno u.hpfs_i.i_dno
24 #define i_hpfs_parent_dir u.hpfs_i.i_parent_dir
25 #define i_hpfs_n_secs u.hpfs_i.i_n_secs
26 #define i_hpfs_file_sec u.hpfs_i.i_file_sec
27 #define i_hpfs_disk_sec u.hpfs_i.i_disk_sec
28 #define i_hpfs_dpos u.hpfs_i.i_dpos
29 #define i_hpfs_dsubdno u.hpfs_i.i_dsubdno
30 #define i_hpfs_ea_size u.hpfs_i.i_ea_size
31 #define i_hpfs_conv u.hpfs_i.i_conv
32 #define i_hpfs_ea_mode u.hpfs_i.i_ea_mode
33 #define i_hpfs_ea_uid u.hpfs_i.i_ea_uid
34 #define i_hpfs_ea_gid u.hpfs_i.i_ea_gid
35 /*#define i_hpfs_lock u.hpfs_i.i_lock*/
36 /*#define i_hpfs_queue u.hpfs_i.i_queue*/
37 #define i_hpfs_sem u.hpfs_i.i_sem
38 #define i_hpfs_rddir_off u.hpfs_i.i_rddir_off
39 #define i_hpfs_dirty u.hpfs_i.i_dirty
40 
41 #endif
42