]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - fs/hfsplus/hfsplus_fs.h
Merge tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso...
[karo-tx-linux.git] / fs / hfsplus / hfsplus_fs.h
index 2b9cd01696e2081a7a003ff3e52d261eb51db51c..08846425b67ffa112b7978650e1521b74955a1dc 100644 (file)
@@ -126,6 +126,14 @@ struct hfs_bnode {
 #define HFS_BNODE_DIRTY                3
 #define HFS_BNODE_DELETED      4
 
+/*
+ * Attributes file states
+ */
+#define HFSPLUS_EMPTY_ATTR_TREE                0
+#define HFSPLUS_CREATING_ATTR_TREE     1
+#define HFSPLUS_VALID_ATTR_TREE                2
+#define HFSPLUS_FAILED_ATTR_TREE       3
+
 /*
  * HFS+ superblock info (built from Volume Header on disk)
  */
@@ -141,6 +149,7 @@ struct hfsplus_sb_info {
        struct hfs_btree *ext_tree;
        struct hfs_btree *cat_tree;
        struct hfs_btree *attr_tree;
+       atomic_t attr_tree_state;
        struct inode *alloc_file;
        struct inode *hidden_dir;
        struct nls_table *nls;
@@ -380,6 +389,7 @@ int hfsplus_block_allocate(struct super_block *, u32, u32, u32 *);
 int hfsplus_block_free(struct super_block *, u32, u32);
 
 /* btree.c */
+u32 hfsplus_calc_btree_clump_size(u32, u32, u64, int);
 struct hfs_btree *hfs_btree_open(struct super_block *, u32);
 void hfs_btree_close(struct hfs_btree *);
 int hfs_btree_write(struct hfs_btree *);