btrfs as default filesystem for F22?

Thorsten Leemhuis fedora at leemhuis.info
Wed Oct 8 06:28:06 UTC 2014


Thorsten Leemhuis wrote on 08.10.2014 07:52:
> Josh Boyer wrote on 07.10.2014 21:15:
>> On Tue, Oct 7, 2014 at 2:24 PM, Josef Bacik <josef at toxicpanda.com> wrote:
>> […]
>>>> I think the point is somewhat valid though. To just keep repeating the
>>>> mantra 'its not ready' is not going to make it any more ready. If suse
>>>> can identify a stable subset of btrfs features and use it as their
>>>> default file system with those restrictions, why can't we do the same ?
>>>> The approach makes sense to me, at least...
>>> Because they still have the support staff for when users don't listen,
>>> Fedora doesn't.
>> As an aside, I looked at their 3.16.2-1.1.gdcee397 kernel-source SRPM.
>> I can't find any patches that limit btrfs usage.  I could totally be
>> wrong, but if someone knows of a patch that limits the features please
>> point me to it.
> 
> Due to a coincidence I yesterday took a quick look myself and didn't
> spot anything. But in case you haven't looked further: I found one in
> the SLE-Kernels:
> 
> http://kernel.opensuse.org/cgit/kernel-source/tree/patches.suse/btrfs-8888-add-allow_unsupported-module-parameter.patch?h=SLE11-SP3
> http://kernel.opensuse.org/cgit/kernel-source/tree/patches.suse/btrfs-8888-add-allow_unsupported-module-parameter.patch?h=SLE12

BTW & TWIMC, their solution to problems like this
http://aseigo.blogspot.de/2014/09/btrfs-rebalancing.html (ran into this
myself yesterday) seems to be a package called btrfsmaintenance that was
introduced a few days ago. Quoting
http://article.gmane.org/gmane.linux.suse.opensuse.devel/59787/
"""
> From: David Sterba <dsterba <at> suse.cz>
> Subject: Introduce btrfsmaintenance package to Factory
> Newsgroups: gmane.linux.suse.opensuse.devel
> Date: 2014-10-06 15:40:37 GMT (1 day, 14 hours and 40 minutes ago)
> 
> Hi,
> 
> let me introduce a new package that supplements the btrfs filesystem and aims
> to automate a few maintenance tasks. This means the scrub, balance, trim or
> defragmentation. The package comes from SLE12 where btrfs is going to be the
> default filesystem as well.
> 
> Each of the tasks can be turned on/off and configured independently. The
> default config values were selected to fit the default installation profile.
> 
> * scrub - go through all medatada/data and verify the checksums, default period
> is one month
> 
> * balance - the balance command can do a lot of things, in general moves data
> around in big chunks, here we use it to reclaim back the space of the
> underused chunks so it can be allocated again according to current needs
> 
> The point is to prevent some corner cases where it's not possible to eg.
> allocate new metadata chunks because the whole device space is reserved for all
> the chunks, although the total space occupied is smaller and the allocation
> should succeed.
> 
> * trim - run TRIM on the filesystem using the 'fstrim' utility, makes sense for
> SSD devices.
> 
> * defrag - run defrag on configured directories. This is for convenience and
> not necessary.
> 
> There's a separate defragmentation task that happens automatically and
> defragments only the RPM database files in /var/lib/rpm. This is done via a
> zypper plugin and the defrag pass triggers at the end of the installation.
> 
> This improves reading the RPM databases later, but the installation process
> fragments the files very quickly so it's not likely to bring a significant
> speedup here.
> 
> Cron takes care of periodic execution of the scripts, but they can be run any
> time directly from /usr/share/btrfs/maintenance/, respecting the configured
> values in /etc/sysconfig/btrfsmaintenance.
> 
> If the period is changed manually, the cron symlinks have to be refreshed, use
> "systemctl restart btrfsmaintenance-refresh" (or the
> "rcbtrfsmaintenance-refresh" shortcut). Changing the period via yast2 sysconfig
> editor triggers the refresh automatically.
> 
> The project lives in obs://filesystems/btrfsmaintenance and I'm going to submit
> it to Factory.
> 
> I'd like to ask volunteers to give it some testing.  Feedback is welcome.
> 
> Thanks,
> David
"""
The package in the opensuse obs:
https://build.opensuse.org/package/show/filesystems/btrfsmaintenance

Seems to mostly consist of shell scripts.

CU
knurd


More information about the devel mailing list