[Cluster-devel] Re: [PATCH 01/25] VFS: move attr_kill logic from notify_change into helper function

2007-08-07 Thread Christoph Hellwig
+void attr_kill_to_mode(struct inode *inode, struct iattr *attr) This function badly needs a kerneldoc description. Also I can't say I like the name a lot, but without a clearly better idea I should probably not complain :) We should at least add a generic_ prefix to indicate it's a generic

[Cluster-devel] Re: [PATCH 1/2] NLM failover unlock commands

2008-01-08 Thread Christoph Hellwig
On Mon, Jan 07, 2008 at 12:39:25AM -0500, Wendy Cheng wrote: +#define DEBUG 0 +#define fo_printk(x...) ((void)(DEBUG printk(x))) Please don't introduce more debugging helpers but use the existing ones. +extern __u32 in_aton(const char *str); This is properly declared in linux/inet.h +

[Cluster-devel] Re: [PATCH 1/2] NLM failover unlock commands

2008-01-08 Thread Christoph Hellwig
Ok, I played around with this and cleaned up the ip/path codepathes to be entirely setup which helped the code quite a bit. Also a few other cleanups and two bugfixes (postive error code returned and missing path_release) fell out of it. I still don't like what's going on in fs/lockd/svcsubs.c,

[Cluster-devel] Re: [PATCH 1/2] NLM failover unlock commands

2008-01-09 Thread Christoph Hellwig
On Tue, Jan 08, 2008 at 03:57:45PM -0500, Wendy Cheng wrote: Christoph Hellwig wrote: Ok, I played around with this and cleaned up the ip/path codepathes to be entirely setup which helped the code quite a bit. Also a few other Thanks for doing this :) . In the middle of running

[Cluster-devel] Re: [PATCH 1/2] NLM failover unlock commands

2008-01-10 Thread Christoph Hellwig
On Wed, Jan 09, 2008 at 06:02:15PM +, Christoph Hellwig wrote: On Tue, Jan 08, 2008 at 03:57:45PM -0500, Wendy Cheng wrote: Christoph Hellwig wrote: Ok, I played around with this and cleaned up the ip/path codepathes to be entirely setup which helped the code quite a bit. Also a few

[Cluster-devel] Re: GFS2: Add tracepoints

2009-05-30 Thread Christoph Hellwig
On Fri, May 29, 2009 at 08:50:10PM +0100, Steven Whitehouse wrote: This is extremly inefficient. We'd be much better off just storing the dev_t and introducing a __trace_bdevname to expand a bdevname into the tracer buffer. It's been on my todo list for a while and I'll look into it next

[Cluster-devel] Re: GFS2: Allow all meta/normal mount combinations

2009-06-05 Thread Christoph Hellwig
On Fri, Jun 05, 2009 at 02:52:16PM +0100, Steven Whitehouse wrote: +static int gfs2_get_sb(struct file_system_type *fs_type, int flags, +const char *dev_name, void *data, struct vfsmount *mnt) +{ + struct super_block *s; + struct gfs2_sbd *sdp; + int ret; +

[Cluster-devel] Re: GFS2: Allow all meta/normal mount combinations

2009-06-08 Thread Christoph Hellwig
On Fri, Jun 05, 2009 at 03:17:43PM +0100, Steven Whitehouse wrote: This is pretty ugly. Even if this is how the old gfs2meta filesystem worked I would prefer to only allow it if mounted as type gfs2meta, not for normal gfs2 mount and gradually phase it out. Which bit is ugly? We need to

[Cluster-devel] Re: move gfs2 tracepoints to inclue/trace/events dir

2009-10-09 Thread Christoph Hellwig
On Fri, Oct 09, 2009 at 12:01:16PM -0400, Jason Baron wrote: hi, I'd like to move the gfs2 tracepoints to the the common include/trace/events directory along with all of the other trace events. It makes understanding what tracepoints are available easier, and I see no reason why gfs2 should

[Cluster-devel] Re: move gfs2 tracepoints to inclue/trace/events dir

2009-10-25 Thread Christoph Hellwig
On Mon, Oct 12, 2009 at 12:00:37PM +0200, Ingo Molnar wrote: yeah. I have no objection to adding it to include/trace/. Tracepoints are a fundamentally global business. Subsystems can opt to hide their tracepoints locally, but it's better to have a global view about what's out there, so

[Cluster-devel] [PATCH] gfs2: add barrier/nobarrier mount options

2009-10-30 Thread Christoph Hellwig
on at remount time. Signed-off-by: Christoph Hellwig h...@lst.de Index: linux-2.6/fs/gfs2/incore.h === --- linux-2.6.orig/fs/gfs2/incore.h 2009-10-30 07:43:42.246023792 +0100 +++ linux-2.6/fs/gfs2/incore.h 2009-10-30 07:44:11.173255988

Re: [Cluster-devel] [PATCHv2 00/12]posix_acl: Add the check items

2009-12-21 Thread Christoph Hellwig
I like taking these checks into posix_acl_valid, but I think the patch submission needs a bit more work. All the patches are extremly whitespace mangled. And I don't think splitting them up makes a whole lot of sense, when we do API changes like this we usually fix up all callers. So please try

Re: [Cluster-devel] [PATCH 2/2] gfs2: Use CALLER_ADDR0 macro.

2009-12-21 Thread Christoph Hellwig
On Mon, Dec 21, 2009 at 09:22:41AM +, Steven Whitehouse wrote: Hi, Looks fairly harmless, even though I don't entirely see the point. Do you want me to add this to me tree? We also have a _RET_IP_ macro that does the same and has a much more useful name. And given that we need the

Re: [Cluster-devel] [PATCH 1/4] gfs2: add IO submission trace points

2010-02-05 Thread Christoph Hellwig
On Fri, Feb 05, 2010 at 09:49:54AM +, Steven Whitehouse wrote: Hi, On Fri, 2010-02-05 at 16:45 +1100, Dave Chinner wrote: Useful for tracking down where specific IOs are being issued from. Signed-off-by: Dave Chinner dchin...@redhat.com --- fs/gfs2/log.c|6 ++

[Cluster-devel] [PATCH] gfs2: do not select QUOTA

2010-03-03 Thread Christoph Hellwig
gfs2 only needs the quotactl code, not the generic quota implementation. Signed-off-by: Christoph Hellwig h...@lst.de Index: linux-2.6/fs/gfs2/Kconfig === --- linux-2.6.orig/fs/gfs2/Kconfig 2010-03-03 14:48:00.292026869 +0100

[Cluster-devel] [PATCH] gfs2: fix quota state reporting

2010-05-04 Thread Christoph Hellwig
We need to report both the accounting and enforcing flags if we are in enforcing mode. Signed-off-by: Christoph Hellwig h...@lst.de Index: xfs/fs/gfs2/quota.c === --- xfs.orig/fs/gfs2/quota.c2010-05-04 23:16:59.718256886 +0200

Re: [Cluster-devel] [PATCH 1/3] GFS2: Rework reclaiming unlinked dinodes

2010-05-25 Thread Christoph Hellwig
On Tue, May 25, 2010 at 09:21:27AM +0100, Steven Whitehouse wrote: From: Bob Peterson rpete...@redhat.com The previous patch I wrote for reclaiming unlinked dinodes had some shortcomings and did not prevent all hangs. This version is much cleaner and more logical, and has passed very

Re: [Cluster-devel] GFS2: Wait for journal id on mount if not specified on mount command line

2010-06-08 Thread Christoph Hellwig
On Mon, Jun 07, 2010 at 12:34:14PM -0500, David Teigland wrote: IIRC, nfs recently moved to using a mount helper after *not* using one for many years. It would be interesting to ask them about their motivations. That's not correct at all. NFS has required special mount code since day 1 and

Re: [Cluster-devel] GFS2: Make . and .. qstrs constant

2010-09-08 Thread Christoph Hellwig
On Wed, Sep 08, 2010 at 04:35:20PM +0100, Steven Whitehouse wrote: From bc9fb728211162a24afd341c9ffb85e7b459fb8d Mon Sep 17 00:00:00 2001 From: Steven Whitehouse swhit...@redhat.com Date: Wed, 8 Sep 2010 16:02:13 +0100 Subject: GFS2: Make . and .. qstrs constant Rather than calculating the

Re: [Cluster-devel] [GFS2][PATCH] - Userland expects quota limit/warn/usage in 512b blocks

2010-11-19 Thread Christoph Hellwig
using 512b blocks. Oops, thanks for fixing this up. Reviewed-by: Christoph Hellwig h...@lst.de

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

2011-11-16 Thread Christoph Hellwig
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 blocks that return zeroes) that seems like a fairly nasty surprise for

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

2011-11-16 Thread Christoph Hellwig
On Wed, Nov 16, 2011 at 11:54:13AM +0100, Jan Kara wrote: Yeah, only that nobody calls that fsync() automatically if the fd is O_SYNC if I'm right. But maybe calling fdatasync() on the range which was fallocated from sys_fallocate() if the fd is O_SYNC would do the trick for most

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

2011-11-16 Thread Christoph Hellwig
On Wed, Nov 16, 2011 at 02:39:15PM +0100, Jan Kara wrote: This would work fine with XFS and be equivalent to what it does for O_DSYNC now. But I'd rather see every filesystem do the right thing and make sure the update actually is on disk when doing O_(D)SYNC operations. OK, I don't

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

2011-11-16 Thread Christoph Hellwig
On Wed, Nov 16, 2011 at 04:57:55PM +0100, Jan Kara wrote: I agree with you that userspace shouldn't have to call fsync. What I meant is that sys_fallocate() or do_fallocate() can call generic_write_sync(file, pos, len), and that would be completely transparent to userspace. That's different

Re: [Cluster-devel] [PATCH v1 11/11] locks: give the blocked_hash its own spinlock

2013-06-04 Thread Christoph Hellwig
Having RCU for modification mostly workloads never is a good idea, so I don't think it makes sense to mention it here. If you care about the overhead it's worth trying to use per-cpu lists, though.

Re: [Cluster-devel] [Patch net-next v2 6/8] fs: use generic union inet_addr and helper functions

2013-08-02 Thread Christoph Hellwig
On Fri, Aug 02, 2013 at 03:14:32PM +0800, Cong Wang wrote: From: Cong Wang amw...@redhat.com nfs and cifs define some helper functions for sockaddr, they can use the generic functions for union inet_addr too. Since some dlm code needs to compare -sin_port, introduce a generic function

Re: [Cluster-devel] [Patch net-next v3 7/9] fs: use generic union inet_addr and helper functions

2013-08-19 Thread Christoph Hellwig
@@ -1900,17 +1901,9 @@ srcip_matches(struct sockaddr *srcaddr, struct sockaddr *rhs) { I think your new sockaddr_equal should be equivalent to to this srcip_matches, that is it should warn about and return false for unknown address families.

Re: [Cluster-devel] [PATCH 0/6] list: introduce list_last_entry_or_null()

2013-11-15 Thread Christoph Hellwig
On Fri, Nov 15, 2013 at 12:29:48PM +0800, Jeff Liu wrote: Hi Folks, This patch is trying to introduce a new list helper to retrieve the last entry or return NULL if the list is empty corresponding to it, which is inspired by Jiri Pirko's list_first_entry_or_null(). How did we end up with

[Cluster-devel] [PATCH 10/18] hfsplus: use generic posix ACL infrastructure

2013-12-01 Thread Christoph Hellwig
Signed-off-by: Christoph Hellwig h...@lst.de --- fs/hfsplus/acl.h |9 +-- fs/hfsplus/dir.c |1 + fs/hfsplus/inode.c |3 +- fs/hfsplus/posix_acl.c | 161 +--- fs/hfsplus/xattr.c |5 +- fs/hfsplus/xattr.h |2

[Cluster-devel] [PATCH 09/18] f2fs: use generic posix ACL infrastructure

2013-12-01 Thread Christoph Hellwig
f2fs has some weird mode bit handling, so still using the old chmod code for now. Signed-off-by: Christoph Hellwig h...@lst.de --- fs/f2fs/acl.c | 140 +-- fs/f2fs/acl.h |1 + fs/f2fs/file.c |1 + fs/f2fs/namei.c |2 + fs/f2fs

[Cluster-devel] [PATCH 07/18] btrfs: use generic posix ACL infrastructure

2013-12-01 Thread Christoph Hellwig
Signed-off-by: Christoph Hellwig h...@lst.de --- fs/btrfs/acl.c | 135 -- fs/btrfs/ctree.h |7 +-- fs/btrfs/inode.c |7 ++- fs/btrfs/xattr.c |5 +- fs/btrfs/xattr.h |2 - 5 files changed, 29 insertions(+), 127 deletions

[Cluster-devel] [PATCH 04/18] fs: add generic xattr_acl handlers

2013-12-01 Thread Christoph Hellwig
With the -set_acl inode operation we can implement the Posix ACL xattr handlers in generic code instead of duplicating them all over the tree. Signed-off-by: Christoph Hellwig h...@lst.de --- fs/xattr_acl.c | 95 +++ include/linux

[Cluster-devel] [PATCH 01/18] reiserfs: prefix ACL symbols with reiserfs_

2013-12-01 Thread Christoph Hellwig
Signed-off-by: Christoph Hellwig h...@lst.de --- fs/reiserfs/xattr_acl.c | 20 ++-- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/fs/reiserfs/xattr_acl.c b/fs/reiserfs/xattr_acl.c index 06c04f7..6f721ea 100644 --- a/fs/reiserfs/xattr_acl.c +++ b/fs/reiserfs

Re: [Cluster-devel] [PATCH 12/18] ocfs2: use generic posix ACL infrastructure

2013-12-03 Thread Christoph Hellwig
On Tue, Dec 03, 2013 at 12:00:07AM +0100, Jan Kara wrote: Hum, this changes the cluster locking. Previously ocfs2_acl_get() used from ocfs2_acl_chmod() grabbed cluster wide inode lock. Now getting of ACL isn't protected by the inode lock. That being said the cluster locking around setattr

Re: [Cluster-devel] [PATCH 16/18] gfs2: use generic posix ACL infrastructure

2013-12-06 Thread Christoph Hellwig
On Wed, Dec 04, 2013 at 12:12:37PM +, Steven Whitehouse wrote: error = posix_acl_equiv_mode(acl, mode); + if (error 0) Andy Price has pointed out a missing return error; here - if (error = 0) { - posix_acl_release(acl); +

Re: [Cluster-devel] [PATCH 09/18] f2fs: use generic posix ACL infrastructure

2013-12-08 Thread Christoph Hellwig
On Fri, Dec 06, 2013 at 10:37:34AM +0900, Jaegeuk Kim wrote: f2fs caches a new mode bit for a while to make the consistency between xattr's acl mode and the inode mode. Can you explain what exactly you're trying to do there? I've been trying to unwrap what's going on and can't really see the

[Cluster-devel] [PATCH 03/18] fs: add a set_acl inode operation

2013-12-11 Thread Christoph Hellwig
This will allow moving all the Posix ACL handling into the VFS and clean up tons of cruft in the filesystems. Signed-off-by: Christoph Hellwig h...@lst.de Reviewed-by: Jan Kara j...@suse.cz --- include/linux/fs.h |1 + 1 file changed, 1 insertion(+) diff --git a/include/linux/fs.h b/include

[Cluster-devel] [PATCH 04/18] fs: add generic xattr_acl handlers

2013-12-11 Thread Christoph Hellwig
With the -set_acl inode operation we can implement the Posix ACL xattr handlers in generic code instead of duplicating them all over the tree. Signed-off-by: Christoph Hellwig h...@lst.de Reviewed-by: Jan Kara j...@suse.cz --- fs/xattr_acl.c | 102

[Cluster-devel] [PATCH 14/18] xfs: use generic posix ACL infrastructure

2013-12-11 Thread Christoph Hellwig
Also don't bother to set up a .get_acl method for symlinks as we do not support access control (ACLs or even mode bits) for symlinks in Linux, and create inodes with the proper mode instead of fixing it up later. Signed-off-by: Christoph Hellwig h...@lst.de Reviewed-by: Dave Chinner dchin

[Cluster-devel] [PATCH 02/18] fs: add get_acl helper

2013-12-11 Thread Christoph Hellwig
Factor out the code to get an ACL either from the inode or disk from check_acl, so that it can be used elsewhere later on. Signed-off-by: Christoph Hellwig h...@lst.de Reviewed-by: Jan Kara j...@suse.cz --- fs/namei.c| 24 +++- fs/posix_acl.c

[Cluster-devel] [PATCH 17/18] nfs: use generic posix ACL infrastructure for v3 Posix ACLs

2013-12-11 Thread Christoph Hellwig
Signed-off-by: Christoph Hellwig h...@lst.de --- fs/nfs/inode.c |4 - fs/nfs/nfs3acl.c | 287 +--- fs/nfs/nfs3proc.c | 26 +++-- fs/nfs/nfs3super.c |3 + include/linux/nfs_fs.h | 10 +- 5 files changed, 76 insertions

[Cluster-devel] [PATCH 12/18] ocfs2: use generic posix ACL infrastructure

2013-12-11 Thread Christoph Hellwig
This contains some major refactoring for the create path so that inodes are created with the right mode to start with instead of fixing it up later. Signed-off-by: Christoph Hellwig h...@lst.de --- fs/ocfs2/acl.c | 234 ++- fs/ocfs2/acl.h

[Cluster-devel] [PATCH 18/18] fs: remove generic_acl

2013-12-11 Thread Christoph Hellwig
And instead convert tmpfs to use the new generic ACL code, with two stub methods provided for in-memory filesystems. Signed-off-by: Christoph Hellwig h...@lst.de --- fs/Kconfig |6 +- fs/Makefile |1 - fs/generic_acl.c| 184

[Cluster-devel] [PATCH 05/18] fs: make posix_acl_chmod more useful

2013-12-11 Thread Christoph Hellwig
Rename the current posix_acl_chmod to __posix_acl_chmod and add a fully featured ACL chmod helper that uses the -set_acl inode operation. Signed-off-by: Christoph Hellwig h...@lst.de Reviewed-by: Jan Kara j...@suse.cz --- fs/9p/acl.c |2 +- fs/btrfs/acl.c|2

[Cluster-devel] [PATCH 10/18] hfsplus: use generic posix ACL infrastructure

2013-12-11 Thread Christoph Hellwig
Signed-off-by: Christoph Hellwig h...@lst.de Reviewed-by: Vyacheslav Dubeyko sl...@dubeyko.com --- fs/hfsplus/acl.h |9 +-- fs/hfsplus/dir.c |1 + fs/hfsplus/inode.c |3 +- fs/hfsplus/posix_acl.c | 168 +--- fs/hfsplus

[Cluster-devel] [PATCH 13/18] reiserfs: use generic posix ACL infrastructure

2013-12-11 Thread Christoph Hellwig
Also don't bother to set up a .get_acl method for symlinks as we do not support access control (ACLs or even mode bits) for symlinks in Linux. Signed-off-by: Christoph Hellwig h...@lst.de Reviewed-by: Jan Kara j...@suse.cz --- fs/reiserfs/acl.h |4 +- fs/reiserfs/file.c |1

Re: [Cluster-devel] [PATCH 02/18] fs: add get_acl helper

2013-12-12 Thread Christoph Hellwig
On Thu, Dec 12, 2013 at 08:06:09PM +0100, Andreas Gruenbacher wrote: + /* +* A filesystem can force a ACL callback by just never filling the +* ACL cache. But normally you'd fill the cache either at inode +* instantiation time, or on the first -get_acl call. +* +*

[Cluster-devel] [PATCH 0/0] Consolidate Posix ACL implementation V3

2013-12-20 Thread Christoph Hellwig
This series consolidates the various cut'n'pasted Posix ACL implementations into a single common one based on the -get_acl method Linus added a while ago and a new -set_acl counterpart. This remove ~1800 lines of code and provides a single place to implement various nasty little gems of the

[Cluster-devel] [PATCH 05/21] fs: add generic xattr_acl handlers

2013-12-20 Thread Christoph Hellwig
With the -set_acl inode operation we can implement the Posix ACL xattr handlers in generic code instead of duplicating them all over the tree. Signed-off-by: Christoph Hellwig h...@lst.de Reviewed-by: Jan Kara j...@suse.cz --- fs/posix_acl.c | 102

[Cluster-devel] [PATCH 01/21] reiserfs: prefix ACL symbols with reiserfs_

2013-12-20 Thread Christoph Hellwig
Signed-off-by: Christoph Hellwig h...@lst.de Reviewed-by: Jan Kara j...@suse.cz --- fs/reiserfs/xattr_acl.c | 20 ++-- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/fs/reiserfs/xattr_acl.c b/fs/reiserfs/xattr_acl.c index 06c04f7..6f721ea 100644 --- a/fs

[Cluster-devel] [PATCH 14/21] reiserfs: use generic posix ACL infrastructure

2013-12-20 Thread Christoph Hellwig
Also don't bother to set up a .get_acl method for symlinks as we do not support access control (ACLs or even mode bits) for symlinks in Linux. Signed-off-by: Christoph Hellwig h...@lst.de Reviewed-by: Jan Kara j...@suse.cz --- fs/reiserfs/acl.h |4 +- fs/reiserfs/file.c |1

[Cluster-devel] [PATCH 09/21] ext2/3/4: use generic posix ACL infrastructure

2013-12-20 Thread Christoph Hellwig
Signed-off-by: Christoph Hellwig h...@lst.de Reviewed-by: Jan Kara j...@suse.cz --- fs/ext2/acl.c | 188 -- fs/ext2/acl.h |8 +- fs/ext2/file.c |1 + fs/ext2/inode.c |2 +- fs/ext2/namei.c |2 + fs/ext2/xattr.c |8 +- fs/ext2

[Cluster-devel] [PATCH 20/21] nfsd: use get_acl and -set_acl

2013-12-20 Thread Christoph Hellwig
Remove the boilerplate code to marshall and unmarhall ACL objects into xattrs and operate on the posix_acl objects directly. Also move all the ACL handling code into nfs?acl.c where it belongs. Signed-off-by: Christoph Hellwig h...@lst.de --- fs/nfsd/acl.h | 16 ++-- fs/nfsd/nfs2acl.c

[Cluster-devel] [PATCH 13/21] ocfs2: use generic posix ACL infrastructure

2013-12-20 Thread Christoph Hellwig
This contains some major refactoring for the create path so that inodes are created with the right mode to start with instead of fixing it up later. Signed-off-by: Christoph Hellwig h...@lst.de --- fs/ocfs2/acl.c | 234 ++- fs/ocfs2/acl.h

[Cluster-devel] [PATCH 10/21] f2fs: use generic posix ACL infrastructure

2013-12-20 Thread Christoph Hellwig
f2fs has some weird mode bit handling, so still using the old chmod code for now. Signed-off-by: Christoph Hellwig h...@lst.de Reviewed-by: Jaegeuk Kim jaegeuk@samsung.com --- fs/f2fs/acl.c | 174 ++- fs/f2fs/acl.h |7 +-- fs/f2fs

[Cluster-devel] [PATCH 06/21] fs: make posix_acl_chmod more useful

2013-12-20 Thread Christoph Hellwig
Rename the current posix_acl_chmod to __posix_acl_chmod and add a fully featured ACL chmod helper that uses the -set_acl inode operation. Signed-off-by: Christoph Hellwig h...@lst.de Reviewed-by: Jan Kara j...@suse.cz --- fs/9p/acl.c |2 +- fs/btrfs/acl.c|2

[Cluster-devel] [PATCH 00/21] Consolidate Posix ACL implementation V3

2013-12-20 Thread Christoph Hellwig
This series consolidates the various cut'n'pasted Posix ACL implementations into a single common one based on the -get_acl method Linus added a while ago and a new -set_acl counterpart. This remove ~1800 lines of code and provides a single place to implement various nasty little gems of the

[Cluster-devel] [PATCH 03/21] fs: add get_acl helper

2013-12-20 Thread Christoph Hellwig
Factor out the code to get an ACL either from the inode or disk from check_acl, so that it can be used elsewhere later on. Signed-off-by: Christoph Hellwig h...@lst.de Reviewed-by: Jan Kara j...@suse.cz --- fs/namei.c| 24 +++- fs/posix_acl.c

[Cluster-devel] [PATCH 16/21] jfs: use generic posix ACL infrastructure

2013-12-20 Thread Christoph Hellwig
Copy the scheme I introduced to btrfs many years ago to only use the xattr handler for ACLs, but pass plain attrs straight through. Signed-off-by: Christoph Hellwig h...@lst.de Reviewed-by: Dave Kleikamp dave.kleik...@oracle.com --- fs/jfs/acl.c | 105

[Cluster-devel] [PATCH 21/21] hfsplus: remove can_set_xattr

2013-12-20 Thread Christoph Hellwig
-by: Christoph Hellwig h...@lst.de --- fs/hfsplus/xattr.c | 87 ++-- 1 file changed, 3 insertions(+), 84 deletions(-) diff --git a/fs/hfsplus/xattr.c b/fs/hfsplus/xattr.c index bf88baa..0b4a5c9 100644 --- a/fs/hfsplus/xattr.c +++ b/fs/hfsplus/xattr.c

[Cluster-devel] [PATCH 17/21] gfs2: use generic posix ACL infrastructure

2013-12-20 Thread Christoph Hellwig
This contains some major refactoring for the create path so that inodes are created with the right mode to start with instead of fixing it up later. Signed-off-by: Christoph Hellwig h...@lst.de --- fs/gfs2/acl.c | 234 +++ fs/gfs2/acl.h

[Cluster-devel] [PATCH 19/21] fs: remove generic_acl

2013-12-20 Thread Christoph Hellwig
And instead convert tmpfs to use the new generic ACL code, with two stub methods provided for in-memory filesystems. Signed-off-by: Christoph Hellwig h...@lst.de --- fs/Kconfig |6 +- fs/Makefile |1 - fs/generic_acl.c| 184

[Cluster-devel] [PATCH 15/21] xfs: use generic posix ACL infrastructure

2013-12-20 Thread Christoph Hellwig
Also don't bother to set up a .get_acl method for symlinks as we do not support access control (ACLs or even mode bits) for symlinks in Linux, and create inodes with the proper mode instead of fixing it up later. Signed-off-by: Christoph Hellwig h...@lst.de Reviewed-by: Dave Chinner dchin

[Cluster-devel] [PATCH 02/21] fs: merge xattr_acl.c into posix_acl.c

2013-12-20 Thread Christoph Hellwig
Signed-off-by: Christoph Hellwig h...@lst.de --- fs/Makefile|2 +- fs/posix_acl.c | 180 +--- fs/xattr_acl.c | 180 3 files changed, 174 insertions(+), 188 deletions(-) delete

[Cluster-devel] [PATCH 08/21] btrfs: use generic posix ACL infrastructure

2013-12-20 Thread Christoph Hellwig
Also don't bother to set up a .get_acl method for symlinks as we do not support access control (ACLs or even mode bits) for symlinks in Linux. Signed-off-by: Christoph Hellwig h...@lst.de --- fs/btrfs/acl.c | 142 +++--- fs/btrfs/ctree.h |7

[Cluster-devel] [PATCH 12/21] jffs2: use generic posix ACL infrastructure

2013-12-20 Thread Christoph Hellwig
Also don't bother to set up a .get_acl method for symlinks as we do not support access control (ACLs or even mode bits) for symlinks in Linux. Signed-off-by: Christoph Hellwig h...@lst.de --- fs/jffs2/acl.c | 141 fs/jffs2/acl.h

[Cluster-devel] [PATCH 11/21] hfsplus: use generic posix ACL infrastructure

2013-12-20 Thread Christoph Hellwig
Signed-off-by: Christoph Hellwig h...@lst.de Reviewed-by: Vyacheslav Dubeyko sl...@dubeyko.com --- fs/hfsplus/acl.h |9 +-- fs/hfsplus/dir.c |1 + fs/hfsplus/inode.c |3 +- fs/hfsplus/posix_acl.c | 168 +--- fs/hfsplus

[Cluster-devel] [PATCH 07/21] fs: make posix_acl_create more useful

2013-12-20 Thread Christoph Hellwig
Rename the current posix_acl_created to __posix_acl_create and add a fully featured helper to set up the ACLs on file creation that uses get_acl(). Signed-off-by: Christoph Hellwig h...@lst.de Reviewed-by: Jan Kara j...@suse.cz --- fs/9p/acl.c |2 +- fs/btrfs/acl.c

Re: [Cluster-devel] [PATCH 21/21] hfsplus: remove can_set_xattr

2013-12-22 Thread Christoph Hellwig
On Sat, Dec 21, 2013 at 08:07:51PM +0300, Vyacheslav Dubeyko wrote: -static int can_set_xattr(struct inode *inode, const char *name, - const void *value, size_t value_len) This function works for all handlers. So, I don't think that it makes sense to delete it.

Re: [Cluster-devel] [GFS2 PATCH] GFS2: Increase i_writecount during gfs2_setattr_chown

2014-01-07 Thread Christoph Hellwig
On Mon, Jan 06, 2014 at 05:16:01PM -0500, Bob Peterson wrote: Hi, This patch calls get_write_access in function gfs2_setattr_chown, which merely increases inode-i_writecount for the duration of the function. That will ensure that any file closes won't delete the inode's multi-block

Re: [Cluster-devel] [PATCH v2] ceph: fix posix ACL hooks

2014-02-03 Thread Christoph Hellwig
On Mon, Feb 03, 2014 at 01:03:32PM -0800, Linus Torvalds wrote: Now, to be honest, pushing it down one more level (to generic_permission()) will actually start causing some trouble. In particular, gfs2_permission() fundamentally does not have a dentry for several of the callers. Looking over

Re: [Cluster-devel] [PATCH 03/10] locks: generic_delete_lease doesn't need a file_lock at all

2014-08-23 Thread Christoph Hellwig
, *flp); - Can you keep the tracepoint and modify it to not need the file_lock pointer? It really helped me with some debugging lately. Otherwise looks fine, Reviewed-by: Christoph Hellwig h...@lst.de

Re: [Cluster-devel] [PATCH 06/10] locks: plumb an aux pointer into the setlease routines

2014-08-23 Thread Christoph Hellwig
On Sat, Aug 23, 2014 at 10:41:14AM -0400, Jeff Layton wrote: In later patches, we're going to add a new lock_manager_operation to finish setting up the lease while still holding the i_lock. To do this, we'll need to pass a little bit of info in the fcntl setlease case (primarily an fasync

Re: [Cluster-devel] [PATCH 01/10] locks: close potential race in lease_get_mtime

2014-08-24 Thread Christoph Hellwig
be freed. Ensure that that doesn't occur by taking the i_lock before trying to check the lease. Looks good. Also looks way cleaner than before by being just a tad more verbose.. Reviewed-by: Christoph Hellwig h...@lst.de

Re: [Cluster-devel] [PATCH 02/10] nfsd: fix potential lease memory leak in nfs4_setlease

2014-08-24 Thread Christoph Hellwig
...@primarydata.com Looks good, Reviewed-by: Christoph Hellwig h...@lst.de

Re: [Cluster-devel] [PATCH 05/10] nfsd: don't keep a pointer to the lease in nfs4_file

2014-08-24 Thread Christoph Hellwig
always set that at the same time so it will have the same semantics. Signed-off-by: Jeff Layton jlay...@primarydata.com Looks good, Reviewed-by: Christoph Hellwig h...@lst.de

Re: [Cluster-devel] [PATCH 04/10] locks: clean up vfs_setlease kerneldoc comments

2014-08-24 Thread Christoph Hellwig
On Sat, Aug 23, 2014 at 10:41:12AM -0400, Jeff Layton wrote: Some of the latter paragraphs seem ambiguous and just plain wrong. In particular the break_lease comment makes no sense. We call break_lease (and break_deleg) from all sorts of vfs-layer functions, so there is clearly such a method.

Re: [Cluster-devel] [PATCH 06/10] locks: plumb an aux pointer into the setlease routines

2014-08-24 Thread Christoph Hellwig
On Sun, Aug 24, 2014 at 06:08:01AM -0400, Jeff Layton wrote: Can you just return -EEXIST if reusing an existing one and make it a normal private pointer a we use elsewhere? That sounds a little confusing... We have two pointers we pass down to generic_setlease: the file_lock itself

Re: [Cluster-devel] [PATCH 07/10] locks: define a lm_setup handler for leases

2014-08-24 Thread Christoph Hellwig
I like this change a lot! But one caveat: + /* + * Despite the fact that it's an int return function, __f_setown never + * returns an error. Just ignore any error return here, but spew a + * WARN_ON_ONCE in case this ever changes. + */ +

Re: [Cluster-devel] [PATCH 08/10] locks: move i_lock acquisition into generic_*_lease handlers

2014-08-24 Thread Christoph Hellwig
Looks good, Reviewed-by: Christoph Hellwig h...@lst.de Some comments on further work I'd like to see in this area, though: + spin_lock(inode-i_lock); + time_out_leases(inode); for (before = inode-i_flock; ((fl = *before) != NULL) IS_LEASE(fl

Re: [Cluster-devel] [PATCH 09/10] locks: move freeing of leases outside of i_lock

2014-08-24 Thread Christoph Hellwig
On Sat, Aug 23, 2014 at 10:41:17AM -0400, Jeff Layton wrote: There was only one place where we still could free a file_lock while holding the i_lock -- lease_modify. Add a new list_head argument to the lm_change operation, pass in a private list when calling it, and fix those callers to

Re: [Cluster-devel] [PATCH 00/10] locks/nfsd: internal lease API overhaul

2014-08-24 Thread Christoph Hellwig
One more wishlist item in addition to the one mentioned in the patches: - add a return value to lm_break so that the lock manager can tell the core code you can delete this lease right now. That gets rid of the games with the timeout which require all kinds of race avoidance code in

Re: [Cluster-devel] [PATCH 08/10] locks: move i_lock acquisition into generic_*_lease handlers

2014-08-24 Thread Christoph Hellwig
On Sun, Aug 24, 2014 at 09:06:34AM -0700, Christoph Hellwig wrote: We really should split a lm_release from lm_change, the way it is used is highly confusing. In addition I think a lot of code currently in lease_modify should move here instead, e.g. something like: At this point the old

Re: [Cluster-devel] [PATCH 07/10] locks: define a lm_setup handler for leases

2014-08-26 Thread Christoph Hellwig
On Sun, Aug 24, 2014 at 09:19:53PM -0400, Jeff Layton wrote: I don't think this is a good idea. The errors in __f_setown come from the security modules, and they could change easily. If you can convince the LSM people to change their file_set_fowner routine to return void we could change

Re: [Cluster-devel] [PATCH 00/10] locks/nfsd: internal lease API overhaul

2014-08-26 Thread Christoph Hellwig
On Sun, Aug 24, 2014 at 09:43:01PM -0400, Jeff Layton wrote: - add a return value to lm_break so that the lock manager can tell the core code you can delete this lease right now. That gets rid of the games with the timeout which require all kinds of race avoidance code in the

Re: [Cluster-devel] [PATCH v2 01/17] locks: consolidate nolease routines

2014-09-04 Thread Christoph Hellwig
On Thu, Sep 04, 2014 at 08:38:27AM -0400, Jeff Layton wrote: GFS2 and NFS have setlease routines that always just return -EINVAL. Turn that into a generic routine that can live in fs/libfs.c. Looks good, Reviewed-by: Christoph Hellwig h...@lst.de

Re: [Cluster-devel] [PATCH v2 01/17] locks: consolidate nolease routines

2014-09-04 Thread Christoph Hellwig
On Thu, Sep 04, 2014 at 02:25:35PM -0400, Trond Myklebust wrote: Actually, it looks as if when you compile with !CONFIG_FILE_LOCKING, then fcntl_setlease() returns the value '0' (which would be success!). The word confusing only begins to describe it all. That's incorrect for sure, we should

Re: [Cluster-devel] [PATCH 0/12 v2] Moving i_dquot out of struct inode

2014-10-11 Thread Christoph Hellwig
I still very much disagree with the s_inode_fields indirection. Please find a patch below to remove it, and use a get_dquots super_block operation instead. This leads to less and better readable code, and serves 4 bytes in every inode in the system. Additionally the indirection could easily be

Re: [Cluster-devel] [PATCH 0/12 v2] Moving i_dquot out of struct inode

2014-10-18 Thread Christoph Hellwig
On Fri, Oct 17, 2014 at 09:24:28PM +0200, Jan Kara wrote: I don't see the 4-bytes per inode saving, what am I missing? Frankly, I don't see a difference in readability but since you and Al agree on that I concede to your taste :) It's the removal of s_inode_fields that saves 4 bytes.

Re: [Cluster-devel] [PATCH 0/12 v2] Moving i_dquot out of struct inode

2014-10-19 Thread Christoph Hellwig
On Sat, Oct 18, 2014 at 09:26:24PM +0200, Jan Kara wrote: But that was in the superblock, not in the inode... You're right! Sorry for the confusion.

Re: [Cluster-devel] [PATCH][try6] VFS: new want_holesize and got_holesize buffer_head flags for fiemap

2014-10-22 Thread Christoph Hellwig
This looks like a big indicator that get_blocks is the wrong interface for fiemap.

Re: [Cluster-devel] [PATCH 02/12] quota: Allow each filesystem to specify which quota types it supports

2014-10-22 Thread Christoph Hellwig
On Tue, Oct 21, 2014 at 04:38:26PM +0200, Jan Kara wrote: Currently all filesystems supporting VFS quota support user and group quotas. With introduction of project quotas this is going to change so make sure filesystem isn't called for quota type it doesn't support by introduction of a

Re: [Cluster-devel] [PATCH][try6] VFS: new want_holesize and got_holesize buffer_head flags for fiemap

2014-10-23 Thread Christoph Hellwig
On Wed, Oct 22, 2014 at 08:28:53AM -0400, Bob Peterson wrote: Yes, I thought about that. One of my early prototypes had a separate function used by fiemap. Function __generic_block_fiemap would call get_block() which returned an indication of a hole as it does today. When it saw the hole,

Re: [Cluster-devel] [PATCH 0/12 v4] Moving i_dquot out of struct inode

2014-11-08 Thread Christoph Hellwig
Looks good, Acked-by: Christoph Hellwig h...@lst.de

Re: [Cluster-devel] [PATCH 02/17] quota: Wire up -quota_{enable, disable} callbacks into Q_QUOTA{ON, OFF}

2015-01-19 Thread Christoph Hellwig
; + case PRJQUOTA: + return FS_QUOTA_PDQ_ENFD; + } + return 0; What's the limit_ in the name supposed to mean? Otherwise looks good: Reviewed-by: Christoph Hellwig h...@lst.de

Re: [Cluster-devel] [PATCH 01/17] quota: Split -set_xstate callback into two

2015-01-19 Thread Christoph Hellwig
-off-by: Jan Kara j...@suse.cz Looks good, Reviewed-by: Christoph Hellwig h...@lst.de

Re: [Cluster-devel] [PATCH 04/17] ext4: Use generic helpers for quotaon and quotaoff

2015-01-19 Thread Christoph Hellwig
Looks good, Reviewed-by: Christoph Hellwig h...@lst.de

Re: [Cluster-devel] [PATCH 03/17] quota: Add -quota_{enable, disable} callbacks for VFS quotas

2015-01-19 Thread Christoph Hellwig
On Fri, Jan 16, 2015 at 01:47:37PM +0100, Jan Kara wrote: +EXPORT_SYMBOL(dquot_quota_enable); +EXPORT_SYMBOL(dquot_quota_disable); I can't find any modular users of this (in fact none outside this file), so I'd suggest to keep these local.

Re: [Cluster-devel] [PATCH 12/17] xfs: Convert to using -get_state callback

2015-01-19 Thread Christoph Hellwig
+static void xfs_qm_fill_state(struct qc_type_state *tstate, Normal xfs style would be to keep the static void on a separate line, as well as the arguments, e.g. static void xfs_qm_fill_state( struct qc_type_state*tstate, + struct xfs_mount *mp, +

Re: [Cluster-devel] [PATCH 09/17] quota: Make Q_XQUOTASYNC support VFS quota syncing

2015-01-19 Thread Christoph Hellwig
On Fri, Jan 16, 2015 at 01:47:43PM +0100, Jan Kara wrote: Call -quota_sync method from Q_XQUOTASYNC for better userspace compatibility. Q_XQUOTASYNC never did the equivalent to -quota_sync, but rather was the equivalent to sys_syncfs which also happens to write out quotas. Unless you have a

  1   2   3   4   5   6   7   8   9   10   >