From: Jeff Liu <jeff.liu@oracle.com>
To: linux-btrfs@vger.kernel.org
Subject: mount a multi-device filesystem using a loopback device
Date: Wed, 07 Sep 2011 12:18:24 +0800 [thread overview]
Message-ID: <4E66F090.4030507@oracle.com> (raw)
Hello,
I was trying to create a multi-device Btrfs filesystem using two
loopback devices, by referring to the following page:
https://btrfs.wiki.kernel.org/index.php/Using_Btrfs_with_Multiple_Devices
However, I met a strange thing while mounting the first loop device
without any extra mount options,
1. Create and format two images, the 1st in 400Mbytes, and 2nd in
286Mbytes.
root@pibroch:/btrfs-progs# ls -lh /usr/src/linux-3.0/img*
-rw-r--r-- 1 jeff jeff 400M 2011-09-07 12:00 /usr/src/linux-3.0/img0
-rw-r--r-- 1 jeff jeff 286M 2011-09-07 12:00 /usr/src/linux-3.0/img1
root@pibroch:/btrfs-progs# mkfs.btrfs /usr/src/linux-3.0/img0
/usr/src/linux-3.0/img1
WARNING! - Btrfs v0.19-35-g1b444cd IS EXPERIMENTAL
WARNING! - see http://btrfs.wiki.kernel.org before using
failed to read /dev/sr0
failed to read /dev/sr0
adding device /usr/src/linux-3.0/img1 id 2
fs created label (null) on /usr/src/linux-3.0/img0
nodesize 4096 leafsize 4096 sectorsize 4096 size 685.50MB
Btrfs v0.19-35-g1b444cd
2. Setup the loopback manually:
root@pibroch:/btrfs-progs# losetup /dev/loop0 /usr/src/linux-3.0/img0
root@pibroch:/btrfs-progs# losetup /dev/loop1 /usr/src/linux-3.0/img1
root@pibroch:/btrfs-progs# losetup -a
/dev/loop0: [0802]:1736614 (/usr/src/linux-3.0/img0)
/dev/loop1: [0802]:1736726 (/usr/src/linux-3.0/img1)
3. Try to mount loop0, it will failed as below:
root@pibroch:/btrfs-progs# mount /dev/loop0 /mnt
mount: wrong fs type, bad option, bad superblock on /dev/loop0,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so
4. Try to mount loop1, it works:
root@pibroch:/btrfs-progs# mount /dev/loop1 /mnt
root@pibroch:/btrfs-progs# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 46G 23G 21G 52% /
none 896M 700K 895M 1% /dev
none 957M 80K 957M 1% /dev/shm
none 957M 104K 957M 1% /var/run
none 957M 0 957M 0% /var/lock
/dev/loop1 686M 56K 493M 1% /mnt
5. umount loop1, and try to mount loop0 again, it works at this time:
root@pibroch:/btrfs-progs# umount /mnt
root@pibroch:/btrfs-progs# mount /dev/loop0 /mnt
root@pibroch:/btrfs-progs# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 46G 23G 21G 52% /
none 896M 700K 895M 1% /dev
none 957M 80K 957M 1% /dev/shm
none 957M 104K 957M 1% /var/run
none 957M 0 957M 0% /var/lock
/dev/loop0 686M 56K 493M 1% /mnt
According to my debugging result, for the 1st time, mount loop0 failed
at around volumes.c:3468:
map->stripes[i].dev = btrfs_find_device(root, devid, uuid,
NULL);
if (!map->stripes[i].dev && !btrfs_test_opt(root,
DEGRADED)) {
kfree(map);
free_extent_map(em);
return -EIO;
So I repeat the above steps again, and try to mount loop0 with "-o
degraded" option, it works as expected:
root@pibroch:/btrfs-progs# mount -o degraded /dev/loop0 /mnt
root@pibroch:/btrfs-progs# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 46G 23G 21G 52% /
none 896M 700K 895M 1% /dev
none 957M 140K 957M 1% /dev/shm
none 957M 104K 957M 1% /var/run
none 957M 0 957M 0% /var/lock
/dev/loop0 686M 56K 136M 1% /mnt
kernel version 3.1.0-rc2+.
Is it a bug? or Am I missing something?
Thanks,
-Jeff
next reply other threads:[~2011-09-07 4:18 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-09-07 4:18 Jeff Liu [this message]
2011-09-07 4:37 ` mount a multi-device filesystem using a loopback device cwillu
2011-09-07 6:44 ` Jeff Liu
2011-09-08 5:32 ` C Anthony Risinger
2011-09-08 6:31 ` Jeff Liu
[not found] ` <4E670FB8.4000705@cn.fujitsu.com>
2011-09-07 6:42 ` Jeff Liu
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=4E66F090.4030507@oracle.com \
--to=jeff.liu@oracle.com \
--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.