User: Password:
Subscribe / Log in / New account

The two sides of reflink()

The two sides of reflink()

Posted May 6, 2009 0:49 UTC (Wed) by JoeBuck (guest, #2330)
In reply to: The two sides of reflink() by martinfick
Parent article: The two sides of reflink()

You'd need flags in the filesystem that would prevent the filesystem from being mounted by a kernel that lacks the needed feature.

(Log in to post comments)

The two sides of reflink()

Posted May 6, 2009 5:59 UTC (Wed) by tialaramex (subscriber, #21167) [Link]

Specifically the ext filesystem family contains two sets of bit flags for this purpose. Each bit represents a feature which a particular implementation may or may not be aware of. Implementations are supposed to check one set before attempting to mount the filesystem at all, and another set in addition if the mount is read-write.

It also contains per-inode flags, so that implementations can be warned that they're missing a feature needed to read or update a particular file, in this case the implementation should fail open() for that file.

Of course poor quality implementations from third parties may be missing some or all of these checks. Fortunately the worst implementation I'm aware of as of this moment is read-only, so any problems only occur when reading files with that implementation and if/when they reboot into Linux everything is fine again.

Copyright © 2017, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds