Displaying 11 results from an estimated 11 matches for "ocfs2_sparse_alloc".
2009 Mar 11
1
[PATCH] ocfs2: Fix a bug found by sparse check.
...)
diff --git a/fs/ocfs2/alloc.c b/fs/ocfs2/alloc.c
index 3a9e5de..19e3a96 100644
--- a/fs/ocfs2/alloc.c
+++ b/fs/ocfs2/alloc.c
@@ -176,7 +176,8 @@ static int ocfs2_dinode_insert_check(struct inode *inode,
BUG_ON(OCFS2_I(inode)->ip_dyn_features & OCFS2_INLINE_DATA_FL);
mlog_bug_on_msg(!ocfs2_sparse_alloc(osb) &&
- (OCFS2_I(inode)->ip_clusters != rec->e_cpos),
+ (OCFS2_I(inode)->ip_clusters !=
+ le32_to_cpu(rec->e_cpos)),
"Device %s, asking for sparse allocation: inode %llu, "
"cpos %u, clusters %u\n",
osb->dev_str,
--
1.6.2.rc2.16.gf474...
2008 Sep 02
1
[PATCH] ocfs2: Fix a bug in direct IO read.
ocfs2 will become read-only if we try to read the bytes which pass
the end of i_size. This can be easily reproduced by following steps:
1. mkfs a ocfs2 volume with bs=4k cs=4k and nosparse.
2. create a small file(say less than 100 bytes) and we will create the file
which is allocated 1 cluster.
3. read 8196 bytes from the kernel using O_DIRECT which exceeds the limit.
4. The ocfs2 volume
2011 Mar 31
3
[PATCH 1/3] VFS/ioctl: Add punching-hole support to ioctl().
We're currently support two paths from VFS to preallocate unwritten
extents(from FS_IOC_RESVSP, or fallocate()), likewise, behavior of
punching-hole should be treated as the same, this patch tries to teach
file_ioctl() to handle FS_IOC_UNRESVSP, underlying filesystem like ocfs2
is wise enough to do the rest of work;-)
Signed-off-by: Tristan Ye <tristan.ye at oracle.com>
---
fs/ioctl.c
2011 Mar 31
3
[PATCH 1/3] VFS/ioctl: Add punching-hole support to ioctl().
We're currently support two paths from VFS to preallocate unwritten
extents(from FS_IOC_RESVSP, or fallocate()), likewise, behavior of
punching-hole should be treated as the same, this patch tries to teach
file_ioctl() to handle FS_IOC_UNRESVSP, underlying filesystem like ocfs2
is wise enough to do the rest of work;-)
Signed-off-by: Tristan Ye <tristan.ye at oracle.com>
---
fs/ioctl.c
2009 Jul 13
1
[PATCH 1/1] adds mlogs to aops.c
...e *page,
static int ocfs2_should_read_blk(struct inode *inode, struct page *page,
unsigned int block_start)
{
+ int ret = 1;
u64 offset = page_offset(page) + block_start;
+ mlog_entry("(%llu, %lu, %u)\n",
+ OCFS2_I(inode)->ip_blkno, page->index, block_start);
+
if (ocfs2_sparse_alloc(OCFS2_SB(inode->i_sb)))
- return 1;
+ goto bail;
if (i_size_read(inode) > offset)
- return 1;
+ goto bail;
- return 0;
+ ret = 0;
+bail:
+ mlog_exit(ret);
+ return ret;
}
/*
@@ -791,6 +852,9 @@ int ocfs2_map_page_blocks(struct page *page, u64 *p_blkno,
unsigned int block_end,...
2009 Jul 21
1
(no subject)
..._should_read_blk(struct inode *inode, struct page *page,
unsigned int block_start)
{
+ int ret = 1;
u64 offset = page_offset(page) + block_start;
+ mlog_entry("(%llu, %lu, %u)\n",
+ (unsigned long long)OCFS2_I(inode)->ip_blkno, page->index,
+ block_start);
+
if (ocfs2_sparse_alloc(OCFS2_SB(inode->i_sb)))
- return 1;
+ goto bail;
if (i_size_read(inode) > offset)
- return 1;
+ goto bail;
- return 0;
+ ret = 0;
+bail:
+ mlog_exit(ret);
+ return ret;
}
/*
@@ -791,6 +857,10 @@ int ocfs2_map_page_blocks(struct page *page, u64 *p_blkno,
unsigned int block_end,...
2009 Aug 02
1
Non sparse extend init issue
The patch was created against a 1.4 tree. However, it applies cleanly to mainline too.
The patch has been lightly tested. I am running fill_verify_holes on a non sparse volume
currently.
Please review.
Sunil
2009 Jul 21
1
[PATCH 1/1] ocfs2: adds mlogs to aops.c -V2
..._should_read_blk(struct inode *inode, struct page *page,
unsigned int block_start)
{
+ int ret = 1;
u64 offset = page_offset(page) + block_start;
+ mlog_entry("(%llu, %lu, %u)\n",
+ (unsigned long long)OCFS2_I(inode)->ip_blkno, page->index,
+ block_start);
+
if (ocfs2_sparse_alloc(OCFS2_SB(inode->i_sb)))
- return 1;
+ goto bail;
if (i_size_read(inode) > offset)
- return 1;
+ goto bail;
- return 0;
+ ret = 0;
+bail:
+ mlog_exit(ret);
+ return ret;
}
/*
@@ -791,6 +857,10 @@ int ocfs2_map_page_blocks(struct page *page, u64 *p_blkno,
unsigned int block_end,...
2007 Nov 16
8
[PATCH 0/6] Add online resize for ocfs2-tools,take 1
Add online resize in tunefs.ocfs2 so that user can increase
the volume when it is mounted.
2008 Jul 14
18
[git patches] Ocfs2 and Configfs updates for 2.6.27
I'm running a bit late with the e-mail this time around, but I think that's
ok since there really isn't any major new features here - the bulk of the
Ocfs2 update is bug fixes, or cleanups. The same goes for configfs.
The only two things that could be described as features would be:
- Sunil has updated Ocfs2 to provide even more live cluster locking
information via debugfs.
- Joel
2009 Feb 13
44
[PATCH 0/40] ocfs2: Detach ocfs2 metadata I/O from struct inode
The following series of patches attempts to detach metadata I/O from
struct inode. They are currently tied together pretty tightly.
Metadata reads happen via the ocfs2_read_blocks() functions, writes via
both jbd2 and ocfs2_write_blocks().
- Each inode has a cache of associated metadata blocks stored on its
ip_metadata_cache member. The ocfs2_read/write_blocks() functions
take a struct