1#ifndef _HPFS_FS_I
2#define _HPFS_FS_I
3
4struct 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