All of lore.kernel.org
 help / color / mirror / Atom feed
From: Zheng Liu <gnehzuil.liu@gmail.com>
To: Jan Kara <jack@suse.cz>
Cc: Dmitry Monakhov <dmonakhov@openvz.org>,
	linux-ext4@vger.kernel.org, tytso@mit.edu, wenqing.lz@taobao.com
Subject: Re: [PATCH 6/7] ext4: endless truncate due to nonlocked dio readers V2
Date: Fri, 14 Sep 2012 07:31:53 +0800	[thread overview]
Message-ID: <20120913233153.GA2890@gmail.com> (raw)
In-Reply-To: <20120913143455.GB4328@quack.suse.cz>

On Thu, Sep 13, 2012 at 04:34:55PM +0200, Jan Kara wrote:
> On Thu 13-09-12 20:57:26, Zheng Liu wrote:
> > On Thu, Sep 13, 2012 at 02:07:36PM +0200, Jan Kara wrote:
> > >   Hello,
> > > 
> > > On Thu 13-09-12 18:41:36, Zheng Liu wrote:
> > > > Could you please provide more detailed workload to convince me?  I
> > > > am thinking about whether we really need to disable dioread_nolock
> > > > feature in here.  In our benchmarks, we don't see this problem.
> > >   I just did:
> > > 
> > > # Create file
> > > dd if=/dev/zero of=/mnt/file bs=1M count=30
> > > sync
> > > # Start 10 DIO dio readers in parallel reading the file in a loop
> > > for (( i = 0; i < 10; i++ )); do
> > >   while true; do
> > >     dd if=/mnt/file bs=4k iflag=direct of=/dev/null
> > >   done &
> > > done
> > > sleep 1
> > > 
> > > # Try to truncate the file - never finishes.
> > > truncate -s 16 /mnt/file
> > > 
> > > It is pretty easy to hit this. Besides being a DOS attack vector (but I
> > > won't be too concerned about this - there are plenty of ways how local
> > > process can screw you) I can easily imagine some application to get bitten
> > > by this. 
> > 
> > Hi Jan,
> > 
> > Thanks for your explanation, but in my desktop I cannot reproduce this
> > problem.  The size of `file' is 16.  Am I missing something?
>   Hum, on my test machine with 3.6-rc1 it does not... Maybe for your
> desktop you need a larger sleep before running truncate so that readers
> have time to start up? Also I suppose you have ext4 mounted with
> dioread_nolock mount option?

Yes, it can be reproduced after increasing sleep time.  Thanks.

Regards,
Zheng

  reply	other threads:[~2012-09-13 23:21 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
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 [this message]
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=20120913233153.GA2890@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.