Displaying 12 results from an estimated 12 matches for "i_state".
Did you mean:
_state
2004 Sep 16
1
[PATCH] BUG on fsync/fdatasync with Ext3 data=journal
..."write: in
..." and "fsync: out ...".
The problem was occurred since 2.6.5-bk1, which includes the patch
"[PATCH] ext3 fsync() and fdatasync() speedup". We found that the
problem was solved by deleting the part of the patch which
modifies ext3_sync_file(). Maybe, i_state is not correctly set to
I_DIRTY when the related page cache is dirty (is it true?)
Attached file is tarball (tar + bzip2) which contains following
files. The patches are for 2.6.8.1-kernel (applicable to
2.6.9-rc2), and the results were also produced with
2.6.8.1-kernel.
- fsync.c.patch: patch f...
2009 Jun 09
2
[PATCH] OCFS2: fdatasync should skip unimportant metadata writeout
Hi.
In ocfs2, fdatasync and fsync are identical.
I think fdatasync should skip committing transaction when
inode->i_state is set just I_DIRTY_SYNC and this indicates
only atime or/and mtime updates.
Following patch improves fdatasync throughput.
#sysbench --num-threads=16 --max-requests=300000 --test=fileio
--file-block-size=4K --file-total-size=16G --file-test-mode=rndwr
--file-fsync-mode=fdatasync run
Results:
-...
2001 Jul 07
2
Bad unaligned kernel access with ext3 0.8.0
...2(t0)
fffffc0000883f78: 08 a1 7d a7 ldq t12,-24312(gp)
[...]
The ldl_l .... stl_c sequence can be identified as test_and_clear_bit() on
alpha.
So the faulting instruction is this line of fs/ext3/inode.c::ext3_bmap() :
if (test_and_clear_bit(EXT3_STATE_JDATA, &inode->u.ext3_i.i_state))
In fact ext3_i.i_state is a 16 bit aligned 16 bit value while
test_and_clear_bit() expects to work on aligned 32 bit quantities. Furthermore
the unaligned trap handler doesn't know how to handle the ldl_l.
How to fix it?
Weird side note: ext3 0.0.7 on kernel 2.4.5-ac22 worked without prob...
2009 Jun 08
1
[PATCH] Btrfs: fdatasync should skip metadata writeout
Hi.
In btrfs, fdatasync and fsync are identical.
I think fdatasync should skip committing transaction when
inode->i_state is set just I_DIRTY_SYNC and this indicates
only atime or/and mtime updates.
Following patch improves fdatasync throughput.
#sysbench --num-threads=16 --max-requests=10000 --test=fileio
--file-block-size=4K --file-total-size=16G --file-test-mode=rndwr
--file-fsync-mode=fdatasync run
Results:...
2009 Feb 20
2
[PATCH 1/1] OCFS2: add error check for ocfs2_read_locked_inode() call
...node *inode = NULL;
struct super_block *sb = osb->sb;
struct ocfs2_find_inode_args args;
+ int status;
mlog_entry("(blkno = %llu)\n", (unsigned long long)blkno);
@@ -142,7 +143,12 @@ struct inode *ocfs2_iget(struct ocfs2_su
* afterwards. */
if (inode && inode->i_state & I_NEW) {
mlog(0, "Inode was not in inode cache, reading it.\n");
- ocfs2_read_locked_inode(inode, &args);
+ status = ocfs2_read_locked_inode(inode, &args);
+ if (status) {
+ iput(inode);
+ inode = ERR_PTR(status);
+ goto bail;
+ }
unlock_new_inode(inode);
}...
2013 Nov 19
6
[PATCH] Btrfs: fix very slow inode eviction and fs unmount
...ithout the excessive merging and splitting.
+ */
+static void evict_inode_truncate_pages(struct inode *inode)
+{
+ struct extent_io_tree *io_tree = &BTRFS_I(inode)->io_tree;
+ struct extent_map_tree *map_tree = &BTRFS_I(inode)->extent_tree;
+ struct rb_node *node;
+
+ ASSERT(inode->i_state & I_FREEING);
+ truncate_inode_pages(&inode->i_data, 0);
+
+ write_lock(&map_tree->lock);
+ while (!RB_EMPTY_ROOT(&map_tree->map)) {
+ struct extent_map *em;
+
+ node = rb_first(&map_tree->map);
+ em = rb_entry(node, struct extent_map, rb_node);
+ remove_extent_m...
2016 Dec 13
1
Lowering the metadata attached to an instruction down to Pattern Instruction Selection pass
...t;fi#1>, 0, pred:1, pred:%noreg, 7;
mem:Volatile ST4[%x] IRF32:%vreg1
%vreg2<def> = LSU_LDO_i32_Myr2 <fi#1>, 0, pred:1, pred:%noreg, 7;
mem:Volatile LD4[%x] IRF32:%vreg2
%vreg3<def> = IAU_ADD_32_imm %vreg2<kill>, 1, pred:1, pred:%noreg,
%CC_IAU0<imp-def,dead>, %I_STATE<imp-def,dead>; IRF32:%vreg3,%vreg2
LSU_STO_i32_Myr2 %vreg3<kill>, <fi#1>, 0, pred:1, pred:%noreg, 7;
mem:Volatile ST4[%x] IRF32:%vreg3
%vreg4<def> = LSU_LDO_i32_Myr2 <fi#1>, 0, pred:1, pred:%noreg, 7;
mem:Volatile LD4[%x] IRF32:%vreg4
%I18<def> = COPY %vreg4...
2009 Aug 21
0
[GIT PULL] btrfs rb corruption fix
...b_node);
if (inode->i_ino < entry->vfs_inode.i_ino)
- p = &(*p)->rb_left;
+ p = &parent->rb_left;
else if (inode->i_ino > entry->vfs_inode.i_ino)
- p = &(*p)->rb_right;
+ p = &parent->rb_right;
else {
WARN_ON(!(entry->vfs_inode.i_state &
(I_WILL_FREE | I_FREEING | I_CLEAR)));
- break;
+ rb_erase(parent, &root->inode_tree);
+ RB_CLEAR_NODE(parent);
+ spin_unlock(&root->inode_lock);
+ goto again;
}
}
rb_link_node(&BTRFS_I(inode)->rb_node, parent, p);
@@ -3126,12 +3133,12 @@ static vo...
2011 Sep 05
1
Error on creating snapshots (btrfs: could not do orphan cleanup -116)
This happens on a freshly created btrfs filesystem in a raid10 (4x1TB)
configuration with three
subvolumes and 1.5 TB data.
When I try to snapshot one of the subvolumes (with 100 GB of data), it
says that the snapshot
creation failed and I get the following error message:
btrfs: could not do orphan cleanup -116
After the failure:
- The snapshot exists in `btrfs subvolume list''
- The
2009 Jun 18
8
Patches backported from mainline
All,
Please review the patches backported to 1.4 from mainline.
Sunil
2011 Jun 24
10
[PATCH 0/9] remove i_alloc_sem V2
i_alloc_sem has always been a bit of an odd "lock". It''s the only remaining
rw_semaphore that can be released by a different thread than the one that
locked it, and it''s use case in the core direct I/O code is more like a
counter given that the writers already have external serialization.
This series removes it in favour of a simpler counter scheme, thus getting
rid
2008 Jun 24
1
[RFC][PATCH] btrfs orphan code
...es[0], di, &location);
+
+ btrfs_free_path(path);
+ mutex_unlock(&root->fs_info->fs_mutex);
+
+ inode = btrfs_iget_locked(dir->i_sb, location.objectid, root);
+
+ if (!inode) {
+ inode = ERR_PTR(-EACCES);
+ goto out;
+ }
+
+ /* should technically always be true */
+ if (inode->i_state & I_NEW) {
+ BTRFS_I(inode)->root = root;
+ memcpy(&BTRFS_I(inode)->location, &location, sizeof(location));
+ btrfs_read_locked_inode(inode);
+ unlock_new_inode(inode);
+ }
+out:
+ return inode;
}
static int merge_extent_mapping(struct extent_map_tree *em_tree,
@@ -2737,6...