Runtime disbale of lazy loading. Fix problem where resize was breading rename shadowing
[yaffs2.git] / yaffs_guts.h
index a3b110291d3832c4b73a83069e9e7d3d1fc7b92f..3385bd4c6a8b3c86b6d5ca56afd53f49de9e78bf 100644 (file)
@@ -424,6 +424,7 @@ struct yaffs_ObjectStruct {
                                 * until the inode is released.
                                 */
        __u8 beingCreated:1;    /* This object is still being created so skip some checks. */
                                 * until the inode is released.
                                 */
        __u8 beingCreated:1;    /* This object is still being created so skip some checks. */
+       __u8 isShadowed:1;      /* This object is shadowed on the way to being renamed. */
 
        __u8 serial;            /* serial number of chunk in NAND. Cached here */
        __u16 sum;              /* sum of the name to speed searching */
 
        __u8 serial;            /* serial number of chunk in NAND. Cached here */
        __u16 sum;              /* sum of the name to speed searching */
@@ -557,7 +558,10 @@ struct yaffs_DeviceStruct {
 
        int useHeaderFileSize;  /* Flag to determine if we should use file sizes from the header */
 
 
        int useHeaderFileSize;  /* Flag to determine if we should use file sizes from the header */
 
-       int useNANDECC;         /* Flag to decide whether or not to use NANDECC */
+       int useNANDECC;         /* Flag to decide whether or not to use NANDECC on data (yaffs1) */
+       int noTagsECC;          /* Flag to decide whether or not to do ECC on packed tags (yaffs2) */ 
+       
+       int disableLazyLoad;    /* Disable lazy loading on this device */
 
        void *genericDevice;    /* Pointer to device context
                                 * On an mtd this holds the mtd pointer.
 
        void *genericDevice;    /* Pointer to device context
                                 * On an mtd this holds the mtd pointer.
@@ -840,7 +844,8 @@ int yaffs_ResizeFile(yaffs_Object *obj, loff_t newSize);
 
 yaffs_Object *yaffs_MknodFile(yaffs_Object *parent, const YCHAR *name,
                                __u32 mode, __u32 uid, __u32 gid);
 
 yaffs_Object *yaffs_MknodFile(yaffs_Object *parent, const YCHAR *name,
                                __u32 mode, __u32 uid, __u32 gid);
-int yaffs_FlushFile(yaffs_Object *obj, int updateTime);
+
+int yaffs_FlushFile(yaffs_Object *obj, int updateTime, int dataSync);
 
 /* Flushing and checkpointing */
 void yaffs_FlushEntireDeviceCache(yaffs_Device *dev);
 
 /* Flushing and checkpointing */
 void yaffs_FlushEntireDeviceCache(yaffs_Device *dev);