From: Robert White <rwhite@pobox.com>
To: Duncan <1i5t5.duncan@cox.net>, linux-btrfs@vger.kernel.org
Subject: Re: scrub implies failing drive - smartctl blissfully unaware
Date: Wed, 19 Nov 2014 18:08:20 -0800 [thread overview]
Message-ID: <546D4D14.3060706@pobox.com> (raw)
In-Reply-To: <pan$338ee$938a2625$869a26d$19fb9c42@cox.net>
On 11/19/2014 04:25 PM, Duncan wrote:
> Most often, however, it's at resume, not original startup, which is
> understandable as state at resume doesn't match state at suspend/
> hibernate. The irritating thing, as previously discussed, is when one
> device takes long enough to come back that mdraid or btrfs drops it out,
> generally forcing the reboot I was trying to avoid with the suspend/
> hibernate in the first place, along with a re-add and resync (for mdraid)
> or a scrub (for btrfs raid).
If you want a practical solution you might want to look at
http://underdog.soruceforge.net (my project, shameless plug). The actual
user context return isn't in there but I use the project to build
initramfs images into all my kernels.
[DISCLAIMER: The cryptsetup and LUKS stuff is rock solid but the mdadm
incremental build stuff is very rough and so lightly untested]
You could easily add a drive preheat code block (spin up and status
check all drives with pause and repeat function) as a preamble function
that could/would safely take place before any glance is made towards the
resume stage.
extemporaneous example::
--- snip ---
cat <<'EOT' >>/opt/underdog/utility/preheat.mod
#!/bin/bash
# ROOT_COMMANDS+=( commands your preheat needs )
UNDERDOG+=( init.d/preheat )
EOT
cat <<'EOT' >>/opt/underdog/prototype/init.d/preheat
#!/bin/bash
function __preamble_preheat() {
whatever logic you need
return 0
}
__preamble_funcs+=( [preheat]=__preamble_preheat )
EOT
--- snip ---
install underdog, paste the above into a shell once. edit
/opt/underdog/prototype/init.d/preamble to put whatever logic in you need.
Follow the instructions in /opt/underdog/README.txt for making the
initramfs image or, as I do, build the initramfs into the kernel image.
The preamble will be run in the resultant /init script before the swap
partitions are submitted for attempted resume.
(The system does support complexity like resuming from a swap partition
inside an LVM/LV built over a LUKS encrypted media expanse, or just a
plain laptop with one plain partitioned disk, with zero changes to the
necessary default config.)
-- Rob.
next prev parent reply other threads:[~2014-11-20 2:08 UTC|newest]
Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <E1XqYMg-0000YI-8y@watricky.valid.co.za>
2014-11-18 7:29 ` scrub implies failing drive - smartctl blissfully unaware Brendan Hide
2014-11-18 7:36 ` Roman Mamedov
2014-11-18 13:24 ` Brendan Hide
2014-11-18 15:16 ` Duncan
2014-11-18 12:08 ` Austin S Hemmelgarn
2014-11-18 13:25 ` Brendan Hide
2014-11-18 16:02 ` Phillip Susi
2014-11-18 15:35 ` Marc MERLIN
2014-11-18 16:04 ` Phillip Susi
2014-11-18 16:11 ` Marc MERLIN
2014-11-18 16:26 ` Phillip Susi
2014-11-18 18:57 ` Chris Murphy
2014-11-18 20:58 ` Phillip Susi
2014-11-19 2:40 ` Chris Murphy
2014-11-19 15:11 ` Phillip Susi
2014-11-20 0:05 ` Chris Murphy
2014-11-25 21:34 ` Phillip Susi
2014-11-25 23:13 ` Chris Murphy
2014-11-26 1:53 ` Rich Freeman
2014-12-01 19:10 ` Phillip Susi
2014-11-28 15:02 ` Patrik Lundquist
2014-11-19 2:46 ` Duncan
2014-11-19 16:07 ` Phillip Susi
2014-11-19 21:05 ` Robert White
2014-11-19 21:47 ` Phillip Susi
2014-11-19 22:25 ` Robert White
2014-11-20 20:26 ` Phillip Susi
2014-11-20 22:45 ` Robert White
2014-11-21 15:11 ` Phillip Susi
2014-11-21 21:12 ` Robert White
2014-11-21 21:41 ` Robert White
2014-11-22 22:06 ` Phillip Susi
2014-11-19 22:33 ` Robert White
2014-11-20 20:34 ` Phillip Susi
2014-11-20 23:08 ` Robert White
2014-11-21 15:27 ` Phillip Susi
2014-11-20 0:25 ` Duncan
2014-11-20 2:08 ` Robert White [this message]
2014-11-19 23:59 ` Duncan
2014-11-25 22:14 ` Phillip Susi
2014-11-28 15:55 ` Patrik Lundquist
2014-11-21 4:58 ` Zygo Blaxell
2014-11-21 7:05 ` Brendan Hide
2014-11-21 12:55 ` Ian Armstrong
2014-11-21 17:45 ` Chris Murphy
2014-11-22 7:18 ` Ian Armstrong
2014-11-21 17:42 ` Zygo Blaxell
2014-11-21 18:06 ` Chris Murphy
2014-11-22 2:25 ` Zygo Blaxell
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=546D4D14.3060706@pobox.com \
--to=rwhite@pobox.com \
--cc=1i5t5.duncan@cox.net \
--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).