All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dmitry Monakhov <dmonakhov@openvz.org>
To: linux-ext4@vger.kernel.org
Subject: WARNING: at fs/ext4/extents.c:4434 ext4_convert_unwritten_extent
Date: Fri, 28 Sep 2012 21:23:30 +0400	[thread overview]
Message-ID: <87ipay9i3x.fsf@openvz.org> (raw)

I've got this on 286'th MOUNT_OPTIONS=-onoload

We assumes that we are protected from ENOSPC during
ext4_convert_unwritten_extents() by passing EXT4_GET_BLOCKS_PRE_IO
on submitting AIO which split extent via ext4_split_unwritten_extents()
But this is not sufficient:


submit_aio                              Fallocate worker
 ->ext4_map_blocks(lblk, len)
   ->ext4_ext_map_blocks( )
   file: U1---------------------U2|_____EOF
     ->ext4_split_unwritten_extents
   file: U1------U1|U2---len----U2|_____EOF
              
                                       ->ext4_fallocate(lblk, len+len2)
                                          ->ext4_map_blocks()
                                             ->ext4_ext_map_blocks()
                                                         U2: Grows
                                           file: U1-------U1|U2----len+len2--U2|__EOF
  worker_tread
   ->ext4_end_io_work
     ->ext4_convert_unwritten_extents
       ->ext4_ext_handle_uninitialized_extents
            ## Discover that new split required in order to get:
            file: U1-------U1|U2----len----U2|U3--len2--U2__EOF
            This procedure fail with ENOSPC
       

             reply	other threads:[~2012-09-28 17:23 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-09-28 17:23 Dmitry Monakhov [this message]
2012-09-29 15:07 ` WARNING: at fs/ext4/extents.c:4434 ext4_convert_unwritten_extent Dmitry Monakhov

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=87ipay9i3x.fsf@openvz.org \
    --to=dmonakhov@openvz.org \
    --cc=linux-ext4@vger.kernel.org \
    /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.