From: Goffredo Baroncelli <kreijack@inwind.it>
To: Chris Murphy <lists@colorremedies.com>,
Andrei Borzenkov <arvidjaar@gmail.com>
Cc: Kai Krakow <hurikhan77@gmail.com>,
Btrfs BTRFS <linux-btrfs@vger.kernel.org>
Subject: Re: 64-btrfs.rules and degraded boot
Date: Thu, 7 Jul 2016 19:07:50 +0200 [thread overview]
Message-ID: <99221c4e-0ab4-43c7-8b47-b4fd7ff0c35d@inwind.it> (raw)
In-Reply-To: <CAJCQCtTVKA0DEqDhDDduTMMONo7XUrGD-VaDt2Zfsg_mqP762Q@mail.gmail.com>
On 2016-07-06 20:57, Chris Murphy wrote:
[...]
>
> Seems like we need more granularity by btrfs ioctl for device ready,
> e.g. some way to indicate:
>
> 0 all devices ready
> 1 devices not ready (don't even try to mount)
> 2 minimum devices ready (degraded mount possible)
>
>
> Btrfs multiple device single and raid0 only return code 0 or 1. Where
> raid 1, 5, 6 could return code 2. The systemd default policy for code
> 2 could be to wait some amount of time to see if state goes to 0. At
> the timeout, try to mount anyway. If rootflags=degraded, it mounts. If
> not, mount fails, and we get a dracut prompt.
>
Pay attention that to return 2, you have to scan all the VGs to check if all the involved devices are available: i.e. a filesystem composed by 5 disks, may have a VG RAID5 with only 3 disks used for data, and a VG RAID1 for metadata for the other two disks....
Think to try to perform this for each disk appearing.... I fear that it is too expensive
> That's better behavior than now.
>
>> Equivalent of this rule is required under systemd and desired in
>> general to avoid polling. On systemd list I outlined possible
>> alternative implementation as systemd service instead of really
>> hackish udev rule.
>
> I'll go read it there. Thanks.
>
>
--
gpg @keyserver.linux.it: Goffredo Baroncelli <kreijackATinwind.it>
Key fingerprint BBF5 1610 0B64 DAC6 5F7D 17B2 0EDA 9B37 8B82 E0B5
next prev parent reply other threads:[~2016-07-07 17:07 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-07-05 18:53 64-btrfs.rules and degraded boot Chris Murphy
2016-07-05 19:27 ` Kai Krakow
2016-07-05 19:30 ` Chris Murphy
2016-07-05 20:10 ` Chris Murphy
2016-07-06 9:51 ` Andrei Borzenkov
2016-07-06 11:45 ` Austin S. Hemmelgarn
2016-07-06 11:55 ` Andrei Borzenkov
2016-07-06 12:14 ` Austin S. Hemmelgarn
2016-07-06 12:39 ` Andrei Borzenkov
2016-07-06 12:48 ` Austin S. Hemmelgarn
2016-07-07 16:52 ` Goffredo Baroncelli
2016-07-07 18:23 ` Austin S. Hemmelgarn
2016-07-07 18:58 ` Chris Murphy
2016-07-07 19:14 ` Chris Murphy
2016-07-07 19:59 ` Austin S. Hemmelgarn
2016-07-07 20:20 ` Chris Murphy
2016-07-08 12:24 ` Austin S. Hemmelgarn
2016-07-11 21:07 ` Chris Murphy
2016-07-12 15:34 ` Austin S. Hemmelgarn
2016-07-07 20:13 ` Goffredo Baroncelli
2016-07-07 19:41 ` Goffredo Baroncelli
2016-07-06 12:49 ` Tomasz Torcz
2016-07-06 17:19 ` Chris Murphy
2016-07-06 18:04 ` Austin S. Hemmelgarn
2016-07-06 18:23 ` Chris Murphy
2016-07-06 18:29 ` Andrei Borzenkov
2016-07-06 19:17 ` Austin S. Hemmelgarn
2016-07-06 20:00 ` Chris Murphy
2016-07-07 17:00 ` Goffredo Baroncelli
2016-07-06 18:24 ` Andrei Borzenkov
2016-07-06 18:57 ` Chris Murphy
2016-07-07 17:07 ` Goffredo Baroncelli [this message]
2016-07-07 16:37 ` Goffredo Baroncelli
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=99221c4e-0ab4-43c7-8b47-b4fd7ff0c35d@inwind.it \
--to=kreijack@inwind.it \
--cc=arvidjaar@gmail.com \
--cc=hurikhan77@gmail.com \
--cc=linux-btrfs@vger.kernel.org \
--cc=lists@colorremedies.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;
as well as URLs for NNTP newsgroup(s).