From 964435931296015d8357771666abf26cbcddecaf Mon Sep 17 00:00:00 2001 From: Stephen Tweedie Date: Wed, 18 May 2005 11:47:17 -0400 Subject: [PATCH] --- yaml --- r: 1250 b: refs/heads/master c: 301216244b1e39c4346e56d38b079ca53d528580 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/fs/ext3/super.c | 10 +++++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index b8601f3a5718..2a4c4d78dc5c 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: e72022e13d659bece2fc9cb2dd97afa67047dbca +refs/heads/master: 301216244b1e39c4346e56d38b079ca53d528580 diff --git a/trunk/fs/ext3/super.c b/trunk/fs/ext3/super.c index 545b440a2d2f..981ccb233ef5 100644 --- a/trunk/fs/ext3/super.c +++ b/trunk/fs/ext3/super.c @@ -225,8 +225,16 @@ void __ext3_std_error (struct super_block * sb, const char * function, int errno) { char nbuf[16]; - const char *errstr = ext3_decode_error(sb, errno, nbuf); + const char *errstr; + + /* Special case: if the error is EROFS, and we're not already + * inside a transaction, then there's really no point in logging + * an error. */ + if (errno == -EROFS && journal_current_handle() == NULL && + (sb->s_flags & MS_RDONLY)) + return; + errstr = ext3_decode_error(sb, errno, nbuf); printk (KERN_CRIT "EXT3-fs error (device %s) in %s: %s\n", sb->s_id, function, errstr);