yaffs Keep unused linux alloactor code up to date
[yaffs2.git] / yaffs_yaffs2.c
index faba0280fbc9eb1f26e56bae8a29c1a8e253a233..ab175b9e24d3fbae9aa0afaf74e894c3670c49dd 100644 (file)
 
 #define YAFFS_SMALL_HOLE_THRESHOLD 4
 
-void yaffs2_VerifyBlock(yaffs_Device *dev, yaffs_BlockInfo *bi, int n)
-{
-       if (!dev->param.isYaffs2)
-               return;
-
-       if((bi->blockState == YAFFS_BLOCK_STATE_ALLOCATING || bi->blockState == YAFFS_BLOCK_STATE_FULL) &&
-          (bi->sequenceNumber < YAFFS_LOWEST_SEQUENCE_NUMBER || bi->sequenceNumber > 10000000))
-               T(YAFFS_TRACE_VERIFY, (TSTR("Block %d has suspect sequence number of %d"TENDSTR),
-               n, bi->sequenceNumber));
-}
 
 /*
  * Oldest Dirty Sequence Number handling.
@@ -1140,6 +1130,15 @@ int yaffs2_ScanBackwards(yaffs_Device *dev)
 
                                  dev->nFreeChunks++;
 
+                       } else if (tags.objectId > YAFFS_MAX_OBJECT_ID ||
+                               tags.chunkId > YAFFS_MAX_CHUNK_ID ||
+                               (tags.chunkId > 0 && tags.byteCount > dev->nDataBytesPerChunk)) {
+                               T(YAFFS_TRACE_SCAN,
+                                 (TSTR("Chunk (%d:%d) with bad tags:obj = %d, chunkId = %d, byteCount = %d, ignored"TENDSTR),
+                                 blk, c,tags.objectId, tags.chunkId, tags.byteCount));
+
+                                 dev->nFreeChunks++;
+
                        } else if (tags.chunkId > 0) {
                                /* chunkId > 0 so it is a data chunk... */
                                unsigned int endpos;
@@ -1374,7 +1373,7 @@ int yaffs2_ScanBackwards(yaffs_Device *dev)
                                                        
 
 
-                                               yaffs_SetObjectName(in, oh->name);
+                                               yaffs_SetObjectNameFromOH(in, oh);
                                                parent =
                                                    yaffs_FindOrCreateObjectByNumber
                                                        (dev, oh->parentObjectId,