From: Duncan <1i5t5.duncan@cox.net>
To: linux-btrfs@vger.kernel.org
Subject: Re: 4.11 relocate crash, null pointer + rolling back a filesystem by X hours?
Date: Tue, 2 May 2017 05:01:02 +0000 (UTC) [thread overview]
Message-ID: <pan$e2463$2d3d82e9$144941f3$9eeef2a4@cox.net> (raw)
In-Reply-To: 20170502032346.ayhh3n3uh5d5ekbb@merlins.org
Marc MERLIN posted on Mon, 01 May 2017 20:23:46 -0700 as excerpted:
> Also, how is --mode=lowmem being useful?
FWIW, I just watched your talk that's linked from the wiki, and wondered
what you were doing these days as I hadn't seen any posts from you here
for awhile.
Well, that you're asking that question confirms you've not been following
the list too closely... Of course that's understandable as people have
other stuff to do, but just sayin'.
The answer is... btrfs check in lowmem mode isn't simply lowmem, it's
also effectively a very nearly entirely rewritten second implementation,
which has already demonstrated its worth as it has already allowed
finding and fixing a number of bugs in normal mode check. Of course
normal mode check has returned the favor a few times as well, so it is
now reasonably standard list troubleshooting practice to ask for the
output from both modes to see what and where they differ, especially if
it's not something known to be directly fixable by normal mode, which of
course remains the more mature default.
So even if neither one can actually fix the problem ATM, any differences
in output both lend important clues to the real problem, and potentially
help developers to find and fix bugs in one or the other implementation.
Tho it's worth noting that lowmem mode can be expected to take longer, as
it favors lower memory usage over speed, just as the mode title suggests
it will. On a filesystem as big as yours... it may unfortunately not be
entirely practical, especially if as you hint there's at least some time
pressure here, tho it's not extreme.
Of course on-list I'm somewhat known for my arguments propounding the
notion that any filesystem that's too big to be practically maintained
(including time necessary to restore from backups, should that be
necessary for whatever reason) is... too big... and should ideally be
broken along logical and functional boundaries into a number of
individual smaller filesystems until such point as each one is found to
be practically maintainable within a reasonably practical time frame.
Don't put all the eggs in one basket, and when the bottom of one of those
baskets inevitably falls out, most of your eggs will be safe in other
baskets. =:^)
But as someone else (pg, IIRC) on-list is fond of saying, lots of other
people "know better" (TM). Whatever. It's your data, your systems and
your time, not mine. I just know what I've found (sometimes finding it
the hard way!) to work best for me, and TBs on TBs of data on a single
filesystem, even if it's a backup and is itself backed up, isn't
something I'd be putting my own faith in, as the time even for a simple
restore from backups is simply too high for me to consider it at all
practical. =:^)
> And for re-parenting a sub-subvolume, is that possible?
> (I want to delete /sub1/ but I can't because I have /sub1/sub2 that's
> also a subvolume and I'm not sure how to re-parent sub2 to somewhere
> else so that I can subvolume delete sub1)
As I believe you know my own use-case doesn't deal with subvolumes and
snapshots, so this may be of limited practicality, but FWIW, the
sysadmin's guide discussion of snapshot management and special cases
seems apropos as a first stop, before going further:
https://btrfs.wiki.kernel.org/index.php/SysadminGuide#Managing_Snapshots
Note that toward the bottom of "management" it discusses moving
subvolumes (which will obviously reparent them), but then below that in
special cases it says that read-only subvolumes (and thus snapshots)
cannot be moved, explaining why.
*BUT*, and here's the "go further" part, keep in mind that subvolume-read-
only is a property, gettable and settable by btrfs property.
So you should be able to unset the read-only property of a subvolume or
snapshot, move it, then if desired, set it again.
Of course I wouldn't expect send -p to work with such a snapshot, but
send -c /might/ still work, I'm not actually sure but I'd consider it
worth trying. (I'd try -p as well, but expect it to fail...)
--
Duncan - List replies preferred. No HTML msgs.
"Every nonfree program has a lord, a master --
and if you use the program, he is your master." Richard Stallman
next prev parent reply other threads:[~2017-05-02 5:01 UTC|newest]
Thread overview: 77+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-06-20 14:39 4.11.3: BTRFS critical (device dm-1): unable to add free space :-17 => btrfs check --repair runs clean Marc MERLIN
2017-06-20 15:23 ` Hugo Mills
2017-06-20 15:26 ` Marc MERLIN
2017-06-20 15:36 ` Hugo Mills
2017-06-20 15:44 ` Marc MERLIN
2017-06-20 23:12 ` Marc MERLIN
2017-06-20 23:58 ` Marc MERLIN
2017-06-21 3:31 ` Chris Murphy
2017-06-21 3:43 ` Marc MERLIN
2017-06-21 15:13 ` How to fix errors that check --mode lomem finds, but --mode normal doesn't? Marc MERLIN
2017-06-21 23:22 ` Chris Murphy
2017-06-22 0:48 ` Marc MERLIN
2017-06-22 2:22 ` Qu Wenruo
2017-06-22 2:53 ` Marc MERLIN
2017-06-22 4:08 ` Qu Wenruo
2017-06-23 4:06 ` Marc MERLIN
2017-06-23 8:54 ` Lu Fengqi
2017-06-23 16:17 ` Marc MERLIN
2017-06-24 2:34 ` Marc MERLIN
2017-06-26 10:46 ` Lu Fengqi
2017-06-27 23:11 ` Marc MERLIN
2017-06-28 7:10 ` Lu Fengqi
2017-06-28 14:43 ` Marc MERLIN
2017-05-01 17:06 ` 4.11 relocate crash, null pointer Marc MERLIN
2017-05-01 18:08 ` 4.11 relocate crash, null pointer + rolling back a filesystem by X hours? Marc MERLIN
2017-05-02 1:50 ` Chris Murphy
2017-05-02 3:23 ` Marc MERLIN
2017-05-02 4:56 ` Chris Murphy
2017-05-02 5:11 ` Marc MERLIN
2017-05-02 18:47 ` btrfs check --repair: failed to repair damaged filesystem, aborting Marc MERLIN
2017-05-03 6:00 ` Marc MERLIN
2017-05-03 6:17 ` Marc MERLIN
2017-05-03 6:32 ` Roman Mamedov
2017-05-03 20:40 ` Marc MERLIN
2017-07-07 5:37 ` ctree.c:197: update_ref_for_cow: BUG_ON `ret` triggered, value -5 Marc MERLIN
2017-07-07 5:39 ` Marc MERLIN
2017-07-07 9:33 ` Lu Fengqi
2017-07-07 16:38 ` Marc MERLIN
2017-07-09 4:34 ` 4.11.6 / more corruption / root 15455 has a root item with a more recent gen (33682) compared to the found root node (0) Marc MERLIN
2017-07-09 5:05 ` We really need a better/working btrfs check --repair Marc MERLIN
2017-07-09 6:34 ` 4.11.6 / more corruption / root 15455 has a root item with a more recent gen (33682) compared to the found root node (0) Marc MERLIN
2017-07-09 7:57 ` Martin Steigerwald
2017-07-09 9:16 ` Paul Jones
2017-07-09 11:17 ` Duncan
2017-07-09 13:00 ` Martin Steigerwald
2017-07-29 19:29 ` Imran Geriskovan
2017-07-29 23:38 ` Duncan
2017-07-30 14:54 ` Imran Geriskovan
2017-07-31 4:53 ` Duncan
2017-07-31 20:32 ` Imran Geriskovan
2017-08-01 1:36 ` Duncan
2017-08-01 15:18 ` Imran Geriskovan
2017-07-31 21:07 ` Ivan Sizov
2017-07-31 21:17 ` Marc MERLIN
2017-07-31 21:39 ` Ivan Sizov
2017-08-01 16:41 ` Ivan Sizov
2017-07-31 22:00 ` Justin Maggard
2017-08-01 6:38 ` Marc MERLIN
2017-05-02 19:59 ` 4.11 relocate crash, null pointer + rolling back a filesystem by X hours? Kai Krakow
2017-05-02 5:01 ` Duncan [this message]
2017-05-02 19:53 ` Kai Krakow
2017-05-23 16:58 ` Marc MERLIN
2017-05-24 10:16 ` Duncan
2017-05-05 1:19 ` Qu Wenruo
2017-05-05 2:10 ` Qu Wenruo
2017-05-05 2:40 ` Marc MERLIN
2017-05-05 5:03 ` Qu Wenruo
2017-05-05 15:43 ` Marc MERLIN
2017-05-17 18:23 ` Kai Krakow
2017-05-05 1:13 ` Qu Wenruo
2017-06-29 13:36 ` How to fix errors that check --mode lomem finds, but --mode normal doesn't? Lu Fengqi
2017-06-29 15:30 ` Marc MERLIN
2017-06-30 14:59 ` Lu Fengqi
2017-06-22 4:08 ` Qu Wenruo
2017-06-21 12:04 ` 4.11.3: BTRFS critical (device dm-1): unable to add free space :-17 => btrfs check --repair runs clean Duncan
2017-06-21 3:26 ` Chris Murphy
2017-06-21 4:06 ` Marc MERLIN
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='pan$e2463$2d3d82e9$144941f3$9eeef2a4@cox.net' \
--to=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.