2008/1/21, Christian Hesse <[EMAIL PROTECTED]>:
> Back in early december I reported the problem for btrfs 0.9. Seems like the
> lockfs call still is not implemented. Any hints what I need when I try to
> code it myself?

Please try this dirty patch.  I think it can solve your problem.

Regards
YZ
---
diff -r ac53d7df4c11 super.c
--- a/super.c   Thu Jan 17 12:58:00 2008 -0500
+++ b/super.c   Mon Jan 21 17:10:00 2008 +0800
@@ -423,6 +423,18 @@ static struct file_system_type btrfs_fs_
        .fs_flags       = FS_REQUIRES_DEV,
 };

+static void btrfs_write_super_lockfs(struct super_block *sb)
+{
+       struct btrfs_root *root = btrfs_sb(sb);
+       btrfs_transaction_flush_work(root);
+}
+
+static void btrfs_unlockfs(struct super_block *sb)
+{
+       struct btrfs_root *root = btrfs_sb(sb);
+       btrfs_transaction_queue_work(root, HZ * 30);
+}
+
 static struct super_operations btrfs_super_ops = {
        .delete_inode   = btrfs_delete_inode,
        .put_inode      = btrfs_put_inode,
@@ -435,6 +447,8 @@ static struct super_operations btrfs_sup
        .alloc_inode    = btrfs_alloc_inode,
        .destroy_inode  = btrfs_destroy_inode,
        .statfs         = btrfs_statfs,
+       .write_super_lockfs = btrfs_write_super_lockfs,
+       .unlockfs       = btrfs_unlockfs,
 };

 static int __init init_btrfs_fs(void)
-
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to