On Tue, May 26, 2015 at 08:36:34PM +0300, Lennert Buytenhek wrote: > Hi! > > The btrfs filesystem on my newly installed laptop has managed to > hose itself rather thoroughly, and it's now in a state where it > works okay if you don't write too much to it, but if you do, it > starts returning -ENOSPC on a random subset of your filesystem > operations until you let it cool down again. > > This was a fresh Fedora 21 install, upgraded to F22, installed > about a month ago, with a ~250G btrfs filesystem on a 256G SSD, > and this system has only even run 4.0, and it has never had more > than ~60G on it. It's currently running: > > # uname -a > Linux foobox 4.0.1-300.fc22.x86_64 #1 SMP Wed Apr 29 15:48:25 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux > > # btrfs --version > btrfs-progs v4.0 > > # btrfs fi show > Label: 'foobox' uuid: [...] > Total devices 1 FS bytes used 58.87GiB > devid 1 size 229.97GiB used 229.97GiB path /dev/[...] All the space has been allocated for some purpose. > # btrfs fi df / > Data, single: total=227.94GiB, used=58.16GiB > System, DUP: total=8.00MiB, used=48.00KiB > System, single: total=4.00MiB, used=0.00B > Metadata, DUP: total=1.00GiB, used=730.80MiB > Metadata, single: total=8.00MiB, used=0.00B > GlobalReserve, single: total=256.00MiB, used=0.00B For a filesystem of this size, a very small proportion has gone to metadata for some reason. This is odd. Given that it's happened, though, all the other behaviour is as expected. > It's currently still in a funky state: > > [root@foobox lib]# df / > Filesystem 1K-blocks Used Available Use% Mounted on > /dev/dm-0 241145856 62743256 178027464 27% / Looks reasonable, give the figures above. > [root@foobox lib]# pwd > /var/lib > [root@foobox lib]# touch foo > [root@foobox lib]# rm -f foo > [root@foobox lib]# ls -ald abrt > drwxr-xr-x. 1 root root 56 May 21 10:02 abrt > [root@foobox lib]# mv abrt abrt2 > mv: cannot move ‘abrt’ to ‘abrt2’: No space left on device > [root@foobox lib]# > > Any tests anyone wants to run on this before I wipe and reinstall > the box? No tests needed. Just run a filtered balance on it to clean up unused chunks: # btrfs balance start -dusage=5 / as suggested in the FAQ [1]. Hugo. [1] https://btrfs.wiki.kernel.org/index.php/FAQ#if_your_device_is_large_.28.3E16GiB.29 -- Hugo Mills | Two things came out of Berkeley in the 1960s: LSD hugo@... carfax.org.uk | and Unix. This is not a coincidence. http://carfax.org.uk/ | PGP: E2AB1DE4 |
Attachment:
signature.asc
Description: Digital signature
