- 26 Apr, 2007 5 commits
-
-
Mark Fasheh authored
Since we don't zero on extend anymore, truncate needs to be fixed up to zero the part of a file between i_size and and end of it's cluster. Otherwise a subsequent extend could expose bad data. This introduced a new helper, which can be used in ocfs2_write(). Signed-off-by:
Mark Fasheh <mark.fasheh@oracle.com>
-
Mark Fasheh authored
ocfs2_get_block() didn't understand sparse files, fix that. Also remove some code that isn't really useful anymore. We can fix up ocfs2_direct_IO_get_blocks() at the same time. Signed-off-by:
Mark Fasheh <mark.fasheh@oracle.com>
-
Mark Fasheh authored
These are no longer used, and can't handle file systems with sparse file allocation. Signed-off-by:
Mark Fasheh <mark.fasheh@oracle.com>
-
Mark Fasheh authored
Unfortunately, ocfs2 can no longer make use of generic_file_aio_write_nlock() because allocating writes will require zeroing of pages adjacent to the I/O for cluster sizes greater than page size. Implement a custom file write here, which can order page locks for zeroing. This also has the advantage that cluster locks can easily be ordered outside of the page locks. Signed-off-by:
Mark Fasheh <mark.fasheh@oracle.com>
-
Mark Fasheh authored
The code in extent_map.c is not prepared to deal with a subtree being rotated between lookups. This can happen when filling holes in sparse files. Instead of a lengthy patch to update the code (which would likely lose the benefit of caching subtree roots), we remove most of the algorithms and implement a simple path based lookup. A less ambitious extent caching scheme will be added in a later patch. Signed-off-by:
Mark Fasheh <mark.fasheh@oracle.com>
-
- 14 Mar, 2007 1 commit
-
-
Joel Becker authored
Under load, OCFS2 would crash in invalidate_inode_pages2_range() because invalidate_complete_page2() was unable to invalidate a page. It would appear that JBD is holding on to the page. ext3 has a specific ->releasepage() handler to cover this case. Steal ext3's ->releasepage(), ->invalidatepage(), and ->migratepage(), as they appear completely appropriate for OCFS2. Signed-off-by:
Joel Becker <joel.becker@oracle.com> Signed-off-by:
Mark Fasheh <mark.fasheh@oracle.com>
-
- 29 Dec, 2006 1 commit
-
-
Mark Fasheh authored
ocfs2_direct_IO_get_blocks() was incorrectly returning -EIO for a direct I/O read whose start block was past the end of the file allocation tree. Fix things so that we return a hole instead. do_direct_IO() will then notice that the range start is past eof and return a short read. While there, remove the unused vbo_max variable. Signed-off-by:
Mark Fasheh <mark.fasheh@oracle.com>
-
- 08 Dec, 2006 1 commit
-
-
Josef Sipek authored
Signed-off-by:
Josef Sipek <jsipek@fsl.cs.sunysb.edu> Signed-off-by:
Andrew Morton <akpm@osdl.org> Signed-off-by:
Linus Torvalds <torvalds@osdl.org>
-
- 02 Dec, 2006 4 commits
-
-
Mark Fasheh authored
This is mostly a search and replace as ocfs2_journal_handle is now no more than a container for a handle_t pointer. ocfs2_commit_trans() becomes very straight forward, and we remove some out of date comments / code. Signed-off-by:
Mark Fasheh <mark.fasheh@oracle.com>
-
Mark Fasheh authored
All callers either pass in NULL directly, or a local variable that is already set to NULL. The internals of ocfs2_start_trans() get a nice cleanup as a result. Signed-off-by:
Mark Fasheh <mark.fasheh@oracle.com>
-
Mark Fasheh authored
This sets us up to remove handle->journal. Signed-off-by:
Mark Fasheh <mark.fasheh@oracle.com>
-
Mark Fasheh authored
Now that this is unused and all callers pass NULL, we can safely remove it. Signed-off-by:
Mark Fasheh <mark.fasheh@oracle.com>
-
- 20 Sep, 2006 1 commit
-
-
Mark Fasheh authored
We weren't always updating i_mtime on writes, so fix ocfs2_commit_write() to handle this. Signed-off-by:
Mark Fasheh <mark.fasheh@oracle.com> Acked-by:
Zach Brown <zach.brown@oracle.com>
-
- 29 Jun, 2006 1 commit
-
-
Florin Malita authored
Signed-off-by:
Florin Malita <fmalita@gmail.com> Signed-off-by:
Mark Fasheh <mark.fasheh@oracle.com>
-
- 28 Jun, 2006 1 commit
-
-
Christoph Hellwig authored
Same as with already do with the file operations: keep them in .rodata and prevents people from doing runtime patching. Signed-off-by:
Christoph Hellwig <hch@lst.de> Cc: Steven French <sfrench@us.ibm.com> Signed-off-by:
Andrew Morton <akpm@osdl.org> Signed-off-by:
Linus Torvalds <torvalds@osdl.org>
-
- 17 May, 2006 1 commit
-
-
Mark Fasheh authored
We need to take a data lock around extends to protect the pages that ocfs2_zero_extend is going to be pulling into the page cache. Otherwise an extend on one node might populate the page cache with data pages that have no lock coverage. Signed-off-by:
Mark Fasheh <mark.fasheh@oracle.com>
-
- 26 Mar, 2006 1 commit
-
-
Badari Pulavarty authored
Now that get_block() can handle mapping multiple disk blocks, no need to have ->get_blocks(). This patch removes fs specific ->get_blocks() added for DIO and makes it users use get_block() instead. Signed-off-by:
Badari Pulavarty <pbadari@us.ibm.com> Signed-off-by:
Andrew Morton <akpm@osdl.org> Signed-off-by:
Linus Torvalds <torvalds@osdl.org>
-
- 24 Mar, 2006 1 commit
-
-
Mark Fasheh authored
Signed-off-by:
Mark Fasheh <mark.fasheh@oracle.com>
-
- 03 Jan, 2006 1 commit
-
-
Mark Fasheh authored
The OCFS2 file system module. Signed-off-by:
Mark Fasheh <mark.fasheh@oracle.com> Signed-off-by:
Kurt Hackel <kurt.hackel@oracle.com>
-