diff options
author | Stefan Behrens <sbehrens@giantdisaster.de> | 2012-07-17 17:02:11 +0200 |
---|---|---|
committer | Chris Mason <chris.mason@fusionio.com> | 2012-07-23 22:28:07 +0200 |
commit | a98cdb85b990765dbe80a215367ae007320bfeea (patch) | |
tree | 47588ab2c46fdaf9f782fadc0c636fc64eeff902 /fs/btrfs/volumes.c | |
parent | Btrfs: remove unwanted printk() for btrfs device I/O stats (diff) | |
download | linux-a98cdb85b990765dbe80a215367ae007320bfeea.tar.xz linux-a98cdb85b990765dbe80a215367ae007320bfeea.zip |
Btrfs: suppress printk() if all device I/O stats are zero
Code is added to suppress the I/O stats printing at mount time if all
statistic values are zero.
Signed-off-by: Stefan Behrens <sbehrens@giantdisaster.de>
Diffstat (limited to 'fs/btrfs/volumes.c')
-rw-r--r-- | fs/btrfs/volumes.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/fs/btrfs/volumes.c b/fs/btrfs/volumes.c index 14436074350f..b8708f994e67 100644 --- a/fs/btrfs/volumes.c +++ b/fs/btrfs/volumes.c @@ -4884,6 +4884,14 @@ void btrfs_dev_stat_print_on_error(struct btrfs_device *dev) static void btrfs_dev_stat_print_on_load(struct btrfs_device *dev) { + int i; + + for (i = 0; i < BTRFS_DEV_STAT_VALUES_MAX; i++) + if (btrfs_dev_stat_read(dev, i) != 0) + break; + if (i == BTRFS_DEV_STAT_VALUES_MAX) + return; /* all values == 0, suppress message */ + printk_in_rcu(KERN_INFO "btrfs: bdev %s errs: wr %u, rd %u, flush %u, corrupt %u, gen %u\n", rcu_str_deref(dev->name), btrfs_dev_stat_read(dev, BTRFS_DEV_STAT_WRITE_ERRS), |