[Cluster-devel] [PATCH 10/24] GFS2: Use rbtree for resource groups and clean up bitmap buffer ref count scheme

2011-10-24 Thread Steven Whitehouse
though it is valid to dereference ->bi_bh only when the rgrp is locked. This is basically the same rule as before, modulo the references not being valid until the following journal flush. Signed-off-by: Steven Whitehouse Signed-off-by: Bob Peterson Cc: Benjamin Marzinski diff --git a/fs

[Cluster-devel] [PATCH 09/24] GFS2: Fix lseek after SEEK_DATA, SEEK_HOLE have been added

2011-10-24 Thread Steven Whitehouse
them to the list of origins which need the glock. Signed-off-by: Steven Whitehouse Cc: Andi Kleen diff --git a/fs/gfs2/file.c b/fs/gfs2/file.c index 4416a1c..d717b72 100644 --- a/fs/gfs2/file.c +++ b/fs/gfs2/file.c @@ -59,15 +59,24 @@ static loff_t gfs2_llseek(struct file *file, loff_t offset, int or

[Cluster-devel] [PATCH 15/24] GFS2: Use cached rgrp in gfs2_rlist_add()

2011-10-24 Thread Steven Whitehouse
has changed rgrp. This should provide a big reduction in gfs2_blk2rgrpd() calls during deallocation. Signed-off-by: Steven Whitehouse diff --git a/fs/gfs2/bmap.c b/fs/gfs2/bmap.c index 9d3a0c2..22ad413 100644 --- a/fs/gfs2/bmap.c +++ b/fs/gfs2/bmap.c @@ -724,7 +724,7 @@ static int do_strip(struct

[Cluster-devel] [PATCH 14/24] GFS2: Call do_strip() directly from recursive_scan()

2011-10-24 Thread Steven Whitehouse
using a void pointer. This also moves do_strip() ahead of recursive_scan() so that we don't need to add a prototype. Signed-off-by: Steven Whitehouse diff --git a/fs/gfs2/bmap.c b/fs/gfs2/bmap.c index e602961..9d3a0c2 100644 --- a/fs/gfs2/bmap.c +++ b/fs/gfs2/bmap.c @@ -36,11 +36,6 @@ struct

[Cluster-devel] [PATCH 07/24] GFS2: Use ->dirty_inode()

2011-10-24 Thread Steven Whitehouse
rk (with and without atime) and also fsx. Signed-off-by: Steven Whitehouse diff --git a/fs/gfs2/acl.c b/fs/gfs2/acl.c index 34501b6..65978d7 100644 --- a/fs/gfs2/acl.c +++ b/fs/gfs2/acl.c @@ -82,7 +82,7 @@ static int gfs2_set_mode(struct inode *inode, umode_t mode) iattr.ia_valid

[Cluster-devel] [PATCH 12/24] GFS2: Cache the most recently used resource group in the inode

2011-10-24 Thread Steven Whitehouse
same as previously, except that we always check to see if the goal block is within the cached rgrp first before going to the rbtree to look one up. Signed-off-by: Steven Whitehouse diff --git a/fs/gfs2/aops.c b/fs/gfs2/aops.c index 212fe74..4858e1f 100644 --- a/fs/gfs2/aops.c +++ b/fs/gfs2/aops.c

[Cluster-devel] [PATCH 16/24] GFS2: Fix AIL flush issue during fsync

2011-10-24 Thread Steven Whitehouse
that we no longer need to rely on i_mutex to keep out writes during fsync, so we can, as a side-effect, remove that protection too. Signed-off-by: Steven Whitehouse Tested-By: Abhijith Das diff --git a/fs/gfs2/file.c b/fs/gfs2/file.c index 3467f36..3b65f67 100644 --- a/fs/gfs2/file.c +++ b/fs

[Cluster-devel] [PATCH 17/24] GFS2: Correctly set goal block after allocation

2011-10-24 Thread Steven Whitehouse
The new goal block should be set to the end of the newly allocated extent, not the start of it. Signed-off-by: Steven Whitehouse diff --git a/fs/gfs2/rgrp.c b/fs/gfs2/rgrp.c index 3088fb2..8ec4174 100644 --- a/fs/gfs2/rgrp.c +++ b/fs/gfs2/rgrp.c @@ -1346,7 +1346,7 @@ int gfs2_alloc_block(struct

[Cluster-devel] [PATCH 18/24] GFS2: Clean up ->page_mkwrite

2011-10-24 Thread Steven Whitehouse
ll still provide the expected barrier on other nodes. The major change here is that we return a locked page now, except when we don't return a page at all (error cases). This removes the race which required rechecking the page after it was returned. Signed-off-by: Steven Whitehouse Cc: Nick Piggin

[Cluster-devel] [PATCH 11/24] GFS2: Make resource groups "append only" during life of fs

2011-10-24 Thread Steven Whitehouse
taken place. Thirdly, this results in a reduction in code size, and everything gets a lot simpler to understand in this area. Signed-off-by: Steven Whitehouse diff --git a/fs/gfs2/bmap.c b/fs/gfs2/bmap.c index 7878c47..e602961 100644 --- a/fs/gfs2/bmap.c +++ b/fs/gfs2/bmap.c @@ -783,11 +783,6

[Cluster-devel] [PATCH 19/24] GFS2: Fix off-by-one in gfs2_blk2rgrpd

2011-10-24 Thread Steven Whitehouse
ed parent pointer. Reported-by: Bob Peterson Signed-off-by: Steven Whitehouse diff --git a/fs/gfs2/rgrp.c b/fs/gfs2/rgrp.c index 8ec4174..1daf8a7 100644 --- a/fs/gfs2/rgrp.c +++ b/fs/gfs2/rgrp.c @@ -329,17 +329,16 @@ static inline int rgrp_contains_block(struct gfs2_rgrpd *rgd, u64 block) struct gf

[Cluster-devel] [PATCH 20/24] GFS2: speed up delete/unlink performance for large files

2011-10-24 Thread Steven Whitehouse
. Signed-off-by: Bob Peterson Signed-off-by: Steven Whitehouse diff --git a/fs/gfs2/bmap.c b/fs/gfs2/bmap.c index 22ad413..834cd94 100644 --- a/fs/gfs2/bmap.c +++ b/fs/gfs2/bmap.c @@ -831,7 +831,7 @@ static int recursive_scan(struct gfs2_inode *ip, struct buffer_head *dibh, { struct

[Cluster-devel] [PATCH 21/24] GFS2: rewrite fallocate code to write blocks directly

2011-10-24 Thread Steven Whitehouse
on work, and uses it to simply allocate the blocks for the file, and zero them out at allocation time. It provides a slight performance increase, and it dramatically simplifies the code. Signed-off-by: Benjamin Marzinski Signed-off-by: Steven Whitehouse diff --git a/fs/gfs2/bmap.c b/fs/gfs2/

[Cluster-devel] [PATCH 22/24] GFS2: Misc fixes

2011-10-24 Thread Steven Whitehouse
Some items picked up through automated code analysis. A few bits of unreachable code and two unchecked return values. Signed-off-by: Steven Whitehouse diff --git a/fs/gfs2/lops.c b/fs/gfs2/lops.c index de05b4d..0301be6 100644 --- a/fs/gfs2/lops.c +++ b/fs/gfs2/lops.c @@ -695,8 +695,6 @@ static

[Cluster-devel] [PATCH 23/24] GFS2: Remove two unused variables

2011-10-24 Thread Steven Whitehouse
The two variables being initialised in gfs2_inplace_reserve to track the file & line number of the caller are never used, so we might as well remove them. If something does go wrong, then a stack trace is probably more useful anyway. Signed-off-by: Steven Whitehouse diff --git a/fs/

[Cluster-devel] [PATCH 24/24] GFS2: Move readahead of metadata during deallocation into its own function

2011-10-24 Thread Steven Whitehouse
Move the recently added readahead of the indirect pointer tree during deallocation into its own function in order that we can use it elsewhere in the future. Also this fixes the resetting of the "first" variable in the original patch. Signed-off-by: Steven Whitehouse diff --git a/fs/g

Re: [Cluster-devel] [GFS2 Patch] GFS2: Add readahead to sequential directory traversal

2011-10-25 Thread Steven Whitehouse
Hi, On Mon, 2011-10-24 at 15:56 -0400, Bob Peterson wrote: > - Original Message - > | Hi, > | > | That looks much better, but why not create & pass a file_ra_state in > | the > | NFS getname function so that you don't have to check for it being > | NULL? > | Since that function always rea

[Cluster-devel] GFS2: Pull request (merge window)

2011-10-25 Thread Steven Whitehouse
on (2): GFS2: Use rbtree for resource groups and clean up bitmap buffer ref count scheme GFS2: speed up delete/unlink performance for large files Steven Whitehouse (21): GFS2: Clean up dir hash table reading GFS2: Split data write & wait in fsync GFS2: Fix bug-trap in ail f

[Cluster-devel] GFS2 git trees

2011-10-27 Thread Steven Whitehouse
Hi, I've recently received my kernel.org account back again. As a result I've reset up the trees along the same lines as before. They are named slightly differently (but identically to the temporary trees at SUCS, which currently have identical content) So the "next merge window" tree is called:

Re: [Cluster-devel] GFS2 git trees

2011-10-27 Thread Steven Whitehouse
Hi, On Fri, 2011-10-28 at 02:25 +1100, Stephen Rothwell wrote: > Hi Steve, > > On Thu, 27 Oct 2011 09:16:38 +0100 Steven Whitehouse > wrote: > > > > Stephen, the tree which should be included into linux-next is > > gfs2-3.0-nmw > > OK, I have switched to t

[Cluster-devel] GFS2 git trees

2011-10-31 Thread Steven Whitehouse
Hi, Linus has pulled the -nmw tree. I'll leave that tree empty for now as we are not supposed to add patches to linux-next until the merge window has closed. As soon as that has happened I'll get Bob's two readahead patches queued up, plus anything else that has appeared in the meantime. Now that

[Cluster-devel] GFS2: Fix up REQ flags

2011-10-31 Thread Steven Whitehouse
ere it was missing. REQ_PRIO has been left for read/writes triggered by glock acquisition and writeback only. We can adjust it again if required, but these are the most important points from a performance perspective. Signed-off-by: Steven Whitehouse Cc: Christoph Hellwig diff --git a/fs/gfs2/log.c

[Cluster-devel] GFS2: glock statistics gathering (RFC)

2011-11-04 Thread Steven Whitehouse
Hi, This is a work-in-progress at the moment, though I hope that it is not too far from the final form. The intent here is to add some code to gather some important and useful stats to help track what is going on within the filesystem. The stats are divided into two sets: those relating to the su

Re: [Cluster-devel] GFS2: glock statistics gathering (RFC)

2011-11-04 Thread Steven Whitehouse
Hi, On Fri, 2011-11-04 at 12:31 -0400, David Teigland wrote: > On Fri, Nov 04, 2011 at 03:19:49PM +0000, Steven Whitehouse wrote: > > The three pairs of mean/variance measure the following > > things: > > > > 1. DLM lock time (non-blocking requests) > > You

Re: [Cluster-devel] GFS2: glock statistics gathering (RFC)

2011-11-07 Thread Steven Whitehouse
Hi, On Fri, 2011-11-04 at 13:21 -0400, David Teigland wrote: > On Fri, Nov 04, 2011 at 04:57:31PM +0000, Steven Whitehouse wrote: > > Hi, > > > > On Fri, 2011-11-04 at 12:31 -0400, David Teigland wrote: > > > On Fri, Nov 04, 2011 at 03:19:49PM +, Steven White

Re: [Cluster-devel] [PATCH] mkfs.gfs2: Some minor cleanups

2011-11-07 Thread Steven Whitehouse
Hi, Looks good to me, Steve. On Mon, 2011-11-07 at 14:05 +, Andrew Price wrote: > - The -K option isn't currently parsed, add it to the getopt option > string. > - Variable 'input' is defined but not used, remove it. > - Add back reporting of the current device contents. > - Don't call the

[Cluster-devel] Back to normal

2011-11-08 Thread Steven Whitehouse
Hi, So now the merge window has closed, I've rebased the -nmw tree to -rc1 and I hope that things should now be back to normal wrt sending patches to Linus. I'm probably going to continue to use kernel.org rather than sucs.org since Linus seems happier to pull from kernel.org, Steve.

[Cluster-devel] GFS2: More automated code analysis fixes

2011-11-08 Thread Steven Whitehouse
>From 87654896ca619ff64f94d3881d6bd0ec7b29e25f Mon Sep 17 00:00:00 2001 From: Steven Whitehouse Date: Tue, 8 Nov 2011 14:04:20 + Subject: [PATCH] GFS2: More automated code analysis fixes A potentially uninitialised variable, some unreachable code, and the main part of this, fixing the er

[Cluster-devel] GFS2: Fix very unlikley memory leak in ACL xattr code

2011-11-09 Thread Steven Whitehouse
>From 114b80ce2c05f91f10fffbf303080357d73c0675 Mon Sep 17 00:00:00 2001 From: Steven Whitehouse Date: Wed, 9 Nov 2011 12:54:43 + Subject: [PATCH 1/2] GFS2: Fix very unlikley memory leak in ACL xattr code This was spotted by automated code analysis. In case reading an ACL xattr failed (o

[Cluster-devel] GFS2: f_ra is always valid in dir readahead function

2011-11-09 Thread Steven Whitehouse
>From 79c4c379c8f16a12c28ea2084db5138e33d17ebd Mon Sep 17 00:00:00 2001 From: Steven Whitehouse Date: Wed, 9 Nov 2011 13:46:06 + Subject: [PATCH 2/2] GFS2: f_ra is always valid in dir readahead function As a result, we don't need to test it each time. Signed-off-by: Steven Whiteh

Re: [Cluster-devel] fallocate vs O_(D)SYNC

2011-11-16 Thread Steven Whitehouse
Hi, On Wed, 2011-11-16 at 03:42 -0500, Christoph Hellwig wrote: > It seems all filesystems but XFS ignore O_SYNC for fallocate, and never > make sure the size update transaction made it to disk. > > Given that a fallocate without FALLOC_FL_KEEP_SIZE very much is a data > operation (it adds new bl

Re: [Cluster-devel] [GFS2 PATCH] GFS2: combine gfs2_alloc_block and gfs2_alloc_di

2011-11-16 Thread Steven Whitehouse
Hi, Both patches are now in the -nmw tree. Thanks, Steve. On Mon, 2011-11-14 at 11:17 -0500, Bob Peterson wrote: > Hi, > > GFS2 functions gfs2_alloc_block and gfs2_alloc_di do basically > the same things, with a few exceptions. This patch combines > the two functions into a slightly more generi

Re: [Cluster-devel] fallocate vs O_(D)SYNC

2011-11-16 Thread Steven Whitehouse
Hi, On Wed, 2011-11-16 at 11:54 +0100, Jan Kara wrote: > Hello, > > On Wed 16-11-11 09:43:08, Steven Whitehouse wrote: > > On Wed, 2011-11-16 at 03:42 -0500, Christoph Hellwig wrote: > > > It seems all filesystems but XFS ignore O_SYNC for fallocate, and never > &g

Re: [Cluster-devel] [GFS2 PATCH] GFS2: combine gfs2_alloc_block and gfs2_alloc_di

2011-11-16 Thread Steven Whitehouse
Hi, As a follow up to this patch, I'd quite like to see rgblk_search split into two functions. One to do the search and another to actually make changes to the bitmap when a block is found. That should help development of further alloc changes on top. Also, if someone requests allocation of an ex

Re: [Cluster-devel] [GFS2 PATCH] GFS2: combine gfs2_alloc_block and gfs2_alloc_di

2011-11-16 Thread Steven Whitehouse
Hi, On Wed, 2011-11-16 at 09:18 -0500, Bob Peterson wrote: > - Original Message - > | Hi, > | > | As a follow up to this patch, I'd quite like to see rgblk_search > | split > | into two functions. One to do the search and another to actually make > | changes to the bitmap when a block is

Re: [Cluster-devel] [GFS2 PATCH] GFS2: combine gfs2_alloc_block and gfs2_alloc_di

2011-11-18 Thread Steven Whitehouse
Hi, On Wed, 2011-11-16 at 14:07 -0500, Bob Peterson wrote: > - Original Message - > | It is not a good plan to rely on this to give us 0 and 1 inode > | counts. > | Using the ?: as before would be better. I suspect that if you > | maintain So the new patch is still doing bool to int conver

Re: [Cluster-devel] [GFS2 PATCH] GFS2: combine gfs2_alloc_block and gfs2_alloc_di

2011-11-18 Thread Steven Whitehouse
Hi, On Wed, 2011-11-16 at 14:59 -0500, Bob Peterson wrote: > - Original Message - > | Hi, > | > | As a follow up to this patch, I'd quite like to see rgblk_search > | split > | into two functions. One to do the search and another to actually make > | changes to the bitmap when a block is

Re: [Cluster-devel] [GFS2 PATCH] GFS2: remove vestigial al_alloced

2011-11-18 Thread Steven Whitehouse
Hi, Applied to the -nmw tree, thanks. Please remember to add Signed-off-by lines in future though - I've added it for you in this case, Steve. On Wed, 2011-11-16 at 17:50 -0500, Bob Peterson wrote: > Hi, > > This patch removes the vestigial variable al_alloced from > the gfs2_alloc structure. T

Re: [Cluster-devel] [GFS2 PATCH] GFS2: decouple quota allocations from block allocations

2011-11-18 Thread Steven Whitehouse
Hi, On Thu, 2011-11-17 at 15:29 -0500, Bob Peterson wrote: > Hi, > > As hinted at in my previous post: > This patch separates the code pertaining to allocations into two > parts: quota-related information and block reservations. This is > another step toward making multi-block reservations in ord

Re: [Cluster-devel] fallocate vs O_(D)SYNC

2011-11-18 Thread Steven Whitehouse
Signed-off-by: Steven Whitehouse Cc: Christoph Hellwig Cc: Benjamin Marzinski diff --git a/fs/gfs2/file.c b/fs/gfs2/file.c index 6336bc6..9b6c6ac 100644 --- a/fs/gfs2/file.c +++ b/fs/gfs2/file.c @@ -752,6 +752,8 @@ static long gfs2_fallocate(struct file *file, int mode, loff_t offset,

Re: [Cluster-devel] [GFS2 PATCH] GFS2: decouple quota allocations from block allocations

2011-11-18 Thread Steven Whitehouse
Hi, On Fri, 2011-11-18 at 08:56 -0500, Bob Peterson wrote: > - Original Message - > | Hi, > | > | On Thu, 2011-11-17 at 15:29 -0500, Bob Peterson wrote: > | > Hi, > | > > | > As hinted at in my previous post: > | > This patch separates the code pertaining to allocations into two > | > pa

Re: [Cluster-devel] [PATCH] libgfs2: Improve rgblocks2bitblocks()

2011-11-21 Thread Steven Whitehouse
Hi, Looks good to me, Steve. On Fri, 2011-11-18 at 20:30 +, Andrew Price wrote: > This patch reworks the rgblocks2bitblocks function which was > inefficient, difficult to read and generally unwieldy. > > As this is core code from the days of yore and fsck.gfs2 depends on it, > I made sure t

Re: [Cluster-devel] [GFS2 PATCH TRY 2] GFS2: move toward a generic multi-block allocator

2011-11-21 Thread Steven Whitehouse
Hi, On Fri, 2011-11-18 at 10:58 -0500, Bob Peterson wrote: > Hi, > > This patch is a revision of the one I previously posted. > I tried to integrate all the suggestions Steve gave. > The purpose of the patch is to change function gfs2_alloc_block > (allocate either a dinode block or an extent of

Re: [Cluster-devel] [GFS2 PATCH TRY2] GFS2: split function rgblk_search

2011-11-21 Thread Steven Whitehouse
Hi, On Fri, 2011-11-18 at 13:15 -0500, Bob Peterson wrote: > - Original Message - > | Hi, > | > | On Wed, 2011-11-16 at 14:59 -0500, Bob Peterson wrote: > | > - Original Message - > | > | Hi, > | > | > | > | As a follow up to this patch, I'd quite like to see rgblk_search > | > |

Re: [Cluster-devel] [GFS2 PATCH] GFS2: move gfs2_blkrsv_get calls to function gfs2_inplace_reserve

2011-11-21 Thread Steven Whitehouse
Hi, It looks like if you were to merge this patch and the one that precedes it, then the resulting patch would be both smaller and easier to follow, Steve. On Fri, 2011-11-18 at 15:17 -0500, Bob Peterson wrote: > Hi, > > Here is the simplification patch I wrote about earlier. > > Regards, > >

Re: [Cluster-devel] [GFS2 PATCH TRY2] GFS2: split function rgblk_search

2011-11-21 Thread Steven Whitehouse
Hi, I've applied this to the -nmw tree now. Thanks, Steve. On Mon, 2011-11-21 at 11:47 -0500, Bob Peterson wrote: > Hi, > > - Original Message - > | Since bi is set to NULL above, this could presumably be unconditional > > Yes, bi is initialized to NULL, but it changes within the loop.

Re: [Cluster-devel] [GFS2 PATCH] GFS2: move gfs2_blkrsv_get calls to function gfs2_inplace_reserve

2011-11-22 Thread Steven Whitehouse
wanted to preserve the original logic as much as > possible so that patch isn't too big and complex. > I've added this to the tree, however I'm also going to check in the following patch, which fixes up a few items from the last few updates, Steve. >From 6a8099ed5677

Re: [Cluster-devel] [PATCH 08/41] cman_tool: don't use envp from main

2011-11-23 Thread Steven Whitehouse
Hi, On Wed, 2011-11-23 at 11:15 +0100, Fabio M. Di Nitto wrote: > according to wikipedia it is a microsoft extensions. Use __environ > directly from unistd.h > > Spotted by Coverity Scan > > Signed-off-by: Fabio M. Di Nitto > --- > :100644 100644 60091c9... 6c5744e... Mcman/cman_tool/cm

Re: [Cluster-devel] [PATCH 02/41] libcman: fix fd usage

2011-11-23 Thread Steven Whitehouse
Hi, On Wed, 2011-11-23 at 11:15 +0100, Fabio M. Di Nitto wrote: > Spotted by Coverity Scan > > Signed-off-by: Fabio M. Di Nitto > --- > :100644 100644 9ea82c1... 46f5c89... Mcman/lib/libcman.c > cman/lib/libcman.c |4 ++-- > 1 files changed, 2 insertions(+), 2 deletions(-) > > diff

[Cluster-devel] GFS2: We only need one ACL getting function

2011-11-23 Thread Steven Whitehouse
>From 018a01cd27b3448a7c65272ccb1a1cbab6c2667e Mon Sep 17 00:00:00 2001 From: Steven Whitehouse Date: Wed, 23 Nov 2011 13:31:51 + Subject: [PATCH] GFS2: We only need one ACL getting function There is no need to have two versions of this function with slightly different arguments. Signed-

[Cluster-devel] [PATCH 6/6] libgfs2: Remove some more log_xxx calls

2011-11-30 Thread Steven Whitehouse
One is changed to fprintf, on a temporary basis - really it should be removed. The others are removed and an error code returned. Signed-off-by: Steven Whitehouse --- gfs2/libgfs2/structures.c |2 +- gfs2/libgfs2/super.c |4 ++-- 2 files changed, 3 insertions(+), 3 deletions

[Cluster-devel] [PATCH 2/6] libgfs2: Move gfs2_getch into utils

2011-11-30 Thread Steven Whitehouse
More UI code being moved out of the library. Signed-off-by: Steven Whitehouse --- gfs2/convert/gfs2_convert.c | 36 gfs2/fsck/util.c| 28 gfs2/fsck/util.h|1 + gfs2/libgfs2/gfs2_log.c | 28

[Cluster-devel] [PATCH 5/6] libgfs2: Clean up sb read/check functions

2011-11-30 Thread Steven Whitehouse
a message anyway if the check fails. That removes some more of the log_ messages from libgfs2 as a result. Signed-off-by: Steven Whitehouse --- gfs2/edit/savemeta.c |4 ++-- gfs2/fsck/initialize.c |4 ++-- gfs2/libgfs2/libgfs2.h |4 ++-- gfs2/libgfs2/super.c | 23

[Cluster-devel] [PATCH 3/6] libgfs2: Prepare to remove log_xxx() macros from library

2011-11-30 Thread Steven Whitehouse
de in libgfs2 itself. Signed-off-by: Steven Whitehouse --- gfs2/convert/gfs2_convert.c |7 +++ gfs2/fsck/fsck.h|7 +++ gfs2/fsck/metawalk.c| 40 ++-- gfs2/fsck/util.h|1 + gfs2/libgfs2/gfs2_log.c |

[Cluster-devel] [PATCH 1/6] libgfs2: Move generic_interrupt() into utils

2011-11-30 Thread Steven Whitehouse
First patch moving user interface code out of the library Signed-off-by: Steven Whitehouse --- gfs2/convert/gfs2_convert.c | 48 +++ gfs2/fsck/util.c| 48 +++ gfs2/fsck/util.h|4

[Cluster-devel] [PATCH 4/6] libgfs2: Move some debug messages out into mkfs/fsck

2011-11-30 Thread Steven Whitehouse
We don't need to print these messages from the function which calculates the resource group layout, we can do it afterwards. There are still some other messages which need to be relocated from this function, but that is a more tricky operation. Signed-off-by: Steven Whitehouse --- gfs2

[Cluster-devel] libgfs2 cleanups

2011-11-30 Thread Steven Whitehouse
Hi, This patch set is working towards removing all the user interface code from libgfs2. There will be more patches to follow. Once all of the log_xxx() functions are moved out from libgfs2 then we can move the macros into the individual utilities which should more or less complete the job, Steve

[Cluster-devel] libgfs2: Clean up device geometry code

2011-12-01 Thread Steven Whitehouse
>From d427382d1a9fe110357e886d99d02f639593641d Mon Sep 17 00:00:00 2001 From: Steven Whitehouse Date: Thu, 1 Dec 2011 11:49:10 + Subject: [PATCH] libgfs2: Clean up device geometry code The main part of this patch is the creation of a new structure which will contain all the information t

[Cluster-devel] libgfs2: More unused bits (re)moved

2011-12-01 Thread Steven Whitehouse
>From 3a18369266fdaf9fa2e68824da77a2886c6a3b63 Mon Sep 17 00:00:00 2001 From: Steven Whitehouse Date: Thu, 1 Dec 2011 14:23:26 + Subject: [PATCH] libgfs2: More unused bits (re)moved Some headers and constants which are not required are removed and, one set of of constants which is only u

[Cluster-devel] gfs2_edit: Fix signal handling and window resize

2011-12-06 Thread Steven Whitehouse
o still be working correctly. Signed-off-by: Steven Whitehouse diff --git a/gfs2/edit/gfs2hex.c b/gfs2/edit/gfs2hex.c index 5616122..41630f9 100644 --- a/gfs2/edit/gfs2hex.c +++ b/gfs2/edit/gfs2hex.c @@ -56,7 +56,6 @@ int start_row[DMODES], end_row[DMODES], lines_per_row[DMODES]; struct gfs_sb *

[Cluster-devel] libgfs2: Remove more unused macros/functions

2011-12-07 Thread Steven Whitehouse
: Steven Whitehouse diff --git a/gfs2/libgfs2/buf.c b/gfs2/libgfs2/buf.c index 9f074ad..445b0ba 100644 --- a/gfs2/libgfs2/buf.c +++ b/gfs2/libgfs2/buf.c @@ -14,9 +14,7 @@ #include "libgfs2.h" -struct gfs2_buffer_head *__bget_generic(struct gfs2_sbd *sdp, ui

Re: [Cluster-devel] [PATCH] gfs2-utils: Add gfs2-cluster systemd unit

2011-12-13 Thread Steven Whitehouse
Hi, On Tue, 2011-12-13 at 14:20 +, Andrew Price wrote: > Adds a systemd unit file to start gfs_controld at the correct point in > the boot sequence. I've tested this as much as I can on Fedora 16 but it > may require some more tweaking once the init scripts for cman, clvmd, > etc. have been mi

Re: [Cluster-devel] [PATCH] gfs2-utils: Add gfs2-cluster systemd unit

2011-12-13 Thread Steven Whitehouse
Hi, On Tue, 2011-12-13 at 15:36 +0100, Fabio M. Di Nitto wrote: > On 12/13/2011 3:20 PM, Andrew Price wrote: > > Adds a systemd unit file to start gfs_controld at the correct point in > > the boot sequence. I've tested this as much as I can on Fedora 16 but it > > may require some more tweaking on

[Cluster-devel] gfs2_convert: clean up question asking code

2011-12-14 Thread Steven Whitehouse
be a separate patch though, and it would be much simpler since there is no reason to prompt the user as to whether to continue or not in the conversion case, since a partial conversion would be useless. Signed-off-by: Steven Whitehouse diff --git a/gfs2/convert/gfs2_convert.c b/gfs2/convert/gfs2_conv

Re: [Cluster-devel] [PATCH 1/2] libgfs2: Expand out calls to die()

2011-12-14 Thread Steven Whitehouse
Hi, Those look like a good start, but we also need to figure out how to push the error handling back into the apps too, Steve. On Wed, 2011-12-14 at 16:20 +, Andrew Price wrote: > Expand out the calls to die() to prepare for the removal of the function > from libgfs2.h > > Signed-off-by: A

Re: [Cluster-devel] [PATCH 1/2] libgfs2: Expand out calls to die()

2011-12-14 Thread Steven Whitehouse
Hi, On Wed, 2011-12-14 at 17:14 +, Andrew Price wrote: > On 14/12/11 16:41, Steven Whitehouse wrote: > > Hi, > > > > Those look like a good start, but we also need to figure out how to push > > the error handling back into the apps too, > > Yes, I made a te

[Cluster-devel] fsck.gfs2: Use sigaction and not signal syscall

2011-12-15 Thread Steven Whitehouse
>From 97e49d3e55bcfce2fb2f8547528cf2f373e0843d Mon Sep 17 00:00:00 2001 From: Steven Whitehouse Date: Thu, 15 Dec 2011 10:36:51 + Subject: [PATCH 1/2] fsck.gfs2: Use sigaction and not signal syscall The signal syscall is obsolete and should not be used. Signed-off-by: Steven Whiteho

[Cluster-devel] fsck.gfs2: Clean up pass calling code

2011-12-15 Thread Steven Whitehouse
>From 4e664f2ae4ee2d58469a83216a2e049a614b2964 Mon Sep 17 00:00:00 2001 From: Steven Whitehouse Date: Thu, 15 Dec 2011 11:29:45 + Subject: [PATCH 2/2] fsck.gfs2: Clean up pass calling code There was a lot of repeated code for running each pass of fsck. This cleans it up into a sin

[Cluster-devel] libgfs2: Add iovec to gfs2_buffer_head

2011-12-16 Thread Steven Whitehouse
So that we keep track of buffer sizes, add an iovec to the gfs2_buffer_head structure. This uses an unnamed union in order to be backwards compatible with users of b_data. Signed-off-by: Steven Whitehouse diff --git a/gfs2/libgfs2/buf.c b/gfs2/libgfs2/buf.c index 445b0ba..956dd8b 100644 --- a

Re: [Cluster-devel] [PATCH 1/5] dlm: convert rsb list to rb_tree

2011-12-19 Thread Steven Whitehouse
Hi, Looks good to me, Steve. On Fri, 2011-12-16 at 16:03 -0600, David Teigland wrote: > From: Bob Peterson > > Change the linked lists to rb_tree's in the rsb > hash table to speed up searches. Slow rsb searches > were having a large impact on gfs2 performance due > to the large number of dlm

Re: [Cluster-devel] [PATCH 2/5] dlm: move recovery barrier calls

2011-12-19 Thread Steven Whitehouse
Hi, Acked-by: Steven Whitehouse Steve. On Fri, 2011-12-16 at 16:03 -0600, David Teigland wrote: > Put all the calls to recovery barriers in the same function > to clarify where they each happen. Should not change any behavior. > Also modify some recovery debug lines to make them c

Re: [Cluster-devel] [PATCH 3/5] dlm: add node slots and generation

2011-12-19 Thread Steven Whitehouse
Hi, Acked-by: Steven Whitehouse Steve. On Fri, 2011-12-16 at 16:03 -0600, David Teigland wrote: > Slot numbers are assigned to nodes when they join the lockspace. > The slot number chosen is the minimum unused value starting at 1. > Once a node is assigned a slot, that slot number

Re: [Cluster-devel] [PATCH 4/5] dlm: add recovery callbacks

2011-12-19 Thread Steven Whitehouse
Hi, On Fri, 2011-12-16 at 16:03 -0600, David Teigland wrote: > These new callbacks notify the dlm user about lock recovery. > GFS2, and possibly others, need to be aware of when the dlm > will be doing lock recovery for a failed lockspace member. > > In the past, this coordination has been done b

Re: [Cluster-devel] [PATCH 5/5] gfs2: dlm based recovery coordination

2011-12-19 Thread Steven Whitehouse
On Fri, 2011-12-16 at 16:03 -0600, David Teigland wrote: > This new method of managing recovery is an alternative to > the previous approach of using the userland gfs_controld. > > - use dlm slot numbers to assign journal id's > - use dlm recovery callbacks to initiate journal recovery > - use a d

Re: [Cluster-devel] [PATCH 5/5] gfs2: dlm based recovery coordination

2011-12-19 Thread Steven Whitehouse
Hi, On Fri, 2011-12-16 at 16:03 -0600, David Teigland wrote: > This new method of managing recovery is an alternative to > the previous approach of using the userland gfs_controld. > > - use dlm slot numbers to assign journal id's > - use dlm recovery callbacks to initiate journal recovery > - us

Re: [Cluster-devel] [PATCH 5/5] gfs2: dlm based recovery coordination

2011-12-20 Thread Steven Whitehouse
Hi, On Mon, 2011-12-19 at 12:47 -0500, David Teigland wrote: > On Mon, Dec 19, 2011 at 01:07:38PM +0000, Steven Whitehouse wrote: > > > struct lm_lockstruct { > > > int ls_jid; > > > unsigned int ls_first; > > > - unsigned int ls_first_done; > >

[Cluster-devel] libgfs2: Add beginnings of a metadata description

2011-12-20 Thread Steven Whitehouse
>From f2d72f2786b1fc23188657e767ca754e94d2306c Mon Sep 17 00:00:00 2001 From: Steven Whitehouse Date: Tue, 20 Dec 2011 20:01:35 + Subject: [PATCH] libgfs2: Add beginnings of a metadata description The intent here is to start a framework which will describe the GFS/GFS2 metadata in eno

Re: [Cluster-devel] [PATCH 5/5] gfs2: dlm based recovery coordination

2011-12-21 Thread Steven Whitehouse
Hi, On Tue, 2011-12-20 at 16:04 -0500, David Teigland wrote: > On Tue, Dec 20, 2011 at 02:16:43PM -0500, David Teigland wrote: > > On Tue, Dec 20, 2011 at 10:39:08AM +0000, Steven Whitehouse wrote: > > > > I dislike arbitrary delays also, so I'm hesitant to add them. &g

[Cluster-devel] libgfs2: Remove struct gfs_rindex from header, etc

2011-12-21 Thread Steven Whitehouse
>From 68d716d56f92c413303ac5923ae9b720a6817413 Mon Sep 17 00:00:00 2001 From: Steven Whitehouse Date: Wed, 21 Dec 2011 14:09:03 + Subject: [PATCH] libgfs2: Remove struct gfs_rindex from header, etc Since struct gfs_rindex is identical to gfs2_rindex, we don't really need two struct

[Cluster-devel] libgfs2: Use endian defined types for GFS1 on disk

2011-12-21 Thread Steven Whitehouse
>From ff83d91921dc2dde468414955c3c08d57fc9d3d9 Mon Sep 17 00:00:00 2001 From: Steven Whitehouse Date: Wed, 21 Dec 2011 14:33:41 + Subject: [PATCH] libgfs2: Use endian defined types for GFS1 on disk structures Since we are using these types anyway, for the GFS2 on disk structures, and we

[Cluster-devel] edit: Fix up block type recognition

2011-12-21 Thread Steven Whitehouse
>From 2e7894812a418bb017e5650400a86a10d354daec Mon Sep 17 00:00:00 2001 From: Steven Whitehouse Date: Wed, 21 Dec 2011 15:17:44 + Subject: [PATCH] edit: Fix up block type recognition The code was only using a single byte of the block type field for some reason. This fixes it to read

[Cluster-devel] fsck/libgfs2: Add a couple of missing header files

2011-12-22 Thread Steven Whitehouse
>From 00a72262f58e8d2da28e66a06e38d00b88a8f419 Mon Sep 17 00:00:00 2001 From: Steven Whitehouse Date: Thu, 22 Dec 2011 11:54:46 + Subject: [PATCH] fsck/libgfs2: Add a couple of missing header files This silences a couple of compiler warnings Signed-off-by: Steven Whitehouse --- gfs2/f

[Cluster-devel] libgfs2: Add a few structures missed from the initial version of meta.c

2011-12-22 Thread Steven Whitehouse
>From d2cc9641066bff8a31aad132816d4378f20298cc Mon Sep 17 00:00:00 2001 From: Steven Whitehouse Date: Thu, 22 Dec 2011 11:48:07 + Subject: [PATCH 1/2] libgfs2: Add a few structures missed from the initial version of meta.c Some GFS structures were missed from the original meta.c, so t

[Cluster-devel] libgfs2: Add some tables of symbolic constant names

2011-12-22 Thread Steven Whitehouse
>From cebc412778d0963a65b42f3e89dd27bad30ef50f Mon Sep 17 00:00:00 2001 From: Steven Whitehouse Date: Thu, 22 Dec 2011 15:40:59 + Subject: [PATCH] libgfs2: Add some tables of symbolic constant names This covers metadata types, formats and di_flags. As time goes on, I expect the number

[Cluster-devel] edit: Hook up gfs2_edit to use new metadata info from libgfs2

2011-12-22 Thread Steven Whitehouse
>From 6115d0f689fe6b06e2469623fed1476684dd140c Mon Sep 17 00:00:00 2001 From: Steven Whitehouse Date: Thu, 22 Dec 2011 16:41:13 + Subject: [PATCH] edit: Hook up gfs2_edit to use new metadata info from libgfs2 This is really intended as a demo. It is left as an exercise for the reader

Re: [Cluster-devel] [PATCH 5/5] gfs2: dlm based recovery coordination

2011-12-23 Thread Steven Whitehouse
Hi, On Thu, 2011-12-22 at 16:23 -0500, David Teigland wrote: > On Mon, Dec 19, 2011 at 12:47:38PM -0500, David Teigland wrote: > > On Mon, Dec 19, 2011 at 01:07:38PM +0000, Steven Whitehouse wrote: > > > > struct lm_lockstruct { > > > > int ls_jid; >

Re: [Cluster-devel] linux-next: Tree for Dec 28 (gfs2)

2012-01-03 Thread Steven Whitehouse
Hi, On Wed, 2011-12-28 at 13:09 -0800, Randy Dunlap wrote: > On 12/28/2011 01:18 AM, Stephen Rothwell wrote: > > Hi all, > > > > I got bored :-( I also hate tree wide, flag day changes :-( > > > > Changes since 20111222: > > > modular: > ERROR: "gfs2_control_wq" [fs/gfs2/gfs2.ko] undefined! >

Re: [Cluster-devel] [GFS2 Patch] GFS2: fsck.gfs2 finds unlinked inodes on full file systems

2012-01-05 Thread Steven Whitehouse
Hi, This doesn't compile CC [M] fs/gfs2/inode.o fs/gfs2/inode.c: In function ‘gfs2_create_inode’: fs/gfs2/inode.c:741:2: error: implicit declaration of function ‘gfs2_dinode_dealloc’ make[2]: *** [fs/gfs2/inode.o] Error 1 make[1]: *** [fs/gfs2] Error 2 make: *** [fs] Error 2 Steve. On W

[Cluster-devel] GFS2: Pre-pull patch posting (merge window)

2012-01-05 Thread Steven Whitehouse
Hi, The main feature this time is clean up around the allocation and resource group code. Otherwise the remainder is mostly small bug fixes. I've held back the glock stats patch and that will probably be ready for the following merge window with a bit of luck, Steve.

[Cluster-devel] [PATCH 03/16] GFS2: More automated code analysis fixes

2012-01-05 Thread Steven Whitehouse
A potentially uninitialised variable, some unreachable code, and the main part of this, fixing the error path in the unlink function. Signed-off-by: Steven Whitehouse diff --git a/fs/gfs2/bmap.c b/fs/gfs2/bmap.c index 41d494d..f6be14f 100644 --- a/fs/gfs2/bmap.c +++ b/fs/gfs2/bmap.c @@ -743,9

[Cluster-devel] [PATCH 02/16] GFS2: Add readahead to sequential directory traversal

2012-01-05 Thread Steven Whitehouse
ve ls (time ls -fR /mnt/gfs2 > /dev/null) was reduced from 2m2.814s on a stock kernel to 0m45.938s. Signed-off-by: Bob Peterson Signed-off-by: Steven Whitehouse diff --git a/fs/gfs2/dir.c b/fs/gfs2/dir.c index 8ccad24..9144117 100644 --- a/fs/gfs2/dir.c +++ b/fs/gfs2/dir.c @@ -76,6 +76,8 @@

[Cluster-devel] [PATCH 01/16] GFS2: Fix up REQ flags

2012-01-05 Thread Steven Whitehouse
ere it was missing. REQ_PRIO has been left for read/writes triggered by glock acquisition and writeback only. We can adjust it again if required, but these are the most important points from a performance perspective. Signed-off-by: Steven Whitehouse Cc: Christoph Hellwig diff --git a/fs/gfs2/log.c

[Cluster-devel] [PATCH 04/16] GFS2: Fix very unlikley memory leak in ACL xattr code

2012-01-05 Thread Steven Whitehouse
the error path, and also removes a test which is no longer required (gfs2_ea_get_copy always returns either a negative error, or a length) Signed-off-by: Steven Whitehouse diff --git a/fs/gfs2/xattr.c b/fs/gfs2/xattr.c index 71d7bf8..a201a1d 100644 --- a/fs/gfs2/xattr.c +++ b/fs/gfs2/xattr.c

[Cluster-devel] [PATCH 06/16] GFS2: Add non-try locks back to get_local_rgrp

2012-01-05 Thread Steven Whitehouse
searches. Prior to that patch, the code used TRY locks during the first loop, and if that was unsuccessful, it used normal blocking locks on subsequent searches. This patch changes it back to the old way. Signed-off-by: Bob Peterson Signed-off-by: Steven Whitehouse diff --git a/fs/gfs2/rgrp.c b

[Cluster-devel] [PATCH 09/16] GFS2: O_(D)SYNC support for fallocate

2012-01-05 Thread Steven Whitehouse
call generic_write_sync() at the end. I know that potentially this will sync data as well within the range, but I think that is a fairly harmless side-effect overall, since we would not normally expect there to be any dirty data within the range in question. Signed-off-by: Steven Whitehouse Cc: Chri

[Cluster-devel] [PATCH 11/16] GFS2: Fix up "off by one" in the previous patch

2012-01-05 Thread Steven Whitehouse
The trace point should take extlen and not *ndata as the extent length. Signed-off-by: Steven Whitehouse diff --git a/fs/gfs2/rgrp.c b/fs/gfs2/rgrp.c index b8935af..f1d1960 100644 --- a/fs/gfs2/rgrp.c +++ b/fs/gfs2/rgrp.c @@ -1378,7 +1378,7 @@ int gfs2_alloc_blocks(struct gfs2_inode *ip, u64

[Cluster-devel] [PATCH 08/16] GFS2: remove vestigial al_alloced

2012-01-05 Thread Steven Whitehouse
allocations. Signed-off-by: Bob Peterson Signed-off-by: Steven Whitehouse diff --git a/fs/gfs2/incore.h b/fs/gfs2/incore.h index 7389dfd..32f5bec 100644 --- a/fs/gfs2/incore.h +++ b/fs/gfs2/incore.h @@ -251,7 +251,6 @@ struct gfs2_alloc { unsigned int al_qd_num; u32 al_requested

[Cluster-devel] [PATCH 05/16] GFS2: f_ra is always valid in dir readahead function

2012-01-05 Thread Steven Whitehouse
As a result, we don't need to test it each time. Signed-off-by: Steven Whitehouse Cc: Bob Peterson diff --git a/fs/gfs2/dir.c b/fs/gfs2/dir.c index 9144117..946b6f8 100644 --- a/fs/gfs2/dir.c +++ b/fs/gfs2/dir.c @@ -1378,12 +1378,14 @@ out: return error; } -/* gfs2_dir_read

[Cluster-devel] [PATCH 10/16] GFS2: move toward a generic multi-block allocator

2012-01-05 Thread Steven Whitehouse
allocate, plus whether or not to allocate a dinode. In theory, it could be called to allocate (1) a single dinode block, (2) a group of one or more data blocks, or (3) a dinode plus several data blocks. Signed-off-by: Bob Peterson Signed-off-by: Steven Whitehouse diff --git a/fs/gfs2/bmap.c b/fs

[Cluster-devel] [PATCH 12/16] GFS2: split function rgblk_search

2012-01-05 Thread Steven Whitehouse
From: Bob Peterson This patch splits function rgblk_search into a function that finds blocks to allocate (rgblk_search) and a function that assigns those blocks (gfs2_alloc_extent). Signed-off-by: Bob Peterson Signed-off-by: Steven Whitehouse diff --git a/fs/gfs2/rgrp.c b/fs/gfs2/rgrp.c

<    1   2   3   4   5   6   7   8   9   10   >