Fix race yaffs_flush_inodes against iput
[yaffs2.git] / yaffs_packedtags2.h
index f147c0931c4d8a279eb683da985980147a11ac79..598032601f7811b7012c151799978c78743347e3 100644 (file)
@@ -1,8 +1,7 @@
 /*
  * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
  *
- * Copyright (C) 2002-2010 Aleph One Ltd.
- *   for Toby Churchill Ltd and Brightstar Engineering
+ * Copyright (C) 2002-2018 Aleph One Ltd.
  *
  * Created by Charles Manning <charles@aleph1.co.uk>
  *
@@ -26,18 +25,26 @@ struct yaffs_packed_tags2_tags_only {
        unsigned obj_id;
        unsigned chunk_id;
        unsigned n_bytes;
-} ;
+};
 
 struct yaffs_packed_tags2 {
        struct yaffs_packed_tags2_tags_only t;
        struct yaffs_ecc_other ecc;
-} ;
+};
 
 /* Full packed tags with ECC, used for oob tags */
-void yaffs_pack_tags2(struct yaffs_packed_tags2 *pt, const struct yaffs_ext_tags *t, int tags_ecc);
-void yaffs_unpack_tags2(struct yaffs_ext_tags *t, struct yaffs_packed_tags2 *pt, int tags_ecc);
+void yaffs_pack_tags2(struct yaffs_dev *dev,
+                     struct yaffs_packed_tags2 *pt,
+                     const struct yaffs_ext_tags *t, int tags_ecc);
+void yaffs_unpack_tags2(struct yaffs_dev *dev,
+                       struct yaffs_ext_tags *t, struct yaffs_packed_tags2 *pt,
+                       int tags_ecc);
 
 /* Only the tags part (no ECC for use with inband tags */
-void yaffs_pack_tags2_tags_only(struct yaffs_packed_tags2_tags_only *pt, const struct yaffs_ext_tags *t);
-void yaffs_unpack_tags2_tags_only(struct yaffs_ext_tags *t, struct yaffs_packed_tags2_tags_only *pt);
+void yaffs_pack_tags2_tags_only(struct yaffs_dev *dev,
+                               struct yaffs_packed_tags2_tags_only *pt,
+                               const struct yaffs_ext_tags *t);
+void yaffs_unpack_tags2_tags_only(struct yaffs_dev *dev,
+                                 struct yaffs_ext_tags *t,
+                                 struct yaffs_packed_tags2_tags_only *pt);
 #endif