aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ocfs2
Commit message (Collapse)AuthorAge
* ocfs2: export heartbeat thread pid via configfsZhen Wei2006-12-28
| | | | | | | | | | | The patch allows the ocfs2 heartbeat thread to prioritize I/O which may help cut down on spurious fencing. Most of this will be in the tools - we can have a pid configfs attribute and let userspace (ocfs2_hb_ctl) calls the ioprio_set syscall after starting heartbeat, but only cfq scheduler supports I/O priorities now. Signed-off-by: Zhen Wei <zwei@novell.com> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
* ocfs2: always unmap in ocfs2_data_convert_worker()Mark Fasheh2006-12-28
| | | | | | | | Mmap-heavy clustered workloads were sometimes finding stale data on mmap reads. The solution is to call unmap_mapping_range() on any down convert of a data lock. Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
* ocfs2: ignore NULL vfsmnt in ocfs2_should_update_atime()Mark Fasheh2006-12-28
| | | | | | This can come from NFSD. Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
* ocfs2: Allow direct I/O read past end of fileMark Fasheh2006-12-28
| | | | | | | | | | | 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>
* ocfs2: don't print error in ocfs2_permission()Mark Fasheh2006-12-28
| | | | | | | Errors from generic_permission() can happen in valid cases and shouldn't be reported. Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
* [PATCH] Fix numerous kcalloc() calls, convert to kzalloc()Robert P. J. Day2006-12-13
| | | | | | | | | | | | | | | | | | | All kcalloc() calls of the form "kcalloc(1,...)" are converted to the equivalent kzalloc() calls, and a few kcalloc() calls with the incorrect ordering of the first two arguments are fixed. Signed-off-by: Robert P. J. Day <rpjday@mindspring.com> Cc: Jeff Garzik <jeff@garzik.org> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Cc: Dominik Brodowski <linux@dominikbrodowski.net> Cc: Adam Belay <ambx1@neo.rr.com> Cc: James Bottomley <James.Bottomley@steeleye.com> Cc: Greg KH <greg@kroah.com> Cc: Mark Fasheh <mark.fasheh@oracle.com> Cc: Trond Myklebust <trond.myklebust@fys.uio.no> Cc: Neil Brown <neilb@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] ocfs2: relative atime supportMark Fasheh2006-12-13
| | | | | | | | | | | | | Update ocfs2_should_update_atime() to understand the MNT_RELATIME flag and to test against mtime / ctime accordingly. [akpm@osdl.org: cleanups] Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com> Cc: Valerie Henson <val_henson@linux.intel.com> Cc: Al Viro <viro@zeniv.linux.org.uk> Cc: Christoph Hellwig <hch@lst.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* Merge branch 'upstream-linus' of ↵Linus Torvalds2006-12-12
|\ | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2 * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2: [patch 3/3] OCFS2 Configurable timeouts - Protocol changes [patch 2/3] OCFS2 Configurable timeouts [patch 1/3] OCFS2 - Expose struct o2nm_cluster ocfs2: Synchronize feature incompat flags in ocfs2_fs.h ocfs2: update mount option documentation ocfs2: local mounts
| * [patch 3/3] OCFS2 Configurable timeouts - Protocol changesAndrew Beekhof2006-12-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Modify the OCFS2 handshake to ensure essential timeouts are configured identically on all nodes. Only allow changes when there are no connected peers Improves the logic in o2net_advance_rx() which broke now that sizeof(struct o2net_handshake) is greater than sizeof(struct o2net_msg) Included is the field for userspace-heartbeat timeout to avoid the need for further protocol changes. Uses a global spinlock to ensure the decisions to update configfs entries are made on the correct value. The region covered by the spinlock when incrementing the counter is much larger as this is the more critical case. Small cleanup contributed by Adrian Bunk <bunk@stusta.de> Signed-off-by: Andrew Beekhof <abeekhof@suse.de> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * [patch 2/3] OCFS2 Configurable timeoutsJeff Mahoney2006-12-07
| | | | | | | | | | | | | | Allow configuration of OCFS2 timeouts from userspace via configfs Signed-off-by: Andrew Beekhof <abeekhof@suse.de> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * [patch 1/3] OCFS2 - Expose struct o2nm_clusterAndrew Beekhof2006-12-07
| | | | | | | | | | | | | | | | | | Subsequent patches (namely userspace heartbeat and configurable timeouts) require access to the o2nm_cluster struct. This patch does the necessary shuffling. Signed-off-by: Andrew Beekhof <abeekhof@suse.de> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * ocfs2: Synchronize feature incompat flags in ocfs2_fs.hMark Fasheh2006-12-07
| | | | | | | | | | | | | | | | These got a little bit out of date with ocfs2-tools, make things consistent again. We reserve a flag for sparse allocation code as that's pretty close to testable at this point. Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * ocfs2: local mountsSunil Mushran2006-12-07
| | | | | | | | | | | | | | | | | | | | This allows users to format an ocfs2 file system with a special flag, OCFS2_FEATURE_INCOMPAT_LOCAL_MOUNT. When the file system sees this flag, it will not use any cluster services, nor will it require a cluster configuration, thus acting like a 'local' file system. Signed-off-by: Sunil Mushran <sunil.mushran@oracle.com> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
* | [PATCH] struct path: convert ocfs2Josef Sipek2006-12-08
|/ | | | | | 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>
* [PATCH] fs/*: trivial vsnprintf() conversionAlexey Dobriyan2006-12-07
| | | | | | | | | | It would very lame to get buffer overflow via one of the following. Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> Cc: Dave Kleikamp <shaggy@austin.ibm.com> Cc: Mark Fasheh <mark.fasheh@oracle.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] slab: remove kmem_cache_tChristoph Lameter2006-12-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace all uses of kmem_cache_t with struct kmem_cache. The patch was generated using the following script: #!/bin/sh # # Replace one string by another in all the kernel sources. # set -e for file in `find * -name "*.c" -o -name "*.h"|xargs grep -l $1`; do quilt add $file sed -e "1,\$s/$1/$2/g" $file >/tmp/$$ mv /tmp/$$ $file quilt refresh done The script was run like this sh replace kmem_cache_t "struct kmem_cache" Signed-off-by: Christoph Lameter <clameter@sgi.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] slab: remove SLAB_NOFSChristoph Lameter2006-12-07
| | | | | | | | SLAB_NOFS is an alias of GFP_NOFS. Signed-off-by: Christoph Lameter <clameter@sgi.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* Merge branch 'master' of ↵David Howells2006-12-05
|\ | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 Conflicts: drivers/ata/libata-scsi.c include/linux/libata.h Futher merge of Linus's head and compilation fixups. Signed-Off-By: David Howells <dhowells@redhat.com>
| * ocfs2: implement i_op->permissionTiger Yang2006-12-01
| | | | | | | | | | | | | | | | | | | | | | Implement .permission() in ocfs2_file_iops, ocfs2_special_file_iops and ocfs2_dir_iops. This helps us avoid some multi-node races with mode change and vfs operations. Signed-off-by: Tiger Yang <tiger.yang@oracle.com> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * ocfs2: update file system paths to set atimeTiger Yang2006-12-01
| | | | | | | | | | | | | | | | Conditionally update atime in ocfs2_file_aio_read(), ocfs2_readdir() and ocfs2_mmap(). Signed-off-by: Tiger Yang <tiger.yang@oracle.com> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * ocfs2: core atime update functionsTiger Yang2006-12-01
| | | | | | | | | | | | | | This patch adds the core routines for updating atime in ocfs2. Signed-off-by: Tiger Yang <tiger.yang@oracle.com> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * ocfs2: Add splice supportTiger Yang2006-12-01
| | | | | | | | | | | | | | | | | | Add splice read/write support in ocfs2. ocfs2_file_splice_read/write are very similar to ocfs2_file_aio_read/write. Signed-off-by: Tiger Yang <tiger.yang@oracle.com> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * ocfs2: Remove ocfs2_write_should_remove_suid()Mark Fasheh2006-12-01
| | | | | | | | | | | | Use should_remove_suid() instead. Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * ocfs2: Remove struct ocfs2_journal_handle in favor of handle_tMark Fasheh2006-12-01
| | | | | | | | | | | | | | | | | | | | 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>
| * ocfs2: remove handle argument to ocfs2_start_trans()Mark Fasheh2006-12-01
| | | | | | | | | | | | | | | | | | 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>
| * ocfs2: remove ocfs2_journal_handle journal fieldMark Fasheh2006-12-01
| | | | | | | | | | | | It is no longer used. Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * ocfs2: pass ocfs2_super * into ocfs2_commit_trans()Mark Fasheh2006-12-01
| | | | | | | | | | | | This sets us up to remove handle->journal. Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * ocfs2: remove unused handle argument from ocfs2_meta_lock_full()Mark Fasheh2006-12-01
| | | | | | | | | | | | Now that this is unused and all callers pass NULL, we can safely remove it. Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * ocfs2: make ocfs2_alloc_handle() staticMark Fasheh2006-12-01
| | | | | | | | | | | | This is no longer used outside of journal.c Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * ocfs2: remove unused ocfs2_handle_add_lock()Mark Fasheh2006-12-01
| | | | | | | | | | | | | | | | | | | | This gets us rid of a slab we no longer need, as well as removing the majority of what's left on ocfs2_journal_handle. ocfs2_commit_unstarted_handle() has no more real work to do, so remove that function too. Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * ocfs2: remove unused ocfs2_handle_add_inode()Mark Fasheh2006-12-01
| | | | | | | | | | | | | | | | We can also delete the unused infrastructure which was once in place to support this functionality. ocfs2_inode_private loses ip_handle and ip_handle_list. ocfs2_journal_handle loses handle_list. Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * ocfs2: Don't allocate handle early in ocfs2_rename()Mark Fasheh2006-12-01
| | | | | | | | | | | | It isn't used until ocfs2_start_trans() anyway. Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * ocfs2: don't use handle for locking in allocation functionsMark Fasheh2006-12-01
| | | | | | | | | | | | | | | | | | Instead we record our state on the allocation context structure which all callers already know about and lifetime correctly. This means the reservation functions don't need a handle passed in any more, and we can also take it off the alloc context. Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * ocfs2: don't pass handle to ocfs2_meta_lock in ocfs2_rename()Mark Fasheh2006-12-01
| | | | | | | | | | | | Take and drop the locks directly. Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * ocfs2: don't pass handle to ocfs2_meta_lock in ocfs2_symlink()Mark Fasheh2006-12-01
| | | | | | | | | | | | Take and drop the locks directly. Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * ocfs2: don't pass handle to ocfs2_meta_lock in ocfs2_unlink()Mark Fasheh2006-12-01
| | | | | | | | | | | | Take and drop the locks directly. Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * ocfs2: don't pass handle to ocfs2_meta_lock() in orphan dir codeMark Fasheh2006-12-01
| | | | | | | | | | | | Take and drop the locks directly. Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * ocfs2: don't pass handle to ocfs2_meta_lock() in ocfs2_link()Mark Fasheh2006-12-01
| | | | | | | | | | | | Take and drop the locks directly. Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * ocfs2: don't pass handle to ocfs2_meta_lock() in ocfs2_mknod()Mark Fasheh2006-12-01
| | | | | | | | | | | | Take and drop the locks directly. Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * ocfs2: don't pass handle to ocfs2_meta_lock() in __ocfs2_flush_truncate_log()Mark Fasheh2006-12-01
| | | | | | | | | | | | Take and drop the locks directly. Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * ocfs2: don't pass handle to ocfs2_meta_lock() in localalloc.cMark Fasheh2006-12-01
| | | | | | | | | | | | Take and drop the locks directly. Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * ocfs2: remove ocfs2_journal_handle flags fieldMark Fasheh2006-12-01
| | | | | | | | | | | | | | | | Callers can set h_sync directly on the handle_t, whether a transaction has been started or not can be determined via the existence of the handle_t on the struct ocfs2_journal_handle. Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * ocfs2: have ocfs2_extend_trans() take handle_tMark Fasheh2006-12-01
| | | | | | | | | | | | | | | | | | | | No reason to use our wrapper struct in this function, so take the handle_t directly. Also fixes a bug where we were incorrectly setting the handle to NULL in case of a failure from journal_restart() Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * ocfs2: remove unused ocfs2_journal_handle fieldMark Fasheh2006-12-01
| | | | | | | | | | | | max_buffs was just being set and not actually used. Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * ocfs2: fix format warnings in dlm_alloc_pagevec()Mark Fasheh2006-12-01
| | | | | | | | Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * [2.6 patch] make ocfs2_create_new_lock() staticAdrian Bunk2006-12-01
| | | | | | | | | | | | | | This patch makes the needlessly global ocfs2_create_new_lock() static. Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
* | WorkStruct: make allyesconfigDavid Howells2006-11-22
|/ | | | | | Fix up for make allyesconfig. Signed-Off-By: David Howells <dhowells@redhat.com>
* ocfs2: cond_resched() in ocfs2_zero_extend()Mark Fasheh2006-10-20
| | | | | | | The loop within ocfs2_zero_extend() can execute for a long time, causing spurious soft lockup warnings. Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
* ocfs2: fix page zeroing during simple extendsMark Fasheh2006-10-20
| | | | | | | | The page zeroing code was missing the region between old i_size and new i_size for those extends that didn't actually require a change in space allocation. Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
* ocfs2: remove spurious d_count check in ocfs2_rename()Sunil Mushran2006-10-20
| | | | | | | This was causing some folks to incorrectly get -EBUSY during rename. Signed-off-by: Sunil Mushran <sunil.mushran@oracle.com> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>