From: James Sefton <james-3k2nYdb70uTQXOPxS62xeg@public.gmane.org>
To: linux-bcache-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: Resizing bcache backing store
Date: Thu, 1 Nov 2012 19:06:01 +0000 (UTC) [thread overview]
Message-ID: <loom.20121101T195722-160@post.gmane.org> (raw)
In-Reply-To: CAH+dOxJv-ajvLfbUSo8dqG0a8_grNBhfxJ1EbmSrYZz0YXJM2w@mail.gmail.com
Kent Overstreet <koverstreet@...> writes:
>
> For the backing device, I think things will just work - you'll just
> have to close and reopen the backing device in order for bcache to
> notice the new size. Bcache's superblock doesn't remember the size, it
> just goes off of what the size of the backing device is when it's
> registered.
>
> There's currently no way to make bcache notice the backing device has
> grown to do it at runtime, though that ought to be fairly simple too.
>
> On Wed, Apr 11, 2012 at 6:47 PM, David Rhodes Clymer
> <david@...> wrote:
> > In the case where the bcache backing store is resizeable (eg. a
> > logical volume), is it possible to resize the backing store without
> > breaking bcache? Let's say, for example, that I would
> > unmount/unregister /dev/bcacheX, resize the backing store,
> > reregister/remount the cache.
> >
> > I imagine a better approach would be to layer LVM on the cache device
> > itself. However, in this particular case, I set up the bcache before I
> > had learned how to get LVM to use a bcache device as a PV.
> >
> > -davidc
> > --
> > To unsubscribe from this list: send the line "unsubscribe linux-bcache" in
> > the body of a message to majordomo@...
> > More majordomo info at http://vger.kernel.org/majordomo-info.html
>
Hi Kent,
I am new to bcache and have a question relating to the above.
Resizing sounds pretty straight forward following the procedure you outlined
above when you are growing the disk. However, what would happen if you wanted
to shrink the backing device and had writeback enabled.
We would obviously shrink the filesystem first through the cash so any blocks in
the area beyond the new filesystem boundary that may still be dirty in the cache
would not matter any more.
Then we would unregister the backing store and truncate the backing store block
device before re-registering it.
I am wondering if any dirty blocks that are in the cache that are beyond the new
size of the backing device are going to cause a problem? It does not matter if
they are simply discarded since the filesystem was resized but would bcache know
what to do with them or could they cause a crash (or other undesirable effects)
due to bcache trying to write to blocks that no longer exist on the backing
device?
I hope that makes sense.
Many thanks,
James
next prev parent reply other threads:[~2012-11-01 19:06 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-04-11 22:47 Resizing bcache backing store David Rhodes Clymer
[not found] ` <CAB7K1hH_o7koST7RYTbw9ya0GMEvmpb=TYAt1MqEVDhtBdRd1Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2012-04-11 23:55 ` Kent Overstreet
2012-11-01 19:06 ` James Sefton [this message]
[not found] ` <loom.20121101T195722-160-eS7Uydv5nfjZ+VzJOa5vwg@public.gmane.org>
2012-11-02 15:20 ` 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=loom.20121101T195722-160@post.gmane.org \
--to=james-3k2nydb70utqxopxs62xeg@public.gmane.org \
--cc=linux-bcache-u79uwXL29TY76Z2rM5mHXA@public.gmane.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).