search for: btrfs_log_inode_parent

Displaying 6 results from an estimated 6 matches for "btrfs_log_inode_parent".

2013 Jan 10
0
[PATCH 02/11] Btrfs: use atomic for fs_info->last_trans_committed
...gt;generation > root->fs_info->last_trans_committed) { + BTRFS_I(inode)->generation > + atomic64_read(&root->fs_info->last_trans_committed)) { ret = btrfs_commit_inode_delayed_items(trans, inode); if (ret) { btrfs_free_path(path); @@ -3738,7 +3739,8 @@ int btrfs_log_inode_parent(struct btrfs_trans_handle *trans, struct super_block *sb; struct dentry *old_parent = NULL; int ret = 0; - u64 last_committed = root->fs_info->last_trans_committed; + u64 last_committed = atomic64_read( + &root->fs_info->last_trans_committed); sb = inode->i_sb;...
2013 Jan 10
0
[PATCH 03/11] Btrfs: use atomic for fs_info->last_trans_log_full_commit
...re any commits to the log are forced * to be full commits */ - root->fs_info->last_trans_log_full_commit = - trans->transid; + atomic64_set(&root->fs_info->last_trans_log_full_commit, + trans->transid); ret = 1; break; } @@ -3749,7 +3754,7 @@ int btrfs_log_inode_parent(struct btrfs_trans_handle *trans, goto end_no_trans; } - if (root->fs_info->last_trans_log_full_commit > + if (atomic64_read(&root->fs_info->last_trans_log_full_commit) > atomic64_read(&root->fs_info->last_trans_committed)) { ret = 1; goto end_no_t...
2013 Apr 13
0
btrfs crash (and softlockup btrfs-endio-wri)
...:05:54 datastore01 kernel: [1210991.390794] [<ffffffffa03f4740>] btrfs_log_inode+0x420/0x6f0 [btrfs] Apr 13 04:05:54 datastore01 kernel: [1210991.390800] [<ffffffff8113fe14>] ? __pagevec_release+0x24/0x40 Apr 13 04:05:54 datastore01 kernel: [1210991.390816] [<ffffffffa03f569b>] btrfs_log_inode_parent+0x17b/0x450 [btrfs] Apr 13 04:05:54 datastore01 kernel: [1210991.390831] [<ffffffffa03f59b7>] btrfs_log_dentry_safe+0x47/0x70 [btrfs] Apr 13 04:05:54 datastore01 kernel: [1210991.390846] [<ffffffffa03cc3c7>] btrfs_sync_file+0x167/0x230 [btrfs] Apr 13 04:05:54 datastore01 kernel: [1210...
2011 Aug 26
0
[PATCH] Btrfs: make some functions return void
...ns_handle *trans, struct btrfs_root *root, const char *name, int name_len, struct inode *inode, u64 dirid); -int btrfs_end_log_trans(struct btrfs_root *root); +void btrfs_end_log_trans(struct btrfs_root *root); int btrfs_pin_log_trans(struct btrfs_root *root); int btrfs_log_inode_parent(struct btrfs_trans_handle *trans, struct btrfs_root *root, struct inode *inode, diff --git a/fs/btrfs/volumes.c b/fs/btrfs/volumes.c index f2a4cc7..9a88e98 100644 --- a/fs/btrfs/volumes.c +++ b/fs/btrfs/volumes.c @@ -65,7 +65,7 @@ static void free_fs_devices(struct btrfs_fs_devices *fs_devic...
2011 Jun 21
19
[GIT PULL v3] Btrfs: improve write ahead log with sub transaction
I''ve been working to try to improve the write-ahead log''s performance, and I found that the bottleneck addresses in the checksum items, especially when we want to make a random write on a large file, e.g a 4G file. Then a idea for this suggested by Chris is to use sub transaction ids and just to log the part of inode that had changed since either the last log commit or the last
2011 Oct 04
68
[patch 00/65] Error handling patchset v3
Hi all - Here''s my current error handling patchset, against 3.1-rc8. Almost all of this patchset is preparing for actual error handling. Before we start in on that work, I''m trying to reduce the surface we need to worry about. It turns out that there is a ton of code that returns an error code but never actually reports an error. The patchset has grown to 65 patches. 46 of them