linux-bcache.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Kent Overstreet <kmo@daterainc.com>
To: Jianjian Huo <samuel.huo@gmail.com>
Cc: Rolf Fokkens <rolf@rolffokkens.nl>, Slava Pestov <sp@datera.io>,
	"Stephen R. van den Berg" <srb@cuci.nl>,
	linux-bcache@vger.kernel.org
Subject: Re: 3.18.1 + latest bcache-dev
Date: Wed, 7 Jan 2015 18:29:11 -0800	[thread overview]
Message-ID: <20150108022911.GA1263@kmo-pixel> (raw)
In-Reply-To: <CAB=cV2TCP5xfP3fjtZaREZCV=LDC0YN04qadgRegVUjESESZ6w@mail.gmail.com>

On Wed, Jan 07, 2015 at 09:41:19AM -0800, Jianjian Huo wrote:
> Hi Kent,
> 
> On Tue, Jan 6, 2015 at 5:48 PM, Kent Overstreet <kmo@daterainc.com> wrote:
> >
> > On Tue, Jan 06, 2015 at 11:18:10PM +0100, Rolf Fokkens wrote:
> > > On 01/05/2015 08:47 AM, Slava Pestov wrote:
> > > >The plan is to incrementally backport bug fixes and optimizations from
> > > >bcache-dev to upstream for the foreseeable future.
> > > I assume (hope) this won't break bcache w.r.t. the current block device
> > > layout?
> > > >The development branch is going through major changes to support
> > > >dynamically adding/removing cache devices
> > > Sound nices, that creates great flexibility. Does this also introduce the
> > > option of storing mirrored writeback data, while storing single copy read
> > > (cached) data (when having multiple SSD's as a cache)?
> >
> > Yup, and a lot more.
> >
> > > >and storing data in the btree instead of using it as a cache, enabling
> > > >usage without any backing devices.
> > > The needs some explanation. I assume you mean it operates as writeback bache
> > > that never flushes. If that's correct, I can only imagine it's useful when
> > > initially using it. And in that case seems a kind of a time bomb, because
> > > when it's "full" (and there's still no backing device)... what happens then?
> >
> > What Slava is alluding to is that bcache is becoming a full posix filesystem - I
> > was actually demoing it... nearly a year ago, I think. With eventual feature
> > parity with btrfs and much, much better performance.
> >
> 
> btrfs use COW b-tree shadowing to support snapshots and clones, what
> approach will this new bcache FS use to support those features?

bcache has always been COW for data, and it supports copy offload (i.e. btrfs
reflink) today via just multiple extents pointing to the same data.

I'll write up the plan for snapshots at some point, it's quite different from
the btrfs approach.

> And will this new FS continue to use 2MB buckets without random writes
> in them? if that's the case, when this new FS is used on SSDs only, I
> guess FS GC has to be turned on for all buckets to reclaim free space.
> Since a lot of SSDs use parallel writes, some use compression, it's
> not possible to align one logical 2MB bucket at FS level to one single
> physical NAND block, then GC will be performed twice for one dirty
> bucket at different levels, so SSD life will be cut in half in the
> worst case?

Yeah that is a potential issue, for SSDs what we really want is to get raw
access to flash and have bcache be the FTL. Even if that doesn't happen there
are things we can do to mitigate though, suffice it to say this issue has been
discussed a lot :)

  reply	other threads:[~2015-01-08  2:26 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-12-28  2:35 3.18.1 + latest bcache-dev Stephen R. van den Berg
2014-12-29  4:05 ` Slava Pestov
2015-01-03 16:40   ` Rolf Fokkens
2015-01-04  0:46     ` Kent Overstreet
2015-01-04 14:11       ` Rolf Fokkens
2015-01-05  7:47         ` Slava Pestov
2015-01-06 22:18           ` Rolf Fokkens
2015-01-06 22:47             ` Slava Pestov
2015-01-07  1:48             ` Kent Overstreet
2015-01-07 17:41               ` Jianjian Huo
2015-01-08  2:29                 ` Kent Overstreet [this message]
2015-01-07 20:17             ` Eric Wheeler
2015-01-08  2:30               ` Kent Overstreet
2015-01-08 19:47                 ` Rolf Fokkens
2015-01-05  8:49       ` Stephen R. van den Berg
2015-01-05 11:06         ` Kent Overstreet
2015-01-06  9:16           ` Stephen R. van den Berg
2015-01-06 11:10             ` Kent Overstreet

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=20150108022911.GA1263@kmo-pixel \
    --to=kmo@daterainc.com \
    --cc=linux-bcache@vger.kernel.org \
    --cc=rolf@rolffokkens.nl \
    --cc=samuel.huo@gmail.com \
    --cc=sp@datera.io \
    --cc=srb@cuci.nl \
    /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).