summaryrefslogtreecommitdiff
path: root/yaffs_nand.c
diff options
context:
space:
mode:
authorcharles <charles>2009-09-09 03:03:01 +0000
committercharles <charles>2009-09-09 03:03:01 +0000
commit3a263f2d5074abcd6129dff4f1bd1a0ab45a04da (patch)
tree8d3e68eaffff28e8e2a0c78ad7c9dd60ac0360a5 /yaffs_nand.c
parentf1c0bdf3f2139433a5510a0a320d53fd2fcb61ed (diff)
Rationalise stats gathering for nand access. Does not instrument mounting.
Diffstat (limited to 'yaffs_nand.c')
-rw-r--r--yaffs_nand.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/yaffs_nand.c b/yaffs_nand.c
index bd815cb..0a76ca0 100644
--- a/yaffs_nand.c
+++ b/yaffs_nand.c
@@ -12,7 +12,7 @@
*/
const char *yaffs_nand_c_version =
- "$Id: yaffs_nand.c,v 1.10 2009-03-06 17:20:54 wookey Exp $";
+ "$Id: yaffs_nand.c,v 1.11 2009-09-09 03:03:01 charles Exp $";
#include "yaffs_nand.h"
#include "yaffs_tagscompat.h"
@@ -29,6 +29,8 @@ int yaffs_ReadChunkWithTagsFromNAND(yaffs_Device *dev, int chunkInNAND,
int realignedChunkInNAND = chunkInNAND - dev->chunkOffset;
+ dev->nPageReads++;
+
/* If there are no tags provided, use local tags to get prioritised gc working */
if (!tags)
tags = &localTags;
@@ -56,6 +58,9 @@ int yaffs_WriteChunkWithTagsToNAND(yaffs_Device *dev,
const __u8 *buffer,
yaffs_ExtendedTags *tags)
{
+
+ dev->nPageWrites++;
+
chunkInNAND -= dev->chunkOffset;
@@ -89,7 +94,7 @@ int yaffs_MarkBlockBad(yaffs_Device *dev, int blockNo)
{
blockNo -= dev->blockOffset;
-;
+
if (dev->markNANDBlockBad)
return dev->markNANDBlockBad(dev, blockNo);
else
@@ -119,8 +124,8 @@ int yaffs_EraseBlockInNAND(struct yaffs_DeviceStruct *dev,
blockInNAND -= dev->blockOffset;
-
dev->nBlockErasures++;
+
result = dev->eraseBlockInNAND(dev, blockInNAND);
return result;