[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: balancing metadata fails with no space left on device



Am Fri, 4 May 2012 18:35:39 +0200
schrieb Martin Steigerwald <Martin@xxxxxxxxxxxx>:

> Hi!
> 
> merkaba:~> btrfs balance start -m /
> ERROR: error during balancing '/' - No space left on device
> There may be more info in syslog - try dmesg | tail
> merkaba:~#19> dmesg | tail -22
> [   62.918734] CPU0: Package power limit normal
> [  525.229976] btrfs: relocating block group 20422066176 flags 1
> [  526.940452] btrfs: found 3048 extents
> [  528.803778] btrfs: found 3048 extents
> [  528.988440] btrfs: relocating block group 17746100224 flags 34
> [  529.116424] btrfs: found 1 extents
> [  529.247866] btrfs: relocating block group 17611882496 flags 36
> [  536.003596] btrfs: found 14716 extents
> [  536.170073] btrfs: relocating block group 17477664768 flags 36
> [  542.230713] btrfs: found 13170 extents
> [  542.353089] btrfs: relocating block group 17343447040 flags 36
> [  547.446369] btrfs: found 9809 extents
> [  547.663141] btrfs: 1 enospc errors during balance
> [  629.238168] btrfs: relocating block group 21894266880 flags 34
> [  629.359284] btrfs: found 1 extents
> [  629.520614] btrfs: 1 enospc errors during balance
> [  630.715766] btrfs: relocating block group 21927821312 flags 34
> [  630.749973] btrfs: found 1 extents
> [  630.899621] btrfs: 1 enospc errors during balance
> [  635.872857] btrfs: relocating block group 21961375744 flags 34
> [  635.906517] btrfs: found 1 extents
> [  636.038096] btrfs: 1 enospc errors during balance
> 
> 
> merkaba:~> btrfs filesystem show
> failed to read /dev/sr0
> Label: 'debian'  uuid: […]
>         Total devices 1 FS bytes used 7.89GB
>         devid    1 size 18.62GB used 17.58GB path /dev/dm-0
> 
> 
> Btrfs Btrfs v0.19
> merkaba:~> btrfs filesystem df /
> Data: total=15.52GB, used=7.31GB
> System, DUP: total=32.00MB, used=4.00KB
> System: total=4.00MB, used=0.00
> Metadata, DUP: total=1.00GB, used=587.83MB
> 
> 
> This is repeatable.
> 
> martin@merkaba:~> cat /proc/version
> Linux version 3.3.0-trunk-amd64 (Debian 3.3.4-1~experimental.1)
> (debian- kernel  AT  lists.debian.org) (gcc version 4.6.3 (Debian
> 4.6.3-1) ) #1 SMP Wed May 2 06:54:24 UTC 2012
> 
> 
> Which is Debian´s variant of 3.3.4 with
> 
> commit bfe050c8857bbc0cd6832c8bf978422573c439f5
> Author: Chris Mason <chris.mason  AT  oracle.com>
> Date:   Thu Apr 12 13:46:48 2012 -0400
> 
>     Revert "Btrfs: increase the global block reserve estimates"
>     
>     commit 8e62c2de6e23e5c1fee04f59de51b54cc2868ca5 upstream.
>     
>     This reverts commit 5500cdbe14d7435e04f66ff3cfb8ecd8b8e44ebf.
>     
>     We've had a number of complaints of early enospc that bisect down
>     to this patch.  We'll hae to fix the reservations differently.
>     
>     Signed-off-by: Chris Mason <chris.mason  AT  oracle.com>
>     Signed-off-by: Greg Kroah-Hartman <gregkh  AT
> linuxfoundation.org>
> 
> from 3.3.3.
> 
> May I need to wait for a proper fix to global block reserve for the
> balance to succeed or do I see a different issue?
> 
> 
> Since scrubbing still works I take it that balancing was aborted 
> gracefully and thus the filesystem is still intact. This is on a
> ThinkPad T520 with Intel SSD 320. I only wanted to reorder metadata
> trees, I do not think it makes much sense to relocate data blocks on
> a SSD. Maybe the reordering metadata blocks may not make much sense
> also, but I thought I still report this.
> 
> Thanks,

Hi,
I think I have a similar problem, but in my case there is lots of free
space available. So this might also be a bug.

My problem: I wanted to convert the data of my btrfs from RAID0 to
single. No matter if I use soft or not, the progress always stops with
3GB RAID0 remaining. The conversion is newer completed so new files are
allways written to the RAID0 part of data. If i do a balance without
special options, data is converted back to RAID0.
This enospc error can't be correct because there is about 1 TB of space
available.

What I do:
# ./btrfs balance start -dconvert=single,soft /mnt/btrfs/
ERROR: error during balancing '/mnt/btrfs/' - No space left on device
There may be more info in syslog - try dmesg | tail

Relevant Dmesg:
[418912.485276] btrfs: relocating block group 11165392437248 flags 9
[418914.044328] btrfs: 1 enospc errors during balance

FS Information:
# ./btrfs filesystem show
Label: none  uuid: 0251aa44-4e39-4db5-b18d-ffc8e85042ab
        Total devices 3 FS bytes used 2.24TB
        devid    1 size 1.82TB used 1.59TB path /dev/sdc1
        devid    3 size 931.51GB used 696.06GB path /dev/sdd1
        devid    2 size 931.51GB used 696.00GB path /dev/sdb1

Btrfs Btrfs v0.19-dirty

# ./btrfs filesystem df /mnt/btrfs/
Data, RAID0: total=3.00GB, used=3.00GB
Data: total=2.80TB, used=2.24TB
System, RAID1: total=64.00MB, used=328.00KB
System: total=4.00MB, used=0.00
Metadata, RAID1: total=75.00GB, used=2.94GB

# cat /proc/version
Linux version 3.4.0-rc5-amd64 (root@hermes) (gcc version 4.6.3 (Debian
4.6.3-1) ) #1 SMP Tue May 1 23:52:34 CEST 2012

So long,
Robi

Attachment: signature.asc
Description: PGP signature


[Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]    [Yosemite Photos]    [Free Online Dating]     [Linux Kernel]     [Linux SCSI]     [XFree86]

Add to Google Powered by Linux