All of lore.kernel.org
 help / color / mirror / Atom feed
From: Zheng Liu <gnehzuil.liu@gmail.com>
To: Dmitry Monakhov <dmonakhov@openvz.org>
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
Date: Mon, 4 Mar 2013 22:00:00 +0800	[thread overview]
Message-ID: <20130304140000.GA11871@gmail.com> (raw)
In-Reply-To: <1361808463-25471-3-git-send-email-dmonakhov@openvz.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 <dmonakhov@openvz.org>
> ---
>  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.

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,
                             (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

  parent reply	other threads:[~2013-03-04 13:44 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-02-25 16:07 [PATCH 1/5] ext4: ext4_split_extent shoult take care about extent zeroout v3 Dmitry Monakhov
2013-02-25 16:07 ` [PATCH 2/5] ext4: disable merging of uninitialized extents Dmitry Monakhov
2013-02-25 18:09   ` Jan Kara
2013-03-04 14:26   ` Zheng Liu
2013-02-25 16:07 ` [PATCH 3/5] ext4: add warning to ext4_convert_unwritten_extents_endio Dmitry Monakhov
2013-02-25 18:08   ` Jan Kara
2013-03-04 14:00   ` Zheng Liu [this message]
2013-02-25 16:07 ` [PATCH 4/5] ext4: remove unnecessary wait for extent conversion in ext4_fallocate() Dmitry Monakhov
2013-02-25 16:07 ` [PATCH 5/5] ext4: invalidate exntent-status-tree during extent_migration Dmitry Monakhov
2013-02-25 16:29   ` Dmitry Monakhov
2013-02-25 17:04     ` Zheng Liu
2013-02-26 14:23     ` [PATCH] ext4: fix wrong m_len value after unwritten extent conversion (Re: [PATCH 5/5] ext4: invalidate...) Zheng Liu
2013-02-26 15:43       ` Dmitry Monakhov
2013-02-25 18:06   ` [PATCH 5/5] ext4: invalidate exntent-status-tree during extent_migration Jan Kara
2013-02-25 18:33 ` [PATCH 1/5] ext4: ext4_split_extent shoult take care about extent zeroout v3 Jan Kara
2013-03-04  5:58 ` Theodore Ts'o
2013-03-04  6:37   ` Zheng Liu

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=20130304140000.GA11871@gmail.com \
    --to=gnehzuil.liu@gmail.com \
    --cc=dmonakhov@openvz.org \
    --cc=jack@suse.cz \
    --cc=linux-ext4@vger.kernel.org \
    --cc=tytso@mit.edu \
    --cc=wenqing.lz@taobao.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.