Steven Whitehouse 6d4ade986f GFS2: Add atomic_open support
I've restricted atomic_open to only operate on regular files, although
I still don't understand why atomic_open should not be possible also for
directories on GFS2. That can always be added in later though, if it
makes sense.

The ->atomic_open function can be passed negative dentries, which
in most cases means either ENOENT (->lookup) or a call to d_instantiate
(->create). In the GFS2 case though, we need to actually perform the
look up, since we do not know whether there has been a new inode created
on another node. The look up calls d_splice_alias which then tries to
rehash the dentry - so the solution here is to simply check for that
in d_splice_alias. The same issue is likely to affect any other cluster
filesystem implementing ->atomic_open

Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Cc: "J. Bruce Fields" <bfields fieldses org>
Cc: Jeff Layton <jlayton@redhat.com>
2013-06-14 11:17:15 +01:00
..
2011-07-25 14:30:23 -04:00
2013-05-07 20:16:25 -07:00
2010-09-20 11:18:16 +01:00
2013-06-14 11:17:15 +01:00
2008-06-27 09:39:44 +01:00
2011-10-21 12:39:41 +01:00
2013-06-14 11:17:15 +01:00
2013-06-14 11:17:15 +01:00
2013-04-04 09:52:50 +01:00
2013-06-05 09:50:40 +01:00
2013-06-05 09:50:40 +01:00
2011-05-10 13:12:49 +01:00
2013-06-05 09:51:23 +01:00
2013-06-03 16:40:22 +01:00
2013-01-29 10:29:05 +00:00
2012-01-11 09:23:05 +00:00
2013-02-13 12:21:40 +00:00
2009-12-16 12:16:49 -05:00