[Btrfs-devel] transaction ioctls

Evgeniy Polyakov johnpol at 2ka.mipt.ru
Wed Apr 23 06:15:08 PDT 2008


On Wed, Apr 23, 2008 at 09:07:28AM -0400, Chris Mason (chris.mason at oracle.com) wrote:
> But, userland expects things not to be undone.  Picture two procs operating in 
> a directory.  One proc calls fsync and gets assurance from the FS that things 
> are on disk.  The other proc calls rollback and undoes the fsync.  The posix 
> API isn't built around this.

Rollback happens on transaction, so first application called fsync in
own trasaction, which flushed data to disk, while second thread has own
trasaction, and that data will be removed, while data written in first
transaction is still on disk.

> There are definitely cases where the admin will want to be able to run a 
> command to shift the FS state back to some time in the past.  But, it needs 
> to be an admin level tool where the complex interactions between procs are 
> well understood (by the admin).

Well, to allow or not to allow transaction mechanism to users is the
last question imho, from security point of view it can be limited to
admin only, although if transaction is only a label to operation, then
it can be allowed to be done for users too...

-- 
	Evgeniy Polyakov



More information about the Btrfs-devel mailing list