changeset 48:1f750679251d

Add stuff for object shadowing and fix a constness
author charles
date Sun, 31 Jul 2005 07:52:40 +0100
parents 216765645976
children 4b0d30124bf0
files yaffs_guts.h
diffstat 1 files changed, 7 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/yaffs_guts.h
+++ b/yaffs_guts.h
@@ -183,6 +183,7 @@ typedef struct
 	unsigned extraHeaderInfoAvailable; // There is extra info available if this is not zero
 	unsigned extraParentObjectId;	   // The parent object
 	unsigned extraIsShrinkHeader;	   // Is it a shrink header?
+	unsigned extraShadows;		   // Does this shadow another object?
 	
 	yaffs_ObjectType extraObjectType;  // What object type?
 
@@ -310,12 +311,14 @@ typedef struct
 	__u32 win_ctime[2];
 	__u32 win_atime[2];
 	__u32 win_mtime[2];
-	__u32 roomToGrow[5];
+	__u32 roomToGrow[4];
 #else
-	__u32 roomToGrow[11];
+	__u32 roomToGrow[10];
 #endif
 
-	// isShrink applies to bject headers written when we shrink the file (ie resize)
+	int shadowsObject; // This object header shadows the specified object if not > 0
+
+	// isShrink applies to object headers written when we shrink the file (ie resize)
 	__u32 isShrink;
 	
 } yaffs_ObjectHeader;
@@ -537,7 +540,7 @@ struct yaffs_DeviceStruct
 	int (*initialiseNAND)(struct yaffs_DeviceStruct *dev);
 
 #ifdef CONFIG_YAFFS_YAFFS2
-	int (*writeChunkWithTagsToNAND)(struct yaffs_DeviceStruct *dev,int chunkInNAND, const __u8 *data, yaffs_ExtendedTags *tags);
+	int (*writeChunkWithTagsToNAND)(struct yaffs_DeviceStruct *dev,int chunkInNAND, const __u8 *data, const yaffs_ExtendedTags *tags);
 	int (*readChunkWithTagsFromNAND)(struct yaffs_DeviceStruct *dev,int chunkInNAND, __u8 *data, yaffs_ExtendedTags *tags);
 	int (*markNANDBlockBad)(struct yaffs_DeviceStruct *dev, int blockNo);
 	int (*queryNANDBlock)(struct yaffs_DeviceStruct *dev, int blockNo, yaffs_BlockState *state, int *sequenceNumber);