From patchwork Mon Mar 4 14:00:00 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zheng Liu X-Patchwork-Id: 224722 Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 160882C031E for ; Tue, 5 Mar 2013 00:44:58 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756459Ab3CDNo5 (ORCPT ); Mon, 4 Mar 2013 08:44:57 -0500 Received: from mail-da0-f44.google.com ([209.85.210.44]:44404 "EHLO mail-da0-f44.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756110Ab3CDNo4 (ORCPT ); Mon, 4 Mar 2013 08:44:56 -0500 Received: by mail-da0-f44.google.com with SMTP id z20so2565443dae.3 for ; Mon, 04 Mar 2013 05:44:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=x-received:date:from:to:cc:subject:message-id:mail-followup-to :references:mime-version:content-type:content-disposition :in-reply-to:user-agent; bh=ctq+2jZtyDQvFC3fSWdtQdaJvTpq7pB/jw+A+VibX8I=; b=AnhyIcYQJ05F4vdZXj47J59z53+J4BhbXTe1MCzGNWRezstyghZ2HAdBFJPByi+M4B sEoIVief8FCB3yYDksmE45ehPNSw+dGtdJuMormMlC+2V7OrdlSO4D9v0h2qPDJOfvwq VksD1PUzDTd5fGhJvLpk+sZxW4cZSaWFV19nxwFLN6DUFskydoujgzvZbsgjMER8U3GR vDm+434WUlZ9EVsCnztpIu4oJXml4z7P/ZUmcj8mgvi57yJT56/JJ6yiwiFaMZmUyHwF O0iqNHzZuY0eID3j21V+rMme9QrauWYmgpSkCWXorvgvz0PucBypOo4dLAx9nSdG+VG+ UrtQ== X-Received: by 10.68.31.230 with SMTP id d6mr28392401pbi.41.1362404696136; Mon, 04 Mar 2013 05:44:56 -0800 (PST) Received: from gmail.com ([182.92.247.2]) by mx.google.com with ESMTPS id t6sm23953425paz.11.2013.03.04.05.44.49 (version=TLSv1 cipher=RC4-SHA bits=128/128); Mon, 04 Mar 2013 05:44:55 -0800 (PST) Date: Mon, 4 Mar 2013 22:00:00 +0800 From: Zheng Liu To: Dmitry Monakhov Cc: linux-ext4@vger.kernel.org, tytso@mit.edu, jack@suse.cz, wenqing.lz@taobao.com Subject: Re: [PATCH 3/5] ext4: add warning to ext4_convert_unwritten_extents_endio Message-ID: <20130304140000.GA11871@gmail.com> Mail-Followup-To: Dmitry Monakhov , linux-ext4@vger.kernel.org, tytso@mit.edu, jack@suse.cz, wenqing.lz@taobao.com References: <1361808463-25471-1-git-send-email-dmonakhov@openvz.org> <1361808463-25471-3-git-send-email-dmonakhov@openvz.org> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <1361808463-25471-3-git-send-email-dmonakhov@openvz.org> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-ext4-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-ext4@vger.kernel.org On Mon, Feb 25, 2013 at 08:07:41PM +0400, Dmitry Monakhov wrote: > Splitting extents inside endio is bad thing, but unfortunetly it is still > possible. In fact we are pretty close to the moment when all related > issues will be fixed. Let's warn developer if it still the case. > > Signed-off-by: Dmitry Monakhov > --- > fs/ext4/extents.c | 13 ++++++++++++- > 1 files changed, 12 insertions(+), 1 deletions(-) > > diff --git a/fs/ext4/extents.c b/fs/ext4/extents.c > index 1d37f2d..78c2a91 100644 > --- a/fs/ext4/extents.c > +++ b/fs/ext4/extents.c > @@ -3386,8 +3386,19 @@ static int ext4_convert_unwritten_extents_endio(handle_t *handle, > "block %llu, max_blocks %u\n", inode->i_ino, > (unsigned long long)ee_block, ee_len); > > - /* If extent is larger than requested then split is required */ > + /* If extent is larger than requested it is a clear sign that we still > + * have some extent state machine issues left. So extent_split is still > + * required. > + * TODO: Once all related issues will be fixed this situation should be > + * illegal. > + */ > if (ee_block != map->m_lblk || ee_len > map->m_len) { > +#ifdef EXT4_DEBUG > + ext4_warning("Inode (%ld) finished: extent logical block %llu," A parameter is missing. (unsigned long long)map->m_lblk, map->m_len); Regards, - Zheng > + " len %u; IO logical block %llu, len %u\n", > + inode->i_ino, (unsigned long long)ee_block, ee_len, > + (unsigned long long)map->m_lblk, map->m_len); > +#endif > err = ext4_split_unwritten_extents(handle, inode, map, path, > EXT4_GET_BLOCKS_CONVERT); > if (err < 0) > -- > 1.7.1 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-ext4" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html --- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/fs/ext4/extents.c b/fs/ext4/extents.c index 25c86aa..daf8bb9 100644 --- a/fs/ext4/extents.c +++ b/fs/ext4/extents.c @@ -3395,7 +3395,8 @@ static int ext4_convert_unwritten_extents_endio(handle_t *handle, */ if (ee_block != map->m_lblk || ee_len > map->m_len) { #ifdef EXT4_DEBUG - ext4_warning("Inode (%ld) finished: extent logical block %llu," + ext4_warning(inode->i_sb, + "Inode (%ld) finished: extent logical block %llu," " len %u; IO logical block %llu, len %u\n", inode->i_ino, (unsigned long long)ee_block, ee_len,