Displaying 16 results from an estimated 16 matches for "truncate_inode_pages".
2004 Jun 22
1
The truncate_inode_page call in ocfs_file_release causes the severethroughput drop of file reading in OCFS2.
Hi,
We have investigated the possible causes of the severe
throughput drop of file reading in OCFS2 that found in the iozone
benchmark. We find the major cause is the inadequate inode page cache
cleaning when open or close the last reference to an inode.
In routine ocfs_file_release(), if the caller is the last
reference to this inode, truncate_inode_page is called to invalidate all
page
2004 Jun 22
1
The truncate_inode_page call inocfs_file_releasecaus es the severethroughput drop of file reading in OCFS2.
=20
>-----Original Message-----
>From: ocfs2-devel-bounces@oss.oracle.com=20
>[mailto:ocfs2-devel-bounces@oss.oracle.com] On Behalf Of Wim Coekaerts
>Sent: 2004=C4=EA6=D4=C222=C8=D5 16:01
>To: Zhang, Sonic
>
>the problem is, how can we notify. I think we don't want to=20
>notify every
>node on every change othewise we overload the interconnect and we don't
2008 Jun 30
2
[BUGFIX][OCFS2 1/1] inode truncating
...rivate /
/keeps unchanged since last write./
/5) in cont_prepare_write() it dead loops since bytes(ip_mmu_private) is
not /
/increased in last prepare write./
BUG is described in
s://bug.oraclecorp.com/pls/bug/webbug_print.show?c_rptno=7183894.
solution:
/1) moves the clearing of page cache truncate_inode_pages() from
ocfs2_truncate_file() to/
/ocfs2_set_inode_size() after resizing inode size and i_blocks./
/2) in ocfs2_get_block(), add checks on iblock >= inode->i_blocks. if
true, return -EIO.
3) //a kernel bug fix is needed for 2.6.9 kernel.
//see https://bugzilla.redhat.com/show_bug.cgi?id=45...
2013 Nov 19
6
[PATCH] Btrfs: fix very slow inode eviction and fs unmount
...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_mapping(map_tree, em);
+ free_extent_map(...
2002 Aug 15
0
sys_ftruncate call lasting 17 hours on ext3 filesystem from mutt
...l, but thanks to a tip from Kevin Fenzi
I learned how to use sysrq to find out where the process was, viz:
18:03:10 kernel: mutt R current 1024 8893 7929 (NOTLB)
18:03:10 kernel: Call Trace: [<c0127061>] truncate_list_pages [kernel] 0x79
18:03:10 kernel: [<c01271ff>] truncate_inode_pages [kernel] 0x3b
18:03:10 kernel: [<c0124f2e>] vmtruncate [kernel] 0x96
18:03:10 kernel: [<c01491f0>] inode_setattr [kernel] 0x24
18:03:10 kernel: [<d401f963>] ext3_setattr [ext3] 0x1c3
18:03:10 kernel: [<d401d810>] ext3_get_block [ext3] 0x0
18:03:10 kernel: [<c012...
2004 Nov 13
1
samba and a kernel oops on nfsd
...20:29:37 torsa kernel: CPU: 1
Nov 10 20:29:37 torsa kernel: EIP: 0010:[__remove_inode_page+80/112]
<snip>
Nov 10 20:29:37 torsa kernel: Call Trace: [remove_inode_page+103/128]
[truncate_list_pages+560/704]
[e1000:__insmod_e1000_O/lib/modules/2.4.7-10smp/kernel/drivers/net+-1258
886/96] [truncate_inode_pages+94/192] [vmtruncate+180/576]
Nov 10 20:29:37 torsa kernel: Call Trace: [<c012b967>] [<c012bf30>]
[<f8873a7a>] [<c012c01e>] [<c01298b4>]
Nov 10 20:29:37 torsa kernel: [inode_setattr+38/224]
[e1000:__insmod_e1000_O/lib/modules/2.4.7-10smp/kernel/drivers/net+-1259
208/...
2010 Aug 20
0
[PATCH] ocfs2: Don't delete orphaned files if we are in the process of umount.
...gt;ip_flags & OCFS2_INODE_SKIP_ORPHAN_DIR))
+ mlog(0, "skip delete inode %llu because "
+ "umount has begun.\n",
+ (unsigned long long)OCFS2_I(inode)->ip_blkno);
+ else
+ delete = 1;
+ }
+
+ if (delete)
ocfs2_delete_inode(inode);
- } else {
+ else
truncate_inode_pages(&inode->i_data, 0);
- }
+
ocfs2_clear_inode(inode);
}
diff --git a/fs/ocfs2/ocfs2.h b/fs/ocfs2/ocfs2.h
index 70354a5..0544b0c 100644
--- a/fs/ocfs2/ocfs2.h
+++ b/fs/ocfs2/ocfs2.h
@@ -261,7 +261,7 @@ enum ocfs2_mount_options
#define OCFS2_OSB_SOFT_RO 0x0001
#define OCFS2_OSB_HARD_RO...
2006 Dec 29
3
[git patches] ocfs2 fixes
...if (filemap_fdatawrite(mapping)) {
mlog(ML_ERROR, "Could not sync inode %llu for downconvert!",
(unsigned long long)OCFS2_I(inode)->ip_blkno);
@@ -2725,7 +2734,6 @@ static int ocfs2_data_convert_worker(str
sync_mapping_buffers(mapping);
if (blocking == LKM_EXMODE) {
truncate_inode_pages(mapping, 0);
- unmap_mapping_range(mapping, 0, 0, 0);
} else {
/* We only need to wait on the I/O if we're not also
* truncating pages because truncate_inode_pages waits
diff --git a/fs/ocfs2/file.c b/fs/ocfs2/file.c
index 9fd590b..10953a5 100644
--- a/fs/ocfs2/file.c
+++ b/fs/ocfs2/f...
2002 Jan 24
1
Re: OOPS: kernel BUG at transaction.c:1857 on 2.4.17 while rm'ing 700mb file on ext3 partition.
...t;=====
> Trace; c015eb6e <journal_flushpage+9e/140>
> Trace; c0156ae2 <ext3_flushpage+22/30>
> Trace; c0125738 <do_flushpage+18/30>
> Trace; c0125762 <truncate_complete_page+12/50>
> Trace; c01258c6 <truncate_list_pages+126/190>
> Trace; c0125970 <truncate_inode_pages+40/70>
> Trace; c014485e <iput+ae/200>
> Trace; c0142e4c <d_delete+4c/70>
> Trace; c013c69c <vfs_unlink+13c/170>
> Trace; c013c778 <sys_unlink+a8/120>
> Trace; c0106e8a <system_call+32/38>
Well, that's a straight forward trace, and looks perfectl...
2002 Nov 11
1
update: sys_ftruncate call lasting 17 hours on ext3 filesystem from mutt
...l, but thanks to a tip from Kevin Fenzi
I learned how to use sysrq to find out where the process was, viz:
18:03:10 kernel: mutt R current 1024 8893 7929 (NOTLB)
18:03:10 kernel: Call Trace: [<c0127061>] truncate_list_pages [kernel] 0x79
18:03:10 kernel: [<c01271ff>] truncate_inode_pages [kernel] 0x3b
18:03:10 kernel: [<c0124f2e>] vmtruncate [kernel] 0x96
18:03:10 kernel: [<c01491f0>] inode_setattr [kernel] 0x24
18:03:10 kernel: [<d401f963>] ext3_setattr [ext3] 0x1c3
18:03:10 kernel: [<d401d810>] ext3_get_block [ext3] 0x0
18:03:10 kernel: [<c012...
2004 Jul 02
0
[Patch] We resolve the throughput drop problemwhe nr eading filesin OCFS2 volume in the patch "ocfs2-truncate-pages-1.patch"a gainstsvn 1226.
We are also thinking about locking for each read/write, but would its =
overhead be too high?
We have another idea that is extending the function of flock, lockf, =
fcntl to distributed.
So any application that need strict data consistent can do a lock =
operation on the whole or part of the file.
For ordinary application, maybe the current logic is enough.
How about it?
>-----Original
2009 Feb 06
2
Xen pv_ops domU :: BUG() in remove_from_page_cache()
...0c2b
Call Trace:
[<ffffffff810a8c67>] remove_from_page_cache+0x2b/0x38
[<ffffffff810b0b27>] truncate_complete_page+0x4c/0x61
[<ffffffff810b0c2b>] truncate_inode_pages_range+0xef/0x36e
[<ffffffff810b0eb7>] truncate_inode_pages+0xd/0x12
[<ffffffff810f0937>] dispose_list+0x3b/0xf8
[<ffffffff810f0ce1>] invalidate_inodes+0xdc/0xfa...
2002 May 31
2
PATCH for filesys corruption in ext3 with data=journal
...hed to disc, or they can
be invalidated. Either way they must be non-dirty before their
location on disc is allocated to another file. If not, they might
be flushed out to disc much later and overwrite something that has
since been allocate the same location on disc.
The pages are dealt with by truncate_inode_pages which ultimately
calls journal_flushpage on each page which inturn calls
journal_unmap_buffer.
For data=writeback the data block will not be attached to the journal
at all and the buffer is "Zapped" (marked as clean).
For data=ordered the data block can only be dirty if it is part of
t...
2008 Sep 04
4
[PATCH 0/3] ocfs2: Switch over to JBD2.
ocfs2 currently uses the Journaled Block Device (JBD) for its
journaling. This is a very stable and tested codebase. However, JBD
is limited by architecture to 32bit block numbers. This means an ocfs2
filesystem is limited to 2^32 blocks. With a 4K blocksize, that's 16TB.
People want larger volumes.
Fortunately, there is now JBD2. JBD2 adds 64bit block number support
and some other
2008 Dec 22
56
[git patches] Ocfs2 patches for merge window, batch 2/3
Hi,
This is the second batch of Ocfs2 patches intended for the merge window. The
1st batch were sent out previously:
http://lkml.org/lkml/2008/12/19/280
The bulk of this set is comprised of Jan Kara's patches to add quota support
to Ocfs2. Many of the quota patches are to generic code, which I carried to
make merging of the Ocfs2 support easier. All of the non-ocfs2 patches
should have
2008 Apr 02
10
[PATCH 0/62] Ocfs2 updates for 2.6.26-rc1
The following series of patches comprises the bulk of our outstanding
changes for Ocfs2.
Aside from the usual set of cleanups and fixes that were inappropriate for
2.6.25, there are a few highlights:
The '/sys/o2cb' directory has been moved to '/sys/fs/o2cb'. The new location
meshes better with modern sysfs layout. A symbolic link has been placed in
the old location so as to