public inbox for linux-s390@vger.kernel.org
 help / color / mirror / Atom feed
From: Dmitry Monakhov <dmonakhov@openvz.org>
To: Christian Kujau <lists@nerdbynature.de>,
	Zheng Liu <gnehzuil.liu@gmail.com>
Cc: CAI Qian <caiqian@redhat.com>, Theodore Ts'o <tytso@mit.edu>,
	LKML <linux-kernel@vger.kernel.org>,
	linux-s390 <linux-s390@vger.kernel.org>,
	Steve Best <sbest@redhat.com>,
	linux-ext4@vger.kernel.org
Subject: Re: s390x: kernel BUG at fs/ext4/inode.c:1591! (powerpc too!)
Date: Tue, 02 Apr 2013 23:49:32 +0400	[thread overview]
Message-ID: <87mwtgvhkj.fsf@openvz.org> (raw)
In-Reply-To: <alpine.DEB.2.10.1304021202100.13746@trent.utfs.org>

[-- Attachment #1: Type: text/plain, Size: 891 bytes --]

On Tue, 2 Apr 2013 12:07:37 -0700 (PDT), Christian Kujau <lists@nerdbynature.de> wrote:
> On Tue, 2 Apr 2013 at 20:33, Zheng Liu wrote:
> > Could you please revert your tree to this commit (3a225670), and try
> > again. I want to make sure that the regression won't be fixed until now
> > or it is introduced after this commit.
> 
> I have git-revert'ed this commit and the same BUG_ON was triggered again. 
> I could not bring "fsstress" to trigger this but resuming this 4.3 GB 
> Fedora DVD image via bittorrent made the machine crash after a couple of 
> minutes.
> 
> Sadly the only message netconsole is able to catch is this single line 
> from the subject above, but I'll try to apply the proposed patches[0] and 
> see if it helps anything.
Ok if netconsole can't log in case of BUG_ON then we just skip panic :)
Please use following patch instead of enable_ES_AGGRESSIVE_TEST.diff

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-enable-ES_AGGRESSIVE_TEST-V2.patch --]
[-- Type: text/x-patch, Size: 2088 bytes --]

From e802d032225a74156f8256467aa64535369ae45c Mon Sep 17 00:00:00 2001
From: Dmitry Monakhov <dmonakhov@openvz.org>
Date: Tue, 2 Apr 2013 23:33:16 +0400
Subject: [PATCH] enable ES_AGGRESSIVE_TEST V2


Signed-off-by: Dmitry Monakhov <dmonakhov@openvz.org>
---
 fs/ext4/extents_status.h |    2 +-
 fs/ext4/inode.c          |   17 +++++++++++++++--
 2 files changed, 16 insertions(+), 3 deletions(-)

diff --git a/fs/ext4/extents_status.h b/fs/ext4/extents_status.h
index d8e2d4d..70233a6 100644
--- a/fs/ext4/extents_status.h
+++ b/fs/ext4/extents_status.h
@@ -24,7 +24,7 @@
  * With ES_AGGRESSIVE_TEST defined, the result of es caching will be
  * checked with old map_block's result.
  */
-#define ES_AGGRESSIVE_TEST__
+#define ES_AGGRESSIVE_TEST
 
 /*
  * These flags live in the high bits of extent_status.es_pblk
diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c
index 840a23e..7712aff 100644
--- a/fs/ext4/inode.c
+++ b/fs/ext4/inode.c
@@ -1546,7 +1546,18 @@ static int mpage_da_submit_io(struct mpage_da_data *mpd,
 					}
 					if (buffer_unwritten(bh) ||
 					    buffer_mapped(bh))
-						BUG_ON(bh->b_blocknr != pblock);
+						if (bh->b_blocknr != pblock) {
+							printk(KERN_ERR "mpage_da_submit_io failed"
+							       " block=%llu != b_blocknr=%llu\n",
+							       (unsigned long long)pblock,
+							       (unsigned long long)bh->b_blocknr);
+							printk(KERN_ERR "ino:%ld lbkl:%lu, "
+							       "b_state=0x%08lx, b_size=%zu\n",
+							       inode->i_ino, cur_logical,
+							       bh->b_state, bh->b_size);
+							WARN_ON(1);
+							goto skip_page;
+						}
 					if (map->m_flags & EXT4_MAP_UNINIT)
 						set_buffer_uninit(bh);
 					clear_buffer_unwritten(bh);
@@ -1556,8 +1567,10 @@ static int mpage_da_submit_io(struct mpage_da_data *mpd,
 				 * skip page if block allocation undone and
 				 * block is dirty
 				 */
-				if (ext4_bh_delay_or_unwritten(NULL, bh))
+				if (ext4_bh_delay_or_unwritten(NULL, bh)) {
+				skip_page:
 					skip_page = 1;
+				}
 				bh = bh->b_this_page;
 				block_start += bh->b_size;
 				cur_logical++;
-- 
1.7.1


[-- Attachment #3: Type: text/plain, Size: 523 bytes --]

So once you hit the bug it will print a lot of warnings and try to
pretend what nothing is happens.

So my predictions is follows:
1) with enable_ES_AGGRESSIVE_TEST-V2.diff patch you will see a lot of
warnings

2) with enable_ES_AGGRESSIVE_TEST-V2.diff and
   http://nerdbynature.de/bits/3.9.0-rc4/ext4/disable-es_lookup_extent.patch
 
   Issue probably will go away (will be hidden)

> 
> Thanks,
> Christian.
> 
> [0] http://nerdbynature.de/bits/3.9.0-rc4/ext4/
> -- 
> BOFH excuse #344:
> 
> Network failure -  call NBC

  parent reply	other threads:[~2013-04-02 19:49 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <863434221.7624846.1364452822093.JavaMail.root@redhat.com>
2013-03-28  6:40 ` s390x: kernel BUG at fs/ext4/inode.c:1591! CAI Qian
2013-03-28  9:44   ` CAI Qian
2013-03-28 12:05   ` Theodore Ts'o
2013-03-28 14:56     ` Dmitry Monakhov
2013-03-29  8:53       ` CAI Qian
2013-03-29 10:08         ` Dmitry Monakhov
2013-03-29  9:27     ` CAI Qian
2013-04-01  6:07       ` Dmitry Monakhov
2013-04-01  6:30         ` CAI Qian
2013-04-01  6:56           ` Dmitry Monakhov
2013-04-02  4:06             ` bisected! (WAS Re: s390x: kernel BUG at fs/ext4/inode.c:1591!) CAI Qian
     [not found]               ` <alpine.DEB.2.10.1304012249440.5874@trent.utfs.org>
2013-04-02  9:47                 ` s390x: kernel BUG at fs/ext4/inode.c:1591! (powerpc too!) Dmitry Monakhov
2013-04-02 12:33                   ` Zheng Liu
     [not found]                     ` <alpine.DEB.2.10.1304021202100.13746@trent.utfs.org>
2013-04-02 19:49                       ` Dmitry Monakhov [this message]
     [not found]                   ` <alpine.DEB.2.10.1304020955280.13746@trent.utfs.org>
2013-04-02 17:19                     ` Dmitry Monakhov
     [not found]                   ` <alpine.DEB.2.10.1304021430480.13746@trent.utfs.org>
2013-04-02 22:05                     ` Dmitry Monakhov
     [not found]                       ` <alpine.DEB.2.10.1304021611020.13746@trent.utfs.org>
2013-04-03  8:52                         ` Dmitry Monakhov
2013-04-03  9:53                           ` Dmitry Monakhov
2013-04-03 10:22                             ` Zheng Liu
2013-04-03 12:20                               ` [PATCH] ext4: fix a big-endian bug when an extent is zeroed out Theodore Ts'o
2013-04-03 12:29                                 ` Dmitry Monakhov
2013-04-03 14:34                                 ` Eric Whitney
2013-04-03 14:41                                   ` Theodore Ts'o
2013-04-03 15:23                                     ` Florian Fainelli
2013-04-09  3:05                                     ` CAI Qian
2013-04-20 15:19                                       ` Theodore Ts'o
2013-04-22 10:04                                         ` Christian Borntraeger
2013-04-03 11:02                             ` s390x: kernel BUG at fs/ext4/inode.c:1591! (powerpc too!) Dmitry Monakhov
     [not found]                               ` <alpine.DEB.2.10.1304030935230.13746@trent.utfs.org>
2013-04-03 16:50                                 ` Dmitry Monakhov
2013-04-03 16:52                                 ` Zheng Liu
2013-04-02 10:01               ` bisected! (WAS Re: s390x: kernel BUG at fs/ext4/inode.c:1591!) Dmitry Monakhov
     [not found]                 ` <876098945.1097253.1364961617725.JavaMail.root@redhat.com>
2013-04-03  7:14                   ` CAI Qian
2013-04-03  7:51                     ` Dmitry Monakhov
2013-04-03  8:09                   ` Lukáš Czerner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87mwtgvhkj.fsf@openvz.org \
    --to=dmonakhov@openvz.org \
    --cc=caiqian@redhat.com \
    --cc=gnehzuil.liu@gmail.com \
    --cc=linux-ext4@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-s390@vger.kernel.org \
    --cc=lists@nerdbynature.de \
    --cc=sbest@redhat.com \
    --cc=tytso@mit.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox