All of lore.kernel.org
 help / color / mirror / Atom feed
From: Eric Sandeen <sandeen@redhat.com>
To: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>
Cc: linux-btrfs@vger.kernel.org, chris.mason@fusionio.com
Subject: Re: [PATCH 0/2] btrfs-progs: prevent mkfs from aborting with small volume
Date: Mon, 26 Aug 2013 09:23:38 -0500	[thread overview]
Message-ID: <521B64EA.2080106@redhat.com> (raw)
In-Reply-To: <52170114.7060604@jp.fujitsu.com>

On 8/23/13 1:28 AM, Hidetoshi Seto wrote:
> I found that mkfs.btrfs aborts when one of assigned volume is too small.
> Here are 2 patches to fix 2 independent problems.
> Both are based on top of Chris's btrfs-progs.git:
> 
>   git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-progs.git
> 
> Thanks,
> H.Seto
> 

Thanks for looking into this - how small of a device did you test?

I tried a 2MB device w/ these 2 patches and still got:

[btrfs-progs]# truncate --size=2m testfile
[btrfs-progs]# ./mkfs.btrfs testfile

WARNING! - Btrfs v0.20-rc1-360-geeeb4e9 IS EXPERIMENTAL
WARNING! - see http://btrfs.wiki.kernel.org before using

SMALL VOLUME: forcing mixed metadata/data groups
mkfs.btrfs: volumes.c:857: btrfs_alloc_chunk: Assertion `!(ret)' failed.
Aborted (core dumped)

which was at:

                ret = btrfs_alloc_dev_extent(trans, device,
                             info->chunk_root->root_key.objectid,
                             BTRFS_FIRST_CHUNK_TREE_OBJECTID, key.offset,
                             calc_size, &dev_offset);
                BUG_ON(ret);

:(

Also, I'm curious - I know the code existed before your patch 2/2,
but I don't understand why it reserves 1MB for the first superblock 
when the first superblock is actually at 64k.  Any idea?

-Eric


> Hidetoshi Seto (2):
>       btrfs-progs: treat reserved 1MB for superblock properly
>       btrfs-progs: exit if there is not enough free space for mkfs
> 
>  ctree.h   |    3 +++
>  mkfs.c    |    4 ++++
>  volumes.c |    7 ++++++-
>  3 files changed, 13 insertions(+), 1 deletions(-)
> 


  parent reply	other threads:[~2013-08-26 14:23 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-08-23  6:28 [PATCH 0/2] btrfs-progs: prevent mkfs from aborting with small volume Hidetoshi Seto
2013-08-23  6:30 ` [PATCH 1/2] btrfs-progs: treat reserved 1MB for superblock properly Hidetoshi Seto
2013-08-23  6:31 ` [PATCH 2/2] btrfs-progs: exit if there is not enough free space for mkfs Hidetoshi Seto
2013-08-26 14:23 ` Eric Sandeen [this message]
2013-08-28  5:01   ` [PATCH 0/2] btrfs-progs: prevent mkfs from aborting with small volume Hidetoshi Seto
2013-08-29 16:11     ` Eric Sandeen
2013-08-30 23:10       ` David Sterba

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=521B64EA.2080106@redhat.com \
    --to=sandeen@redhat.com \
    --cc=chris.mason@fusionio.com \
    --cc=linux-btrfs@vger.kernel.org \
    --cc=seto.hidetoshi@jp.fujitsu.com \
    /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.