CVSROOT:/cvs/cluster
Module name:conga
Branch: RHEL5
Changes by: [EMAIL PROTECTED] 2008-01-21 23:21:47
Modified files:
. : clustermon.spec.in.in
Log message:
Remove extra .1 in the version number
Patches:
http://sourceware.org/cgi-bin/c
CVSROOT:/cvs/cluster
Module name:conga
Branch: RHEL5
Changes by: [EMAIL PROTECTED] 2008-01-21 23:17:26
Modified files:
. : clustermon.spec.in.in
make : version.in
Log message:
- Update the version number
- Upda
CVSROOT:/cvs/cluster
Module name:cluster
Changes by: [EMAIL PROTECTED] 2008-01-21 22:37:17
Modified files:
rgmanager/src/daemons: main.c
rgmanager/src/utils: clulog.c
Log message:
Fix ccs connect error handling
Patches:
http://sourceware.org/cgi-bi
The dlm_put_lkb() can free the lkb and its associated ua structure,
so we can't depend on using the ua struct after the put.
Signed-off-by: David Teigland <[EMAIL PROTECTED]>
---
fs/dlm/user.c |4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/fs/dlm/user.c b/fs/dlm/user.
To prevent the master of an rsb from changing rapidly, an unused rsb is kept
on the "toss list" for a period of time to be reused. The toss list was
being cleared completely for each recovery, which is unnecessary. Much of
the benefit of the toss list can be maintained if nodes keep rsb's in thei
There was some hit and miss validation of messages that has now been
cleaned up and unified. Before processing a message, the new
validate_message() function checks that the lkb is the appropriate type,
process-copy or master-copy, and that the message is from the correct
nodeid for the the given
The invalid lockspace messages are normal and can appear relatively
often. They should be suppressed without debugging enabled.
Signed-off-by: David Teigland <[EMAIL PROTECTED]>
---
fs/dlm/lock.c |5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/fs/dlm/lock.c b/fs/dlm/
From: Patrick Caulfeld <[EMAIL PROTECTED]>
The 32/64 compatibility code in the DLM does not check the validity of
the lock name length passed into it, so it can easily overwrite memory
if the value is rubbish (as early versions of libdlm can cause with
unlock calls, it doesn't zero the field).
Th
In a rare case we may need to repeat a local resource directory lookup
due to a race with removing the rsb and removing the resdir record.
We'll never need to do more than a single additional lookup, though,
so the infinite loop around the lookup can be removed. In addition
to being unnecessary, t
The dlm functions in memory.c should use the dlm_ prefix. Also, use
kzalloc/kfree directly for dlm_direntry's, removing the wrapper functions.
Signed-off-by: David Teigland <[EMAIL PROTECTED]>
---
fs/dlm/dir.c | 10 +-
fs/dlm/lock.c | 26 +-
fs/dlm/
When a failed request (EBADR or ENOTBLK) is unlocked/canceled instead of
retried, there may be other lkb's waiting on the rsb_lookup list for it
to complete. A call to confirm_master() is needed to move on to the next
waiting lkb since the current one won't be retried.
Signed-off-by: David Teigla
Messages from nodes that are no longer members of the lockspace should be
ignored. When nodes are removed from the lockspace, recovery can
sometimes complete quickly enough that messages arrive from a removed node
after recovery has completed. When processed, these messages would often
cause an e
Non-forced unlocks should be rejected if the lock is waiting on the
rsb_lookup list for another lock to establish the master node.
Signed-off-by: David Teigland <[EMAIL PROTECTED]>
---
fs/dlm/lock.c |9 +
1 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/fs/dlm/lock.c b/f
The lkb_ast_type field indicates whether the lkb is on the astqueue list.
When clearing locks for a process, lkb's were being removed from the astqueue
list without clearing the field. If release_lockspace then happened
immediately afterward, it could try to remove the lkb from the list a second
t
When recovery looks at locks waiting for replies, it fails to consider
locks that have already received a reply for their first remote operation,
but not received a reply for secondary, overlapping unlock/cancel. The
appropriate stub reply needs to be called for these waiters.
Appears when we sta
From: Fabio M. Di Nitto <[EMAIL PROTECTED]>
DLM_RCOM_LOCK_REPLY messages need byte swapping.
Signed-off-by: Fabio M. Di Nitto <[EMAIL PROTECTED]>
Signed-off-by: David Teigland <[EMAIL PROTECTED]>
---
fs/dlm/util.c |9 ++---
1 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/f
From: Fabio M. Di Nitto <[EMAIL PROTECTED]>
gcc does not guarantee that a static buffer is 64bit aligned. This change
allows sparc64 to work.
Signed-off-by: Fabio M. Di Nitto <[EMAIL PROTECTED]>
Signed-off-by: David Teigland <[EMAIL PROTECTED]>
---
fs/dlm/midcomms.c |2 +-
1 files changed, 1
From: Lon Hohberger <[EMAIL PROTECTED]>
A common problem occurs when multiple IP addresses within the same
subnet are assigned to the same NIC. If we make a connection attempt to
another address on the same subnet as one of those addresses, the
connection attempt will not necessarily be routed fr
Change log_error() to log_debug() for conditions that can occur in
large number in normal operation.
Signed-off-by: David Teigland <[EMAIL PROTECTED]>
---
fs/dlm/lock.c |2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/fs/dlm/lock.c b/fs/dlm/lock.c
index 7bc6ad9..63fe74d 1
Some errno values differ across platforms. So if we return things like
-EINPROGRESS from one node it can get misinterpreted or rejected on
another one.
This patch fixes up the errno values passed on the wire so that they
match the x86 ones (so as not to break the protocol), and re-instates
the pla
From: Patrick Caulfeld <[EMAIL PROTECTED]>
This patch addresses a problem introduced with the last round of
lowcomms patches where the 'othercon' connections do not get freed when
the DLM shuts down.
This results in the error message
"slab error in kmem_cache_destroy(): cache `dlm_conn': Can't fr
From: Adrian Bunk <[EMAIL PROTECTED]>
This patch adds a proper prototype for some functions in
fs/dlm/dlm_internal.h
Signed-off-by: Adrian Bunk <[EMAIL PROTECTED]>
Signed-off-by: David Teigland <[EMAIL PROTECTED]>
---
fs/dlm/dlm_internal.h | 16
fs/dlm/lock.c |1 -
This is the current set of dlm patches that I'm collecting at
http://people.redhat.com/teigland/dlm-patches-testing/
I'm preparing to send these upstream for 2.6.25 in the next week
or so, depending on review and testing. They come mainly from
- the mixed architecture testing and fixing that Fabi
CVSROOT:/cvs/cluster
Module name:cluster
Changes by: [EMAIL PROTECTED] 2008-01-21 22:31:54
Modified files:
ccs/lib: libccs.c
Log message:
- ccs library now checks for bad file descriptors as input
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/cl
CVSROOT:/cvs/cluster
Module name:cluster
Branch: RHEL5
Changes by: [EMAIL PROTECTED] 2008-01-21 20:37:03
Modified files:
cmirror-kernel/src: dm-clog.c
Log message:
- name change s/clustered_/clustered-/
Patches:
http://sourceware.org/cgi-bin/cvsweb.
CVSROOT:/cvs/cluster
Module name:cluster
Changes by: [EMAIL PROTECTED] 2008-01-21 20:21:08
Modified files:
group/gfs_controld: plock.c
Log message:
bz 429546
Fix an alignment problem with ppc64. Things work if we do the
byte-swappin
CVSROOT:/cvs/cluster
Module name:cluster
Branch: RHEL51
Changes by: [EMAIL PROTECTED] 2008-01-21 20:19:08
Modified files:
group/gfs_controld: plock.c
Log message:
bz 429546
Fix an alignment problem with ppc64. Things work if we do t
CVSROOT:/cvs/cluster
Module name:cluster
Branch: RHEL5
Changes by: [EMAIL PROTECTED] 2008-01-21 20:18:44
Modified files:
cmirror/src: clogd.c queues.c
Log message:
s/LOG_PRINT/LOG_DBG/ too verbose on exit/signals
Patches:
http://sourceware.org/
CVSROOT:/cvs/cluster
Module name:cluster
Branch: RHEL5
Changes by: [EMAIL PROTECTED] 2008-01-21 20:17:44
Modified files:
group/gfs_controld: plock.c
Log message:
bz 429546
Fix an alignment problem with ppc64. Things work if we do th
Hi,
I ran across this rare memory leak in revoke_lo_scan_elements
while working on bz 349271. This patch is for upstream gfs2.
Regards,
Bob Peterson
--
Signed-off-by: Bob Peterson <[EMAIL PROTECTED]>
--
fs/gfs2/lops.c |4 +++-
1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a
On Mon, 2008-01-21 at 09:21 +, [EMAIL PROTECTED] wrote:
> From: Steven Whitehouse <[EMAIL PROTECTED]>
>
> This patch intriduces two new log thresholds:
>
> o thresh1 is the point at which we wake up gfs2_logd due to the pinned
>block count. It is initialised at mount time to 2/5ths of th
CVSROOT:/cvs/cluster
Module name:cluster
Changes by: [EMAIL PROTECTED] 2008-01-21 14:37:56
Modified files:
gfs2/mount : umount.gfs2.c
Log message:
Add fake support for -r option at umount so we don't fail if gfs2 is
not umounted
by it's init scr
On Sat, Jan 19, 2008 at 06:58:17AM +0100, Fabio M. Di Nitto wrote:
>
> Hi guys,
>
> in certain situations where gfs2 init scripts are not used to umount gfs2
> volume, we endup with umount.gfs2 being invoked with -r option and this
> fails because we don't know what to do with this option.
>
>
Hi,
I've just rebased the tree due to the impending merge window. Also I've
removed all of the DLM patches since there will shortly be a separate
DLM tree. I'm going to hold off accepting any larger patches now until
after the merge window,
Steve.
From: Steven Whitehouse <[EMAIL PROTECTED]>
The i_cache was designed to keep references to the indirect blocks
used during block mapping so that they didn't have to be looked
up continually. The idea failed because there are too many places
where the i_cache needs to be freed, and this has in the
From: Abhijith Das <[EMAIL PROTECTED]>
This patch allows gfs2 to perform journal recovery even if it is mounted
read-only. Strictly speaking, a read-only mount should not be writing to
the filesystem, but we do this only to perform journal recovery. A
read-only mount will fail if we don't recover
From: Steven Whitehouse <[EMAIL PROTECTED]>
There was a bug in the truncation/invalidation race path for
->page_mkwrite for gfs2. It ought to return 0 so that the effect is the
same as if the page was truncated at any of the other points at which
the page_lock is dropped. This will result in the r
From: Bob Peterson <[EMAIL PROTECTED]>
I spotted this bug while I was digging around. Looks like it could cause
a lockup in some rare error condition.
Signed-off-by: Bob Peterson <[EMAIL PROTECTED]>
Signed-off-by: Steven Whitehouse <[EMAIL PROTECTED]>
diff --git a/fs/gfs2/inode.c b/fs/gfs2/inod
From: Steven Whitehouse <[EMAIL PROTECTED]>
The comparison was being made against the wrong quantity.
Signed-off-by: Steven Whitehouse <[EMAIL PROTECTED]>
diff --git a/fs/gfs2/bmap.c b/fs/gfs2/bmap.c
index 4356cc2..e4effc4 100644
--- a/fs/gfs2/bmap.c
+++ b/fs/gfs2/bmap.c
@@ -1222,10 +1222,10 @@
From: Bob Peterson <[EMAIL PROTECTED]>
This patch fixes a minor typo. Surprisingly, it still compiled.
Signed-off-by: Bob Peterson <[EMAIL PROTECTED]>
Signed-off-by: Steven Whitehouse <[EMAIL PROTECTED]>
diff --git a/fs/gfs2/meta_io.c b/fs/gfs2/meta_io.c
index bc28bc6..99c7959 100644
--- a/fs/g
From: Bob Peterson <[EMAIL PROTECTED]>
This is a small I/O performance enhancement to gfs2. (Actually, it is a rework
of
an earlier version I got wrong). The idea here is to check if the write extends
past the last block in the file. If so, the function can save itself a lot of
time and troubl
From: Steven Whitehouse <[EMAIL PROTECTED]>
It is possible to reduce the size of GFS2 inodes by taking the i_alloc
structure out of the gfs2_inode. This patch allocates the i_alloc
structure whenever its needed, and frees it afterward. This decreases
the amount of low memory we use at the expense
From: Bob Peterson <[EMAIL PROTECTED]>
This patch removes a vestigial variable "i_spin" from the gfs2_inode
structure. This not only saves us memory (>30 of these in memory
for the oom test) it also saves us time because we don't have to
spend time initializing it (i.e. slightly better perfor
From: Steven Whitehouse <[EMAIL PROTECTED]>
Although the values were all being calculated correctly, there was a
race in the assert due to the way it was using atomic variables. This
changes the value we assert on so that we get the same effect by testing
a different variable. This prevents the as
From: Steven Whitehouse <[EMAIL PROTECTED]>
This patch fixes a couple of problems which affected the execution of files
on GFS2. The first is that there was a corner case where inodes were not
always uptodate at the point at which permissions checks were being carried
out, this was resulting in re
From: Steven Whitehouse <[EMAIL PROTECTED]>
To improve performance on NUMA, we use the VM's standard page
migration for writeback and ordered pages. Probably we could
also do the same for journaled data, but that would need a
careful audit of the code, so will be the subject of a later
patch.
Sig
From: Bob Peterson <[EMAIL PROTECTED]>
Here is a patch for the latest upstream GFS2 code:
The journal extent map needs to be initialized sooner than it
currently is. Otherwise failed mount attempts (e.g. not enough
journals, etc.) may panic trying to access the uninitialized list.
Signed-off-by:
From: Steven Whitehouse <[EMAIL PROTECTED]>
The go_drop_th function is never called or referenced.
Signed-off-by: Steven Whitehouse <[EMAIL PROTECTED]>
diff --git a/fs/gfs2/incore.h b/fs/gfs2/incore.h
index 9a83429..c85f4fd 100644
--- a/fs/gfs2/incore.h
+++ b/fs/gfs2/incore.h
@@ -131,7 +131,6 @@
From: Steven Whitehouse <[EMAIL PROTECTED]>
A missing offset in the calculation.
Signed-off-by: Steven Whitehouse <[EMAIL PROTECTED]>
diff --git a/fs/gfs2/log.c b/fs/gfs2/log.c
index 0833e27..40c51bf 100644
--- a/fs/gfs2/log.c
+++ b/fs/gfs2/log.c
@@ -336,7 +336,7 @@ static u64 log_bmap(struct gf
From: Bob Peterson <[EMAIL PROTECTED]>
This is a small correction to my previously posted patch1.
It just changes a divide to a shift. It's faster and doesn't
introduce odd dependencies on 32-bit compiles.
Signed-off-by: Bob Peterson <[EMAIL PROTECTED]>
Signed-off-by: Steven Whitehouse <[EMAIL P
From: Bob Peterson <[EMAIL PROTECTED]>
This patch eliminates the unneeded sd_statfs_mutex mutex but preserves
the ordering as discussed.
Signed-off-by: Bob Peterson <[EMAIL PROTECTED]>
Signed-off-by: Steven Whitehouse <[EMAIL PROTECTED]>
diff --git a/fs/gfs2/incore.h b/fs/gfs2/incore.h
index 148
From: Bob Peterson <[EMAIL PROTECTED]>
Signed-off-by: Bob Peterson <[EMAIL PROTECTED]>
Signed-off-by: Steven Whitehouse <[EMAIL PROTECTED]>
diff --git a/fs/gfs2/rgrp.c b/fs/gfs2/rgrp.c
index d7ff9cf..68c4bf3 100644
--- a/fs/gfs2/rgrp.c
+++ b/fs/gfs2/rgrp.c
@@ -133,10 +133,9 @@ static u32 gfs2_bit
From: Bob Peterson <[EMAIL PROTECTED]>
This patch optimizes function gfs2_meta_read. Basically, gfs2_meta_wait
was being called regardless of whether a disk read was requested.
This just pulls that wait into the if that triggers the read.
Signed-off-by: Bob Peterson <[EMAIL PROTECTED]>
Signed-of
From: Bob Peterson <[EMAIL PROTECTED]>
Function gfs2_block_map was often looking up the disk inode twice.
This optimizes it so that only does it once.
Signed-off-by: Bob Peterson <[EMAIL PROTECTED]>
Signed-off-by: Steven Whitehouse <[EMAIL PROTECTED]>
diff --git a/fs/gfs2/bmap.c b/fs/gfs2/bmap.c
From: Bob Peterson <[EMAIL PROTECTED]>
This just eliminates an unused variable from the quota code.
Not likely to be a time saver.
Signed-off-by: Bob Peterson <[EMAIL PROTECTED]>
Signed-off-by: Steven Whitehouse <[EMAIL PROTECTED]>
diff --git a/fs/gfs2/quota.c b/fs/gfs2/quota.c
index 8b4c20c..60
From: Bob Peterson <[EMAIL PROTECTED]>
This patch optimizes the function gfs2_glmutex_lock.
The basic theory is: Why bother initializing a holder, setting up
wait bits and then waiting on them, if you know the glock can be
yours. So the holder stuff is placed inside the if checking if the
glock i
From: Bob Peterson <[EMAIL PROTECTED]>
I eliminated the passing of an unused parameter into gfs2_bitfit called rgd.
This also changes the gfs2_bitfit code that searches for free (or used) blocks.
Before, the code was trying to check for bytes that indicated 4 blocks in
the undesired state. The p
From: Bob Peterson <[EMAIL PROTECTED]>
This patch saves a little time when gfs2 writes to the journals by
keeping a mapping between logical and physical blocks on disk.
That's better than constantly looking up indirect pointers in
buffers, when the journals are several levels of indirection
(which
From: Steven Whitehouse <[EMAIL PROTECTED]>
An inequality was the wrong way around causing gfs2_logd to wake
up too often. This fixes it.
Signed-off-by: Steven Whitehouse <[EMAIL PROTECTED]>
diff --git a/fs/gfs2/log.c b/fs/gfs2/log.c
index 7f9ab89..9bece94 100644
--- a/fs/gfs2/log.c
+++ b/fs/gfs
From: Bob Peterson <[EMAIL PROTECTED]>
This patch is just a cleanup. Function gfs2_get_block() just calls
function gfs2_block_map reversing the last two parameters. By
reversing the parameters, gfs2_block_map() may be called directly
and function gfs2_get_block may be eliminated altogether.
Sinc
From: Steven Whitehouse <[EMAIL PROTECTED]>
Signed-off-by: Steven Whitehouse <[EMAIL PROTECTED]>
diff --git a/fs/gfs2/ops_file.c b/fs/gfs2/ops_file.c
index db76ac1..2569c13 100644
--- a/fs/gfs2/ops_file.c
+++ b/fs/gfs2/ops_file.c
@@ -700,7 +700,6 @@ static void do_unflock(struct file *file, struc
From: David Teigland <[EMAIL PROTECTED]>
The fl_owner is that of lockd when posix locks arrive from nfs
clients, so it can't be used to distinguish between lock holders.
Use fl_pid as owner instead; it's the pid of the process on the
nfs client.
Signed-off-by: David Teigland <[EMAIL PROTECTED]>
S
From: Abhijith Das <[EMAIL PROTECTED]>
A certain scenario in the rename code path triggers a kernel BUG()
because it accidentally does recursive locking The first lock is
requested to unlink an already existing inode (replacing a file) and the
second lock is requested when the destination director
From: Wendy Cheng <[EMAIL PROTECTED]>
GFS2 supports two modes of locking - lock_nolock for single node filesystem
and lock_dlm for cluster mode locking. The gfs2 lock methods are removed from
file operation table for lock_nolock protocol. This would allow VFS to handle
posix lock and flock logics
From: Fabio M. Di Nitto <[EMAIL PROTECTED]>
Signed-off-by: Fabio M. Di Nitto <[EMAIL PROTECTED]>
Signed-off-by: Steven Whitehouse <[EMAIL PROTECTED]>
diff --git a/fs/gfs2/eaops.c b/fs/gfs2/eaops.c
index 14fbd95..f114ba2 100644
--- a/fs/gfs2/eaops.c
+++ b/fs/gfs2/eaops.c
@@ -56,21 +56,6 @@ unsigne
From: Fabio Massimo Di Nitto <[EMAIL PROTECTED]>
Hi Steven,
Steven Whitehouse wrote:
> Hi,
>
> Now in the -nmw git tree. Thanks,
>
> Steve.
>
> On Wed, 2007-11-21 at 11:54 -0600, Ryan O'Hara wrote:
this patch introduces a bunch of build warnings by leaving around
struct inode *inode = &ip->i_in
From: Ryan O'Hara <[EMAIL PROTECTED]>
Remove read/write permission() checks from xattr operations.
VFS layer is already handling permission for xattrs via the
xattr_permission() call, so there is no need for gfs2 to
check permissions. Futhermore, using permission() for SELinux
xattrs ops is incorr
From: Steven Whitehouse <[EMAIL PROTECTED]>
This patch intriduces two new log thresholds:
o thresh1 is the point at which we wake up gfs2_logd due to the pinned
block count. It is initialised at mount time to 2/5ths of the size
of the journal. Currently it does not change during the course
From: Fabio Massimo Di Nitto <[EMAIL PROTECTED]>
The issue is indeed UP vs SMP and it is totally random.
spin_is_locked() is a bad assertion because there is no correct answer on UP.
on UP spin_is_locked() has to return either one value or another, always.
This means that in my setup I am lucky
From: David Teigland <[EMAIL PROTECTED]>
Print error with log_error() to be consistent with others.
Signed-off-by: David Teigland <[EMAIL PROTECTED]>
Signed-off-by: Fabio M. Di Nitto <[EMAIL PROTECTED]>
Signed-off-by: Steven Whitehouse <[EMAIL PROTECTED]>
diff --git a/fs/gfs2/locking/dlm/mount.c
From: Steven Whitehouse <[EMAIL PROTECTED]>
We only care about the content of the jindex in two cases,
one is when we mount the fs and the other is when we need
to recover another journal. In both cases we have to update
the jindex anyway, so there is no point in updating it
periodically between t
From: Fabio Massimo Di Nitto <[EMAIL PROTECTED]>
The patch is a fix to abort mount if the mount.gfs* and possible
umount.* are missing from /sbin.
While we do what we can to guarantee that they are installed properly in
userland (CVS HEAD), we want to make sure that mount still aborts properly.
From: Steven Whitehouse <[EMAIL PROTECTED]>
This means that we can mark gfs2_ail1_empty static and prepares
the way for further changes.
Signed-off-by: Steven Whitehouse <[EMAIL PROTECTED]>
diff --git a/fs/gfs2/daemon.c b/fs/gfs2/daemon.c
index 3731ab0..e519919 100644
--- a/fs/gfs2/daemon.c
+++
From: Steven Whitehouse <[EMAIL PROTECTED]>
This patch changes the counter which keeps track of the free
blocks in the journal to an atomic_t in preparation for the
following patch which will update the log reservation code.
Signed-off-by: Steven Whitehouse <[EMAIL PROTECTED]>
diff --git a/fs/gf
From: Steven Whitehouse <[EMAIL PROTECTED]>
The only reason for adding glocks to the journal was to keep track
of which locks required a log flush prior to release. We add a
flag to the glock to allow this check to be made in a simpler way.
This reduces the size of a glock (by 12 bytes on i386, 2
From: David Teigland <[EMAIL PROTECTED]>
Use wait_event_interruptible() in the lock_dlm thread instead
of an open coded equivalent, and include a kthread_should_stop()
check in the wait test so we don't miss a kthread_stop().
Signed-off-by: David Teigland <[EMAIL PROTECTED]>
Signed-off-by: Steven
From: Steven Whitehouse <[EMAIL PROTECTED]>
The HIF_MUTEX and HIF_PROMOTE flags were set on the glock holders
depending upon which of the two waiters lists they were going to
be queued upon. They were then tested when the holders were taken
off the lists to ensure that the right type of holder was
From: Bob Peterson <[EMAIL PROTECTED]>
This patch changes the /sys/fs/gfs2//id file to give the device
id "major:minor" rather than the s_id. That enables gfs2_tool to
match devices properly (by id, not name) when locating the tuning files.
Signed-off-by: Bob Peterson <[EMAIL PROTECTED]>
Signed-
From: Steven Whitehouse <[EMAIL PROTECTED]>
Previously we were doing (write data, wait for data, write metadata, wait
for metadata). After this patch we so (write metadata, write data, wait for
data, wait for metadata) which should be more efficient.
Also I noticed that the drop_bh and xmote_bh f
From: Steven Whitehouse <[EMAIL PROTECTED]>
This set of address space operations was missing a sync_page
operation.
Signed-off-by: Steven Whitehouse <[EMAIL PROTECTED]>
diff --git a/fs/gfs2/meta_io.c b/fs/gfs2/meta_io.c
index 01ef902..4b1aced 100644
--- a/fs/gfs2/meta_io.c
+++ b/fs/gfs2/meta_io.
From: Steven Whitehouse <[EMAIL PROTECTED]>
These haven't been used for some time, remove them.
Signed-off-by: Steven Whitehouse <[EMAIL PROTECTED]>
diff --git a/fs/gfs2/incore.h b/fs/gfs2/incore.h
index 82dfe9b..f7a50fe 100644
--- a/fs/gfs2/incore.h
+++ b/fs/gfs2/incore.h
@@ -412,9 +412,6 @@ st
From: Steven Whitehouse <[EMAIL PROTECTED]>
This call to reclaim glocks is not needed, and in particular we don't want it
in the fast path for locking glocks. The limit was entirely arbitrary anyway
and we can't expect users to adjust things like this, the remaining code will
do the right thing on
From: Steven Whitehouse <[EMAIL PROTECTED]>
Something changed in the upstream kernel, and it needs this
one-liner to allow ops_address.c to build.
Signed-off-by: Steven Whitehouse <[EMAIL PROTECTED]>
diff --git a/fs/gfs2/ops_address.c b/fs/gfs2/ops_address.c
index ae782d2..7353933 100644
--- a/f
From: Steven Whitehouse <[EMAIL PROTECTED]>
This is an addendum to the new AOPs work which moves the point
at which we take the page lock so that we don't get it until
the last possible moment. This resolves a conflict between
starting transactions and the page lock.
Signed-off-by: Steven Whiteho
From: Steven Whitehouse <[EMAIL PROTECTED]>
This patch resolves a lock ordering issue where we had been getting
a transaction lock in the wrong order with respect to the page lock.
By using writepages rather than just writepage, it is then possible
to start a transaction before locking the page, a
From: Steven Whitehouse <[EMAIL PROTECTED]>
This patch splits gfs2_writepage into separate functions for each of
the three cases: writeback, ordered and journalled. As a result
it becomes a lot easier to see what each one is doing. The common
code is moved into gfs2_writepage_common.
This fixes a
From: Steven Whitehouse <[EMAIL PROTECTED]>
Just like ext3 we now have three sets of address space operations
to cover the cases of writeback, ordered and journalled data
writes. This means that the individual operations can now become
less complicated as we are able to remove some of the tests fo
From: Steven Whitehouse <[EMAIL PROTECTED]>
This adds a function "gfs2_is_writeback()" along the lines of the
existing "gfs2_is_jdata()" in order to clean up the code and make
the various tests for the inode mode more obvious. It also fixes
the PageChecked() logic where we were resetting the flag
From: Steven Whitehouse <[EMAIL PROTECTED]>
Removes a field that is not used.
Signed-off-by: Steven Whitehouse <[EMAIL PROTECTED]>
diff --git a/fs/gfs2/incore.h b/fs/gfs2/incore.h
index 5662ff9..e53da7d 100644
--- a/fs/gfs2/incore.h
+++ b/fs/gfs2/incore.h
@@ -274,7 +274,6 @@ struct gfs2_inode {
From: Wendy Cheng <[EMAIL PROTECTED]>
Fix a race condition where multiple glock demote requests are sent to
a node back-to-back. This patch does a check inside handle_callback()
to see whether a demote request is in progress. If true, it sets a flag
to make sure run_queue() will loop again to hand
From: Steven Whitehouse <[EMAIL PROTECTED]>
As requested by Christoph, this patch cleans up GFS2's internal
read function so that it no longer uses the do_generic_mapping_read
function. This function is obsolete and GFS2 is the last user of it.
As a side effect the internal read code gets smaller
From: Steven Whitehouse <[EMAIL PROTECTED]>
This cleans up the mmap() code path for GFS2 by implementing the
page_mkwrite function for GFS2. We are thus able to use the
generic filemap_fault function for our ->fault() implementation.
This now means that shared writable mappings will be much more
Hi,
Here is the current GFS2 patch queue. You'll notice that this time
there are no DLM patches in this list. That is because the DLM team
are setting up their own git tree and this future DLM patches will
be sent directly by them rather than via the GFS2 tree.
Most of this set of patches is cle
Hi,
On Fri, 2008-01-18 at 14:06 -0600, Abhijith Das wrote:
> This patch allows gfs2 to perform journal recovery even if it is mounted
> read-only. Strictly speaking, a read-only mount should not be writing to
> the filesystem, but we do this only to perform journal recovery. A
> read-only mount wi
Hi,
On Sat, 2008-01-19 at 21:50 -0600, Bob Peterson wrote:
> Hi,
>
> I spotted this bug while I was digging around. Looks like it could cause
> a lockup in some rare error condition.
>
> Regards,
>
> Bob Peterson
> --
> Signed-off-by: Bob Peterson <[EMAIL PROTECTED]>
> --
> fs/gfs2/inode.c |
95 matches
Mail list logo