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 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.