2 #include <linux/qnx4_fs.h>
7 #define QNX4DEBUG(X) printk X
9 #define QNX4DEBUG(X) (void) 0
13 struct buffer_head
*sb_buf
; /* superblock buffer */
14 struct qnx4_super_block
*sb
; /* our superblock */
15 unsigned int Version
; /* may be useful */
16 struct qnx4_inode_entry
*BitMap
; /* useful */
19 struct qnx4_inode_info
{
20 struct qnx4_inode_entry raw
;
22 struct inode vfs_inode
;
25 extern struct inode
*qnx4_iget(struct super_block
*, unsigned long);
26 extern struct dentry
*qnx4_lookup(struct inode
*dir
, struct dentry
*dentry
, struct nameidata
*nd
);
27 extern unsigned long qnx4_count_free_blocks(struct super_block
*sb
);
28 extern unsigned long qnx4_block_map(struct inode
*inode
, long iblock
);
30 extern struct buffer_head
*qnx4_bread(struct inode
*, int, int);
32 extern const struct inode_operations qnx4_file_inode_operations
;
33 extern const struct inode_operations qnx4_dir_inode_operations
;
34 extern const struct file_operations qnx4_file_operations
;
35 extern const struct file_operations qnx4_dir_operations
;
36 extern int qnx4_is_free(struct super_block
*sb
, long block
);
37 extern int qnx4_set_bitmap(struct super_block
*sb
, long block
, int busy
);
38 extern int qnx4_create(struct inode
*inode
, struct dentry
*dentry
, int mode
, struct nameidata
*nd
);
39 extern void qnx4_truncate(struct inode
*inode
);
40 extern void qnx4_free_inode(struct inode
*inode
);
41 extern int qnx4_unlink(struct inode
*dir
, struct dentry
*dentry
);
42 extern int qnx4_rmdir(struct inode
*dir
, struct dentry
*dentry
);
44 static inline struct qnx4_sb_info
*qnx4_sb(struct super_block
*sb
)
49 static inline struct qnx4_inode_info
*qnx4_i(struct inode
*inode
)
51 return container_of(inode
, struct qnx4_inode_info
, vfs_inode
);
54 static inline struct qnx4_inode_entry
*qnx4_raw_inode(struct inode
*inode
)
56 return &qnx4_i(inode
)->raw
;