Linux RAID subsystem development
 help / color / mirror / Atom feed
From: "John Stoffel" <john@stoffel.org>
To: Christian Theune <ct@flyingcircus.io>
Cc: Yu Kuai <yukuai1@huaweicloud.com>,
	John Stoffel <john@stoffel.org>,
	"linux-raid@vger.kernel.org" <linux-raid@vger.kernel.org>,
	dm-devel@lists.linux.dev, "yukuai (C)" <yukuai3@huawei.com>
Subject: Re: PROBLEM: repeatable lockup on RAID-6 with LUKS dm-crypt on NVMe devices when rsyncing many files
Date: Fri, 9 Aug 2024 18:51:54 -0400	[thread overview]
Message-ID: <26294.40330.924457.532299@quad.stoffel.home> (raw)
In-Reply-To: <30D680B2-F494-42F5-8498-6ED586E05766@flyingcircus.io>

>>>>> "Christian" == Christian Theune <ct@flyingcircus.io> writes:

> Hi,
>> On 9. Aug 2024, at 03:13, Yu Kuai <yukuai1@huaweicloud.com> wrote:
>> 
>> 
>> Yes, for sure IO are stuck in md127 and never get dispatched to nvme,
>> for now I'll say this is a raid5 problem.

> Note, that this is raid6, not raid5! Sorry, I never explicitly
> mentioned that and it was buried in the mdstat output.

That's good info.  

I wonder if you could setup some loop devices, build a RAID6 array,
put XFS on it and try to replicate the problem by rsyncing a bunch of
files. 



> Not sure whether that code is internally the same anyway…

>> Can you describe in steps how do you reporduce this problem? We must
>> figure out where are those IO and why they're not dispatched. I'll be
>> easier to debug if I can reporduce it. Otherwise I'll have to give you
>> a debug patch.

> My workload is pretty simple IMHO:

> 1. This is on an XFS volume:

> meta-data=/dev/mapper/backy      isize=512    agcount=112, agsize=268435328 blks
>          =                       sectsz=4096  attr=2, projid32bit=1
>          =                       crc=1        finobt=1, sparse=1, rmapbt=0
>          =                       reflink=1    bigtime=1
> data     =                       bsize=4096   blocks=30001587200, imaxpct=1
>          =                       sunit=128    swidth=1024 blks
> naming   =version 2              bsize=4096   ascii-ci=0, ftype=1
> log      =internal log           bsize=4096   blocks=521728, version=2
>          =                       sectsz=4096  sunit=1 blks, lazy-count=1
> realtime =none                   extsz=4096   blocks=0, rtextents=0

> 2. I’m rsyncing a large number of files using:

> rsync -avz “<remote-machine>:/<remote-folder>" .

> Specific aspects of the data that might come into play:

> After 5-6 tries of syncing and locking up, I now have a directory on that volume that contains 154.820 files directly and 1.828.933 files recursively. The recursive structure uses a /year/<hash prefix>/<hash>-filename structure to spread out the 1.8 million files more evenly.

> The total amount of data is 1.0 TiB at the moment. The smallest files are empty or just a few kilobytes. The mode of the filesizes is 180.984 bytes.

> There is a second workload on the machine that has been running smoothly for a few weeks which backs up virtual machine images and creates a somewhat similarly (but more consistent) hashed structure but doesn’t use rsync but a more complex diff + content hashing + compression approach. However, that other tool does emit write barriers here and there -wWhich rsync doesn’t AFAIK.

> I double checked, but the other workload was not active during my last lockup.

> Happy to apply a debug patch to help diagnosing this.

> Cheers,
> Christian

> -- 
> Christian Theune · ct@flyingcircus.io · +49 345 219401 0
> Flying Circus Internet Operations GmbH · https://flyingcircus.io
> Leipziger Str. 70/71 · 06108 Halle (Saale) · Deutschland
> HR Stendal HRB 21169 · Geschäftsführer: Christian Theune, Christian Zagrodnick



  reply	other threads:[~2024-08-09 22:52 UTC|newest]

Thread overview: 88+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-08-06 14:10 PROBLEM: repeatable lockup on RAID-6 with LUKS dm-crypt on NVMe devices when rsyncing many files Christian Theune
2024-08-06 14:10 ` Christian Theune
2024-08-07  2:55 ` Yu Kuai
2024-08-07  5:31   ` Christian Theune
2024-08-07  6:46     ` Christian Theune
2024-08-07  8:59       ` Christian Theune
2024-08-07 21:05         ` John Stoffel
2024-08-08  1:33           ` Yu Kuai
2024-08-08  6:02           ` Christian Theune
2024-08-08  6:55             ` Yu Kuai
2024-08-08  7:06               ` Christian Theune
2024-08-08  8:53                 ` Christian Theune
2024-08-09  1:13                   ` Yu Kuai
2024-08-09  6:10                     ` Christian Theune
2024-08-09 22:51                       ` John Stoffel [this message]
2024-08-12  6:58                         ` Christian Theune
2024-08-12 18:37                           ` John Stoffel
2024-08-14  8:53                             ` Christian Theune
2024-08-15  6:19                               ` Christian Theune
2024-08-15 10:03                                 ` Christian Theune
2024-08-15 11:14                                   ` Yu Kuai
2024-08-15 11:24                                     ` Christian Theune
2024-08-15 11:49                                       ` Yu Kuai
2024-10-22 15:02                                     ` Christian Theune
2024-10-23  1:13                                       ` Yu Kuai
2024-10-23  6:03                                         ` Christian Theune
2024-10-23 17:50                                           ` Christian Theune
2024-10-25  8:39                                         ` Christian Theune
2024-10-25 13:31                                           ` Dragan Milivojević
2024-10-25 14:02                                             ` Christian Theune
2024-10-26  5:37                                               ` Christian Theune
2024-10-26  9:07                                                 ` Yu Kuai
2024-10-26 11:51                                                   ` Christian Theune
2024-10-26 12:07                                                   ` Christian Theune
2024-10-26 12:11                                                     ` Christian Theune
2024-10-30  1:25                                                       ` Yu Kuai
2024-10-30  6:29                                                         ` Christian Theune
2024-10-31  7:48                                                           ` Yu Kuai
2024-10-31  8:04                                                             ` Christian Theune
2024-10-31 15:07                                                               ` Christian Theune
2024-10-31 19:46                                                                 ` Christian Theune
2024-10-31 20:33                                                                   ` John Stoffel
2024-11-01  2:02                                                                     ` Yu Kuai
2024-11-01  7:56                                                                       ` Christian Theune
2024-11-01  8:33                                                                         ` Christian Theune
2024-11-03 15:54                                                                           ` Christian Theune
2024-11-03 16:16                                                                             ` Dragan Milivojević
2024-11-04 11:29                                                                           ` Yu Kuai
2024-11-04 11:51                                                                             ` Christian Theune
2024-11-04 12:30                                                                               ` Yu Kuai
2024-11-04 11:40                                                                           ` Yu Kuai
2024-11-04 12:18                                                                             ` Yu Kuai
2024-11-04 14:45                                                                               ` Christian Theune
2024-11-04 20:04                                                                                 ` Christian Theune
2024-11-05  1:20                                                                                   ` Yu Kuai
2024-11-05  6:23                                                                                     ` Christian Theune
2024-11-05 10:15                                                                                       ` Christian Theune
2024-11-06  6:35                                                                                         ` Yu Kuai
2024-11-06  6:40                                                                                           ` Christian Theune
2024-11-07  7:55                                                                                             ` Yu Kuai
2024-11-07  8:01                                                                                               ` Yu Kuai
2024-11-09 11:35                                                                                               ` Xiao Ni
2024-11-11  2:25                                                                                                 ` Yu Kuai
2024-11-11  8:00                                                                                                 ` Christian Theune
2024-11-11 14:34                                                                                                   ` Christian Theune
2024-11-12  6:57                                                                                                     ` Christian Theune
2024-11-14 15:07                                                                                                       ` Christian Theune
2024-11-15  8:07                                                                                                         ` Xiao Ni
2024-11-15  8:44                                                                                                           ` Christian Theune
2024-11-15 10:11                                                                                                             ` Xiao Ni
2024-11-15 11:06                                                                                                               ` Christian Theune
2024-12-10  8:33                                                                                                                 ` Christian Theune
2024-12-16 13:25                                                                                                                   ` Christian Theune
2024-12-16 13:36                                                                                                                     ` Yu Kuai
2024-12-16 14:18                                                                                                                       ` Christian Theune
2025-01-20  9:19                                                                                                                         ` Christian Theune
2025-01-24  6:22                                                                                                                           ` Christian Theune
2025-01-24  6:35                                                                                                                             ` Yu Kuai
2025-01-24  6:38                                                                                                                               ` Christian Theune
2024-08-15 15:53                                 ` John Stoffel
2024-08-15 19:13                                   ` Christian Theune
2024-08-26 14:38                                     ` Christian Theune
2024-08-08 14:23             ` John Stoffel
2024-08-19 19:12               ` tihmstar
2024-08-19 21:05                 ` John Stoffel
2024-08-24 16:56                   ` tihmstar
2024-08-24 18:12                   ` Dragan Milivojević
2024-08-27  1:27                     ` John Stoffel

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=26294.40330.924457.532299@quad.stoffel.home \
    --to=john@stoffel.org \
    --cc=ct@flyingcircus.io \
    --cc=dm-devel@lists.linux.dev \
    --cc=linux-raid@vger.kernel.org \
    --cc=yukuai1@huaweicloud.com \
    --cc=yukuai3@huawei.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox