From: Cody P Schafer <dev@codyps.com>
To: Chris Mason <clm@fb.com>
Cc: Chris Samuel <chris@csamuel.org>, linux-btrfs@vger.kernel.org
Subject: Re: Blocked tasks on 3.15.1
Date: Sat, 19 Jul 2014 12:38:53 -0500 [thread overview]
Message-ID: <CAPoQQ-1PcyPgJ4eoicP4xM8RShA2qo77fM7kqU5eKKUM2cmuUQ@mail.gmail.com> (raw)
In-Reply-To: <53C7CD0F.7070603@fb.com>
On Thu, Jul 17, 2014 at 8:18 AM, Chris Mason <clm@fb.com> wrote:
>
> [ deadlocks during rsync in 3.15 with compression enabled ]
>
> Hi everyone,
>
> I still haven't been able to reproduce this one here, but I'm going
> through a series of tests with lzo compression foraced and every
> operation forced to ordered. Hopefully it'll kick it out soon.
>
> While I'm hammering away, could you please try this patch. If this is
> the buy you're hitting, the deadlock will go away and you'll see this
> printk in the log.
>
> thanks!
>
> -chris
>
> diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c
> index 3668048..8ab56df 100644
> --- a/fs/btrfs/inode.c
> +++ b/fs/btrfs/inode.c
> @@ -8157,6 +8157,13 @@ void btrfs_destroy_inode(struct inode *inode)
> spin_unlock(&root->fs_info->ordered_root_lock);
> }
>
> + spin_lock(&root->fs_info->ordered_root_lock);
> + if (!list_empty(&BTRFS_I(inode)->ordered_operations)) {
> + list_del_init(&BTRFS_I(inode)->ordered_operations);
> +printk(KERN_CRIT "racing inode deletion with ordered operations!!!!!!!!!!!\n");
> + }
> + spin_unlock(&root->fs_info->ordered_root_lock);
> +
> if (test_bit(BTRFS_INODE_HAS_ORPHAN_ITEM,
> &BTRFS_I(inode)->runtime_flags)) {
> btrfs_info(root->fs_info, "inode %llu still on the orphan list",
Thanks Chris.
Running 3.15.6 with this patch applied on top:
- still causes a hang with `rsync -hPaHAXx --del /mnt/home/nyx/ /home/nyx/`
- no extra error messages printed (`dmesg | grep racing`) compared to
without the patch
To recap some details (so I can have it all in one place):
- /home/ is btrfs with compress=lzo
- /mnt/home is btrfs with no compression enabled.
- I have _not_ created any nodatacow files.
- Both filesystems are on different physical disks.
- Full stack is: sata <-> dmcrypt <-> lvm <-> btrfs (I noticed others
mentioning the use of dmcrypt)
next prev parent reply other threads:[~2014-07-19 17:38 UTC|newest]
Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-06-27 10:02 Blocked tasks on 3.15.1 Tomasz Chmielewski
2014-06-27 13:06 ` Duncan
2014-06-27 15:14 ` Rich Freeman
2014-06-27 15:52 ` Chris Murphy
2014-06-27 17:20 ` Duncan
2014-06-28 0:22 ` Chris Samuel
2014-06-29 20:02 ` Cody P Schafer
2014-06-29 22:22 ` Cody P Schafer
2014-06-30 18:11 ` Chris Mason
2014-06-30 18:30 ` Chris Mason
2014-06-30 23:42 ` Cody P Schafer
2014-07-01 21:04 ` Chris Mason
2014-07-01 23:05 ` Cody P Schafer
2014-07-02 12:27 ` Cody P Schafer
2014-07-02 13:58 ` Chris Mason
2014-07-02 14:15 ` Chris Mason
2014-07-17 13:18 ` Chris Mason
2014-07-19 0:33 ` Blocked tasks on 3.15.1, raid1 btrfs is no ends of trouble for me Marc MERLIN
2014-07-19 0:44 ` Marc MERLIN
2014-07-19 1:58 ` Marc MERLIN
2014-07-19 1:59 ` Chris Samuel
2014-07-19 5:40 ` Marc MERLIN
2014-07-19 17:38 ` Cody P Schafer [this message]
2014-07-19 18:23 ` Blocked tasks on 3.15.1 Martin Steigerwald
2014-07-22 14:53 ` Chris Mason
2014-07-22 15:14 ` Torbjørn
2014-07-22 16:46 ` Marc MERLIN
2014-07-22 19:42 ` Torbjørn
2014-07-22 19:50 ` Chris Mason
2014-07-22 20:10 ` Torbjørn
2014-07-22 21:13 ` Martin Steigerwald
2014-07-22 21:15 ` Chris Mason
2014-07-23 11:13 ` Martin Steigerwald
2014-07-23 1:06 ` Rich Freeman
2014-07-23 6:38 ` Felix Seidel
2014-07-23 13:20 ` Charles Cazabon
2014-07-25 2:27 ` Cody P Schafer
2014-08-07 15:12 ` Tobias Holst
2014-08-07 16:05 ` Duncan
2014-08-12 2:55 ` Charles Cazabon
2014-08-12 2:56 ` Liu Bo
2014-08-12 4:18 ` Duncan
2014-08-12 4:49 ` Marc MERLIN
2014-08-18 20:34 ` James Cloos
2014-07-01 3:06 ` Charles Cazabon
2014-06-30 2:33 ` Rich Freeman
2014-06-27 18:33 ` Rich Freeman
-- strict thread matches above, loose matches on Subject: below --
2014-07-20 21:34 Matt
2014-06-27 1:37 Rich Freeman
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=CAPoQQ-1PcyPgJ4eoicP4xM8RShA2qo77fM7kqU5eKKUM2cmuUQ@mail.gmail.com \
--to=dev@codyps.com \
--cc=chris@csamuel.org \
--cc=clm@fb.com \
--cc=linux-btrfs@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).