btrfs-progs/Documentation
Chandan Rajendra c11e36a29e Btrfs-progs: Do not force mixed block group creation unless '-M' option is specified
When creating small Btrfs filesystem instances (i.e. filesystem size <= 1GiB),
mkfs.btrfs fails if both sectorsize and nodesize are specified on the command
line and sectorsize != nodesize, since mixed block groups involves both data
and metadata blocks sharing the same block group. This is an incorrect behavior
when '-M' option isn't specified on the command line.

This commit makes optional the creation of mixed block groups i.e. Mixed block
groups are created only when -M option is specified on the command line.

Since we now allow small filesystem instances with sectorsize != nodesize to
be created, we can end up in the following situation,

[root@localhost ~]# mkfs.btrfs -f -n 65536 /dev/loop0
btrfs-progs v3.19-rc2-405-g976307c
See http://btrfs.wiki.kernel.org for more information.

Performing full device TRIM (512.00MiB) ...
Label:              (null)
UUID:               49fab72e-0c8b-466b-a3ca-d1bfe56475f0
Node size:          65536
Sector size:        4096
Filesystem size:    512.00MiB
Block group profiles:
  Data:             single            8.00MiB
  Metadata:         DUP              40.00MiB
  System:           DUP              12.00MiB
SSD detected:       no
Incompat features:  extref, skinny-metadata
Number of devices:  1
Devices:
   ID        SIZE  PATH
    1   512.00MiB  /dev/loop0
[root@localhost ~]# mount /dev/loop0 /mnt/
mount: mount /dev/loop0 on /mnt failed: No space left on device

The ENOSPC occurs during the creation of the UUID tree. This is because of
things like large metadata block size, DUP mode used for metadata and global
reservation consuming space. Also, large nodesize does not make sense on small
filesystems, hence this should not be an issue.

Signed-off-by: Chandan Rajendra <chandan@linux.vnet.ibm.com>
Signed-off-by: David Sterba <dsterba@suse.com>
2015-11-02 09:35:04 +01:00
..
asciidoc.conf btrfs-progs: Documentation: fix broken conversion 2015-01-09 18:36:50 +01:00
btrfs-balance.asciidoc btrfs-progs: Documentaion: rename to .asciidoc 2015-04-14 17:41:27 +02:00
btrfs-check.asciidoc btrfs-progs: check: add progress indicator 2015-10-21 14:29:26 +02:00
btrfs-convert.asciidoc btrfs-progs: Documentaion: rename to .asciidoc 2015-04-14 17:41:27 +02:00
btrfs-debug-tree.asciidoc btrfs-progs: Documentaion: rename to .asciidoc 2015-04-14 17:41:27 +02:00
btrfs-device.asciidoc btrfs-progs: alias btrfs device delete to btrfs device remove 2015-06-26 16:33:39 +02:00
btrfs-filesystem.asciidoc btrfs-progs: inspect: add command min-dev-size 2015-08-31 19:25:08 +02:00
btrfs-find-root.asciidoc btrfs-progs: Documentaion: rename to .asciidoc 2015-04-14 17:41:27 +02:00
btrfs-image.asciidoc btrfs-progs: Documentaion: rename to .asciidoc 2015-04-14 17:41:27 +02:00
btrfs-inspect-internal.asciidoc btrfs-progs: inspect: add command min-dev-size 2015-08-31 19:25:08 +02:00
btrfs-map-logical.asciidoc btrfs-progs: Documentaion: rename to .asciidoc 2015-04-14 17:41:27 +02:00
btrfs-mount.asciidoc btrfs-progs: docs: add option variants, defaults and versions to mount options 2015-09-15 00:40:00 +02:00
btrfs-property.asciidoc btrfs-progs: Documentaion: rename to .asciidoc 2015-04-14 17:41:27 +02:00
btrfs-qgroup.asciidoc btrfs-progs: doc: update qgroup docs 2015-08-31 19:25:11 +02:00
btrfs-quota.asciidoc btrfs-progs: Documentaion: rename to .asciidoc 2015-04-14 17:41:27 +02:00
btrfs-receive.asciidoc btrfs-progs: specify mountpoint for recieve 2015-06-02 17:35:43 +02:00
btrfs-replace.asciidoc Documentation: update btrfs-replace manual to support RAID5/6 2015-07-14 17:25:27 +02:00
btrfs-rescue.asciidoc btrfs-progs: doc: update btrfs-rescue page and drop btrfs-zero-log 2015-06-04 15:56:23 +02:00
btrfs-restore.asciidoc btrfs-progs: restore: add more long option variants 2015-05-14 15:41:06 +02:00
btrfs-scrub.asciidoc btrfs-progs: Documentaion: rename to .asciidoc 2015-04-14 17:41:27 +02:00
btrfs-select-super.asciidoc btrfs-progs: doc: document btrfs-select-super(8) 2015-09-02 18:56:54 +02:00
btrfs-send.asciidoc btrfs-progs: send: add option to for the no-data mode 2015-06-12 16:44:47 +02:00
btrfs-show-super.asciidoc btrfs-progs: Documentaion: rename to .asciidoc 2015-04-14 17:41:27 +02:00
btrfs-subvolume.asciidoc btrfs-progs: subvol: let sync check only current deletions 2015-06-09 18:18:19 +02:00
btrfs.asciidoc btrfs-progs: doc: fix short explanation of restore in btrfs 2015-07-01 15:28:14 +02:00
btrfstune.asciidoc btrfs-progs: doc: update btrfstune manpage 2015-06-03 12:52:56 +02:00
fsck.btrfs.asciidoc btrfs-progs: Documentaion: rename to .asciidoc 2015-04-14 17:41:27 +02:00
Makefile.in btrfs-progs: docs: add html build target 2015-11-02 09:35:00 +01:00
manpage-base.xsl btrfs-progs: Introduce asciidoc based man page and btrfs man page. 2014-04-22 14:15:19 +02:00
manpage-bold-literal.xsl btrfs-progs: Introduce asciidoc based man page and btrfs man page. 2014-04-22 14:15:19 +02:00
manpage-normal.xsl btrfs-progs: Introduce asciidoc based man page and btrfs man page. 2014-04-22 14:15:19 +02:00
mkfs.btrfs.asciidoc Btrfs-progs: Do not force mixed block group creation unless '-M' option is specified 2015-11-02 09:35:04 +01:00