All of lore.kernel.org
 help / color / mirror / Atom feed
From: Chris Mason <chris.mason@fusionio.com>
To: Zach Brown <zab@redhat.com>, Josef Bacik <jbacik@fusionio.com>
Cc: "linux-btrfs@vger.kernel.org" <linux-btrfs@vger.kernel.org>
Subject: Re: [PATCH 0/6] fix INT_MAX readdir hang, plus cleanups
Date: Mon, 1 Jul 2013 13:18:26 -0400	[thread overview]
Message-ID: <20130701171826.14981.597@localhost.localdomain> (raw)
In-Reply-To: <20130701161002.GO10265@lenny.home.zabbo.net>

Quoting Zach Brown (2013-07-01 12:10:02)
> > > code.  It's all lightly tested with xfstests but it wouldn't surprise
> > > me if I missed something so review is appreciated.
> 
> *mmm, hmmm*
> 
> > One of these patches is making new entries not show up in readdir.  This was
> > discovered while running stress.sh overnight, it complained about files not
> > matching but when they were checked the files matched.  Dropping the entire
> > series made stress.sh run fine.  So I'm dropping these for the next merge window
> > but I'll dig into it and try and figure out what was causing the problem.
> 
> Nerts.  It's got to be the delayed inode stuff.
> 
> Maybe it's some unlink/recreate pattern?  Is this a thing that stress.sh
> does?  (Where's stress.sh live?)

It's an old namesys tool, I've copied it here:

http://masoncoding.com/mason/tools/stress.sh

My command line:

stress.sh -n 50 -s -c /build/linux /mnt

Basically its:

1) Make a list of all files in /build/linux and their md5sums
2) Start 50 procs
3) Each proc copies /build/linux into /mnt/stress/proc_num/
4) Each proc compares the md5sums of its private copy with the original
master
5) Each proc deletes the private copy
6) Repeat steps 2-5 forever.

The most likely cause of the bug I'm seeing is readdir not finding new
files.

-chris


  reply	other threads:[~2013-07-01 17:18 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-06-04 22:17 [PATCH 0/6] fix INT_MAX readdir hang, plus cleanups Zach Brown
2013-06-04 22:17 ` [PATCH 1/6] btrfs: set readdir f_pos only after filldir Zach Brown
2013-06-05  1:19   ` Miao Xie
2013-06-04 22:17 ` [PATCH 2/6] btrfs: fix readdir hang with offsets past INT_MAX Zach Brown
2013-06-04 22:17 ` [PATCH 3/6] btrfs: trivial delayed item readdir list cleanups Zach Brown
2013-06-04 22:17 ` [PATCH 4/6] btrfs: simplify finding next/prev delayed items Zach Brown
2013-06-04 22:17 ` [PATCH 5/6] btrfs: add helper to get delayed item root Zach Brown
2013-06-04 22:18 ` [PATCH 6/6] btrfs: get fewer delayed item refs during readdir Zach Brown
2013-06-04 23:16 ` [PATCH 0/6] fix INT_MAX readdir hang, plus cleanups Chris Mason
2013-06-04 23:26   ` Zach Brown
2013-06-05  2:34     ` Miao Xie
2013-06-05 13:36       ` David Sterba
2013-06-06  1:35         ` Miao Xie
2013-06-06 13:55           ` David Sterba
2013-06-06 14:32             ` Chris Mason
2013-06-10 22:39     ` Zach Brown
2013-06-12 12:59       ` Chris Mason
2013-07-01 12:54 ` Josef Bacik
2013-07-01 13:18   ` Chris Mason
2013-07-01 16:10   ` Zach Brown
2013-07-01 17:18     ` Chris Mason [this message]
2013-07-11 23:19   ` Zach Brown

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=20130701171826.14981.597@localhost.localdomain \
    --to=chris.mason@fusionio.com \
    --cc=jbacik@fusionio.com \
    --cc=linux-btrfs@vger.kernel.org \
    --cc=zab@redhat.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.