diff --git a/[refs] b/[refs] index 732c0ed4a6d5..493b138de7d8 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: c2d35bfe4b508451b75b5b6bc60a08dbdc44f952 +refs/heads/master: 75bc411388f4aeb9fb0381bd56eb5d67193ed9a1 diff --git a/trunk/fs/fscache/cache.c b/trunk/fs/fscache/cache.c index 6a3c48abd677..b52aed1dca97 100644 --- a/trunk/fs/fscache/cache.c +++ b/trunk/fs/fscache/cache.c @@ -314,10 +314,10 @@ EXPORT_SYMBOL(fscache_add_cache); */ void fscache_io_error(struct fscache_cache *cache) { - set_bit(FSCACHE_IOERROR, &cache->flags); - - printk(KERN_ERR "FS-Cache: Cache %s stopped due to I/O error\n", - cache->ops->name); + if (!test_and_set_bit(FSCACHE_IOERROR, &cache->flags)) + printk(KERN_ERR "FS-Cache:" + " Cache '%s' stopped due to I/O error\n", + cache->ops->name); } EXPORT_SYMBOL(fscache_io_error);