diff options
author | David Howells <dhowells@redhat.com> | 2012-12-05 08:34:48 -0500 |
---|---|---|
committer | David Howells <dhowells@redhat.com> | 2012-12-20 17:10:44 -0500 |
commit | 75bc411388f4aeb9fb0381bd56eb5d67193ed9a1 (patch) | |
tree | 78248c99fe37dd24ee22b421e7716e85e65e2ab3 /fs/fscache | |
parent | c2d35bfe4b508451b75b5b6bc60a08dbdc44f952 (diff) |
FS-Cache: Limit the number of I/O error reports for a cache
Limit the number of I/O error reports for a cache to 1 to prevent massive
amounts of noise. After the first I/O error the cache is taken off line
automatically, so must be restarted to resume caching.
Signed-off-by: David Howells <dhowells@redhat.com>
Diffstat (limited to 'fs/fscache')
-rw-r--r-- | fs/fscache/cache.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/fs/fscache/cache.c b/fs/fscache/cache.c index 6a3c48abd677..b52aed1dca97 100644 --- a/fs/fscache/cache.c +++ b/fs/fscache/cache.c | |||
@@ -314,10 +314,10 @@ EXPORT_SYMBOL(fscache_add_cache); | |||
314 | */ | 314 | */ |
315 | void fscache_io_error(struct fscache_cache *cache) | 315 | void fscache_io_error(struct fscache_cache *cache) |
316 | { | 316 | { |
317 | set_bit(FSCACHE_IOERROR, &cache->flags); | 317 | if (!test_and_set_bit(FSCACHE_IOERROR, &cache->flags)) |
318 | 318 | printk(KERN_ERR "FS-Cache:" | |
319 | printk(KERN_ERR "FS-Cache: Cache %s stopped due to I/O error\n", | 319 | " Cache '%s' stopped due to I/O error\n", |
320 | cache->ops->name); | 320 | cache->ops->name); |
321 | } | 321 | } |
322 | EXPORT_SYMBOL(fscache_io_error); | 322 | EXPORT_SYMBOL(fscache_io_error); |
323 | 323 | ||