All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Piotr Pawłow" <pp@siedziba.pl>
To: Neuer User <auslands-kv@gmx.de>, linux-btrfs@vger.kernel.org
Subject: Re: btrfs und lvm-cache?
Date: Thu, 24 Dec 2015 17:42:19 +0100	[thread overview]
Message-ID: <567C206B.70705@siedziba.pl> (raw)
In-Reply-To: <n5h30b$8vd$1@ger.gmane.org>

W dniu 24.12.2015 o 16:29, Neuer User pisze:
> Am 24.12.2015 um 15:56 schrieb Piotr Pawłow:
>> Hello,
>>> - both hdd and ssd in one LVM VG
>>> - one LV on each hdd, containing a btrfs filesystem
>>> - both btrfs LV configured as RAID1
>>> - the single SDD used as a LVM cache device for both HDD LVs to speed up
>>> random access, where possible
>> I have a setup like this for my /home. It works but it's a crappy solution.
>>
> Indeed? Exactly like this? Great to hear. But sad to hear it is not a
> good solution.

Exactly. Single SSD caching 2 LVs used for btrfs RAID1. Don't get me 
wrong, it's still a lot better than without caching, but not optimal. An 
optimal solution would have to be integrated with the FS like in ZFS.

>> The effective capacity for caching is halved, and it takes twice as much
>> time to fully cache your working set, because you get a cache miss at
>> least once for each mirror.
>>
>> There are also some gotchas:
>>
>> - you should use "device=" mount options, or else there is a danger of
>> btrfs mounting origin devices and even mixing cached and origin in one
>> FS. I completely broke my FS before realizing what's going on.
> Hmm, strange. I thought btrfs should not even know of the lvmcache. It
> would just try to mount the HDD LVs and the caching is done
> automatically via lvmcache?

Unfortunately, at least on my system, there are device files for origin LVs:

# lvs
   LV    VG   Attr       LSize   Pool     Origin Data%  Meta%  Move Log 
Cpy%Sync Convert
   home1 pp   Cwi-aoC---   1,42t [cache0] [home1_corig] 100,00 
11,02           0,00
   home2 pp   Cwi-aoC---   1,42t [cache1] [home2_corig] 100,00 
11,02           0,00
[...]

# ls -1 /dev/mapper/
[...]
pp-home1
pp-home1_corig
pp-home2
pp-home2_corig
[...]

... which btrfs would detect, pick up at random and assemble into the 
RAID set. I had to do this in fstab to force only specified devices:

UUID=[...] /home btrfs 
noatime,autodefrag,subvol=@home,device=/dev/mapper/pp-home1,device=/dev/mapper/pp-home2

>> - you should use writethrough mode if you only have one SSD. There was a
>> bug in LVM where it wouldn't save the caching mode and revert to
>> writeback after restart, so make sure you use the latest version of LVM
>> tools.
> Do you know, which version is good?

I know it was buggy in Ubuntu Vivid (version 2.02.111 I think), and in 
Wily it's OK (curently 2.02.122).

Looking at the changelog, it may have been fixed in 2.02.112 by commit 
9d57aa9a0fe00322cb188ad1f3103d57392546e7:

"cache-pool:  Fix specification of cachemode when converting to cache-pool

Failure to copy the 'feature_flags' lvconvert_param to the matching
lv_segment field meant that when a user specified the cachemode argument,
the request was not honored."

Of cource I may be wrong, I haven't bisected it.

  reply	other threads:[~2015-12-24 16:44 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-12-23 10:45 btrfs und lvm-cache? Neuer User
2015-12-23 11:21 ` Martin Steigerwald
2015-12-23 11:38   ` Neuer User
2015-12-23 19:45     ` Noah Massey
2015-12-23 20:07       ` Neuer User
2015-12-23 20:38         ` Holger Hoffstätte
2015-12-23 19:49     ` Chris Murphy
2015-12-23 20:21       ` Neuer User
2015-12-23 20:56         ` Chris Murphy
2015-12-24 15:19           ` Neuer User
2015-12-23 20:24 ` Neuer User
2015-12-23 20:59   ` Chris Murphy
2015-12-24  2:04 ` Duncan
2015-12-24 15:24   ` Neuer User
2015-12-24 14:56 ` Piotr Pawłow
2015-12-24 15:29   ` Neuer User
2015-12-24 16:42     ` Piotr Pawłow [this message]
2015-12-25 17:11       ` Neuer User

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=567C206B.70705@siedziba.pl \
    --to=pp@siedziba.pl \
    --cc=auslands-kv@gmx.de \
    --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.