Re: mount a multi-device filesystem using a loopback device

2011-09-08 Thread Jeff Liu

On 09/08/2011 01:32 PM, C Anthony Risinger wrote:

On Wed, Sep 7, 2011 at 1:44 AM, Jeff Liujeff@oracle.com  wrote:

On 09/07/2011 12:37 PM, cwillu wrote:

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

Very small btrfs filesystem require special handling, mixed block
groups in particular, which I believe also requires an updated mkfs
from the integration repo.

Thanks for your response, however, even if I enlarged the image size to 2G,
still got no luck.
Per Zefan's comments, run 'btrfs device scan' fixed this issue.

you should be able to achieve this via `device=` mount option(s?) as well:

https://btrfs.wiki.kernel.org/index.php/Getting_started#Mount_Options

... for completeness :-) ... and posterity or whatever.

Nice, thanks for your sharing. 8-)

-Jeff

C Anthony
--
To unsubscribe from this list: send the line unsubscribe linux-btrfs in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


--
To unsubscribe from this list: send the line unsubscribe linux-btrfs in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: mount a multi-device filesystem using a loopback device

2011-09-07 Thread Jeff Liu


On 09/07/2011 02:31 PM, Li Zefan wrote:

Is it a bug? or Am I missing something?


You need to run this before mounting the devices:

   # btrfs device scan

Thank you, it works by executing device scan.

-Jeff
--
To unsubscribe from this list: send the line unsubscribe linux-btrfs in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: mount a multi-device filesystem using a loopback device

2011-09-07 Thread Jeff Liu

On 09/07/2011 12:37 PM, cwillu wrote:

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

Very small btrfs filesystem require special handling, mixed block
groups in particular, which I believe also requires an updated mkfs
from the integration repo.
Thanks for your response, however, even if I enlarged the image size to 
2G, still got no luck.

Per Zefan's comments, run 'btrfs device scan' fixed this issue.

-Jeff

--
To unsubscribe from this list: send the line unsubscribe linux-btrfs in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


--
To unsubscribe from this list: send the line unsubscribe linux-btrfs in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: mount a multi-device filesystem using a loopback device

2011-09-07 Thread C Anthony Risinger
On Wed, Sep 7, 2011 at 1:44 AM, Jeff Liu jeff@oracle.com wrote:
 On 09/07/2011 12:37 PM, cwillu wrote:

 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

 Very small btrfs filesystem require special handling, mixed block
 groups in particular, which I believe also requires an updated mkfs
 from the integration repo.

 Thanks for your response, however, even if I enlarged the image size to 2G,
 still got no luck.
 Per Zefan's comments, run 'btrfs device scan' fixed this issue.

you should be able to achieve this via `device=` mount option(s?) as well:

https://btrfs.wiki.kernel.org/index.php/Getting_started#Mount_Options

... for completeness :-) ... and posterity or whatever.

C Anthony
--
To unsubscribe from this list: send the line unsubscribe linux-btrfs in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


mount a multi-device filesystem using a loopback device

2011-09-06 Thread Jeff Liu

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
FilesystemSize  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/loop1686M   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
FilesystemSize  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/loop0686M   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
FilesystemSize  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/loop0686M   56K  136M   1% /mnt


kernel version 3.1.0-rc2+.

Is it a bug? or Am I missing something?


Thanks,
-Jeff
--
To unsubscribe from this list: send the line unsubscribe linux-btrfs in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: mount a multi-device filesystem using a loopback device

2011-09-06 Thread cwillu
 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

Very small btrfs filesystem require special handling, mixed block
groups in particular, which I believe also requires an updated mkfs
from the integration repo.
--
To unsubscribe from this list: send the line unsubscribe linux-btrfs in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html