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 4/7] ext4: fsync should wait for DIO writers
Date: Thu, 13 Sep 2012 20:36:32 +0800	[thread overview]
Message-ID: <20120913123632.GA13319@gmail.com> (raw)
In-Reply-To: <874nn25gqi.fsf@openvz.org>

On Thu, Sep 13, 2012 at 03:01:25PM +0400, Dmitry Monakhov wrote:
> On Thu, 13 Sep 2012 18:46:21 +0800, Zheng Liu <gnehzuil.liu@gmail.com> wrote:
> > On Sun, Sep 09, 2012 at 09:27:11PM +0400, Dmitry Monakhov wrote:
> > > fsync and punch_hole are the places where we have to wait for all
> > > existing writers (writeback, aio, dio), but currently we simply
> > > flush pended end_io request which is not sufficient.
> > > Even more i_mutex is not holded while punch_hole which obviously
> > > result in dangerous data corruption due to write-after-free.
> > 
> > Hi Dmitry,
> > 
> > Lukas already has a patch to take i_mutex locking before punching a
> > hole.  Just a reminding. :-)
> Yes, i've found it after patch was submitted, but this bug make me
> nervous a bit because we have broken punch_hole implementation
> long time ago, it allow to destroy data easily, user are able to
> call it if has WR permission for a file.
> So if you ask be i'll vote for hide it under CAP_SYS_RESOURCE until
> proper implementation appears.
> Same it true for EXT4_IO_MOVE_EXT because it allow to kernel panic
> since v2.6.30-6558-g748de67, so all primary distros (RH6,Deb6) are
> affected :( 

IMHO, it will be better when this patch is applied, and I prefer to fix
the problem rather than hidding it using CAP_SYS_RESOURCE. ;-)

Regards,
Zheng

  reply	other threads:[~2012-09-13 12:26 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-09-09 17:27 [PATCH 0/7] ext4: Bunch of DIO/AIO fixes Dmitry Monakhov
2012-09-09 17:27 ` [PATCH 1/7] ext4: ext4_inode_info diet Dmitry Monakhov
2012-09-13 10:50   ` Zheng Liu
2012-09-13 11:15     ` Dmitry Monakhov
2012-09-15 15:53       ` Theodore Ts'o
2012-09-09 17:27 ` [PATCH 2/7] ext4: completed_io locking cleanup Dmitry Monakhov
2012-09-10  9:23   ` Jan Kara
2012-09-10 10:19     ` Dmitry Monakhov
2012-09-13 10:48   ` Zheng Liu
2012-09-09 17:27 ` [PATCH 3/7] ext4: serialize dio nolocked reads with defrag workers V2 Dmitry Monakhov
2012-09-10  9:31   ` Jan Kara
2012-09-10 10:00     ` Jan Kara
2012-09-09 17:27 ` [PATCH 4/7] ext4: fsync should wait for DIO writers Dmitry Monakhov
2012-09-10  9:51   ` Jan Kara
2012-09-10 10:56     ` Dmitry Monakhov
2012-09-12 14:02       ` Jan Kara
2012-09-12  5:40     ` Zheng Liu
2012-09-13 10:46   ` Zheng Liu
2012-09-13 11:01     ` Dmitry Monakhov
2012-09-13 12:36       ` Zheng Liu [this message]
2012-09-09 17:27 ` [PATCH 5/7] ext4: serialize unlocked dio reads with truncate Dmitry Monakhov
2012-09-10  9:54   ` Jan Kara
2012-09-09 17:27 ` [PATCH 6/7] ext4: endless truncate due to nonlocked dio readers V2 Dmitry Monakhov
2012-09-13 10:41   ` Zheng Liu
2012-09-13 12:07     ` Jan Kara
2012-09-13 12:57       ` Zheng Liu
2012-09-13 14:34         ` Jan Kara
2012-09-13 23:31           ` Zheng Liu
2012-09-09 17:27 ` [PATCH 7/7] ext4: serialize truncate with owerwrite DIO workers V2 Dmitry Monakhov
2012-09-13 10: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=20120913123632.GA13319@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.