From mboxrd@z Thu Jan 1 00:00:00 1970 From: bugzilla-daemon@bugzilla.kernel.org Subject: [Bug 51571] Assertion of j_running_transaction on jbd2_journal_flush() Date: Wed, 12 Dec 2012 00:01:04 +0000 (UTC) Message-ID: <20121212000104.75D4D11F993@bugzilla.kernel.org> References: Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" To: linux-ext4@vger.kernel.org Return-path: Received: from mail.kernel.org ([198.145.19.201]:42476 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754344Ab2LLABG (ORCPT ); Tue, 11 Dec 2012 19:01:06 -0500 Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 5DE64202AC for ; Wed, 12 Dec 2012 00:01:05 +0000 (UTC) Received: from bugzilla.kernel.org (bugzilla.kernel.org [198.145.19.217]) by mail.kernel.org (Postfix) with ESMTP id 7AF9E2028E for ; Wed, 12 Dec 2012 00:01:04 +0000 (UTC) In-Reply-To: Sender: linux-ext4-owner@vger.kernel.org List-ID: https://bugzilla.kernel.org/show_bug.cgi?id=51571 Jan Kara changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jack@suse.cz --- Comment #1 from Jan Kara 2012-12-12 00:01:04 --- Thanks for detailed report! I presume you have a crash dump when you could provide such details? Can you have a look at what journal->j_running_transaction->t_handle_count is? I can see the transaction has been started some 14 ms ago. That's not too long but still plenty in terms of CPU time. What I think is happening is: Process A Process B start_this_handle(). if (journal->j_barrier_count) # false if (!journal->j_running_transaction) { #true read_unlock(&journal->j_state_lock); jbd2_journal_lock_updates() jbd2_journal_flush() write_lock(&journal->j_state_lock); if (journal->j_running_transaction) { #false ... wait for committing trans ... write_unlock(&journal->j_state_lock); ... write_lock(&journal->j_state_lock); jbd2_get_transaction(journal, new_transaction); # Sets j_running_transaction write_unlock(&journal->j_state_lock); goto repeat; # eventually blocks on j_barrier_count > 0 I will attach here a patch that should fix this... -- Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching the assignee of the bug.