summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgkostka <kostka.grzegorz@gmail.com>2015-12-09 12:44:25 +0100
committergkostka <kostka.grzegorz@gmail.com>2015-12-09 12:44:25 +0100
commit183e464de184a73d18ca6d8833f87f8e86471b07 (patch)
treea6a68f356d4ef0691aced8c2bab0d285fcb3c37c
parent4b53a65e1ad2d404253b641fd857f533203fa519 (diff)
ext4_blockdev: move bread/bwrite counters to ext4_blockdev_iface
-rw-r--r--fs_test/common/test_lwext4.c4
-rw-r--r--lwext4/ext4_blockdev.c4
-rw-r--r--lwext4/ext4_blockdev.h12
3 files changed, 10 insertions, 10 deletions
diff --git a/fs_test/common/test_lwext4.c b/fs_test/common/test_lwext4.c
index e816e98..c9693f4 100644
--- a/fs_test/common/test_lwext4.c
+++ b/fs_test/common/test_lwext4.c
@@ -127,8 +127,8 @@ void test_lwext4_block_stats(void)
printf("********************\n");
printf("ext4 blockdev stats\n");
- printf("bdev->bread_ctr = %" PRIu32 "\n", bd->bread_ctr);
- printf("bdev->bwrite_ctr = %" PRIu32 "\n", bd->bwrite_ctr);
+ printf("bdev->bread_ctr = %" PRIu32 "\n", bd->bdif->bread_ctr);
+ printf("bdev->bwrite_ctr = %" PRIu32 "\n", bd->bdif->bwrite_ctr);
printf("bcache->ref_blocks = %" PRIu32 "\n", bc->ref_blocks);
printf("bcache->max_ref_blocks = %" PRIu32 "\n", bc->max_ref_blocks);
diff --git a/lwext4/ext4_blockdev.c b/lwext4/ext4_blockdev.c
index cc209dd..4bc327d 100644
--- a/lwext4/ext4_blockdev.c
+++ b/lwext4/ext4_blockdev.c
@@ -65,6 +65,7 @@ static int ext4_bdif_bread(struct ext4_blockdev *bdev, void *buf,
{
ext4_bdif_lock(bdev);
int r = bdev->bdif->bread(bdev, buf, blk_id, blk_cnt);
+ bdev->bdif->bread_ctr++;
ext4_bdif_unlock(bdev);
return r;
}
@@ -74,6 +75,7 @@ static int ext4_bdif_bwrite(struct ext4_blockdev *bdev, const void *buf,
{
ext4_bdif_lock(bdev);
int r = bdev->bdif->bwrite(bdev, buf, blk_id, blk_cnt);
+ bdev->bdif->bwrite_ctr++;
ext4_bdif_unlock(bdev);
return r;
}
@@ -259,7 +261,6 @@ int ext4_blocks_get_direct(struct ext4_blockdev *bdev, void *buf, uint64_t lba,
pba = (lba * bdev->lg_bsize + bdev->part_offset) / bdev->bdif->ph_bsize;
pb_cnt = bdev->lg_bsize / bdev->bdif->ph_bsize;
- bdev->bread_ctr++;
return ext4_bdif_bread(bdev, buf, pba, pb_cnt * cnt);
}
@@ -274,7 +275,6 @@ int ext4_blocks_set_direct(struct ext4_blockdev *bdev, const void *buf,
pba = (lba * bdev->lg_bsize + bdev->part_offset) / bdev->bdif->ph_bsize;
pb_cnt = bdev->lg_bsize / bdev->bdif->ph_bsize;
- bdev->bwrite_ctr++;
return ext4_bdif_bwrite(bdev, buf, pba, pb_cnt * cnt);
}
diff --git a/lwext4/ext4_blockdev.h b/lwext4/ext4_blockdev.h
index 482a057..f49fb76 100644
--- a/lwext4/ext4_blockdev.h
+++ b/lwext4/ext4_blockdev.h
@@ -92,6 +92,12 @@ struct ext4_blockdev_iface {
/**@brief Reference counter to block device interface*/
uint32_t ph_refctr;
+
+ /**@brief Physical read counter*/
+ uint32_t bread_ctr;
+
+ /**@brief Physical write counter*/
+ uint32_t bwrite_ctr;
};
/**@brief Definition of the simple block device.*/
@@ -116,12 +122,6 @@ struct ext4_blockdev {
/**@brief Cache write back mode reference counter*/
uint32_t cache_write_back;
-
- /**@brief Physical read counter*/
- uint32_t bread_ctr;
-
- /**@brief Physical write counter*/
- uint32_t bwrite_ctr;
};
/**@brief Static initialization of the block device.*/