summaryrefslogtreecommitdiff
path: root/cpukit
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2015-11-02 08:20:11 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2015-11-02 08:21:49 +0100
commit08a807b0ad444bf0e46af5093642b024462632a1 (patch)
tree245bba883b77ae05ead42a390b2ddf7251cc0402 /cpukit
parent09d4f629b201d225f3e117be4c6449c67c7f08b3 (diff)
libblock: Print block sizes and count
Diffstat (limited to 'cpukit')
-rw-r--r--cpukit/libblock/include/rtems/blkdev.h3
-rw-r--r--cpukit/libblock/src/blkdev-blkstats.c10
-rw-r--r--cpukit/libblock/src/blkdev-print-stats.c9
3 files changed, 22 insertions, 0 deletions
diff --git a/cpukit/libblock/include/rtems/blkdev.h b/cpukit/libblock/include/rtems/blkdev.h
index d17cadc796..81e2dfa0da 100644
--- a/cpukit/libblock/include/rtems/blkdev.h
+++ b/cpukit/libblock/include/rtems/blkdev.h
@@ -345,6 +345,9 @@ rtems_status_code rtems_blkdev_create_partition(
*/
void rtems_blkdev_print_stats(
const rtems_blkdev_stats *stats,
+ uint32_t media_block_size,
+ uint32_t media_block_count,
+ uint32_t block_size,
rtems_printk_plugin_t print,
void *print_arg
);
diff --git a/cpukit/libblock/src/blkdev-blkstats.c b/cpukit/libblock/src/blkdev-blkstats.c
index 40f24289cf..1e773cf8c2 100644
--- a/cpukit/libblock/src/blkdev-blkstats.c
+++ b/cpukit/libblock/src/blkdev-blkstats.c
@@ -48,12 +48,22 @@ void rtems_blkstats(FILE *output, const char *device, bool reset)
fprintf(output, "error: reset stats: %s\n", strerror(errno));
}
} else {
+ uint32_t media_block_size = 0;
+ uint32_t media_block_count = 0;
+ uint32_t block_size = 0;
rtems_blkdev_stats stats;
+ rtems_disk_fd_get_media_block_size(fd, &media_block_size);
+ rtems_disk_fd_get_block_count(fd, &media_block_count);
+ rtems_disk_fd_get_block_size(fd, &block_size);
+
rv = rtems_disk_fd_get_device_stats(fd, &stats);
if (rv == 0) {
rtems_blkdev_print_stats(
&stats,
+ media_block_size,
+ media_block_count,
+ block_size,
(rtems_printk_plugin_t) fprintf,
output
);
diff --git a/cpukit/libblock/src/blkdev-print-stats.c b/cpukit/libblock/src/blkdev-print-stats.c
index 044694706b..edeee906fa 100644
--- a/cpukit/libblock/src/blkdev-print-stats.c
+++ b/cpukit/libblock/src/blkdev-print-stats.c
@@ -29,6 +29,9 @@
void rtems_blkdev_print_stats(
const rtems_blkdev_stats *stats,
+ uint32_t media_block_size,
+ uint32_t media_block_count,
+ uint32_t block_size,
rtems_printk_plugin_t print,
void *print_arg
)
@@ -38,6 +41,9 @@ void rtems_blkdev_print_stats(
"-------------------------------------------------------------------------------\n"
" DEVICE STATISTICS\n"
"----------------------+--------------------------------------------------------\n"
+ " MEDIA BLOCK SIZE | %" PRIu32 "\n"
+ " MEDIA BLOCK COUNT | %" PRIu32 "\n"
+ " BLOCK SIZE | %" PRIu32 "\n"
" READ HITS | %" PRIu32 "\n"
" READ MISSES | %" PRIu32 "\n"
" READ AHEAD TRANSFERS | %" PRIu32 "\n"
@@ -47,6 +53,9 @@ void rtems_blkdev_print_stats(
" WRITE BLOCKS | %" PRIu32 "\n"
" WRITE ERRORS | %" PRIu32 "\n"
"----------------------+--------------------------------------------------------\n",
+ media_block_size,
+ media_block_count,
+ block_size,
stats->read_hits,
stats->read_misses,
stats->read_ahead_transfers,