1
linux/fs/ceph
Sage Weil 5ef50c3bec ceph: simplify+fix atomic_open
The initial ->atomic_open op was carried over from the old intent code,
which was incomplete and didn't really work.  Replace it with a fresh
method.  In particular:

 * always attempt to do an atomic open+lookup, both for the create case
   and for lookups of existing files.
 * fix symlink handling by returning 1 to the VFS so that we can follow
   the link to its destination. This fixes a longstanding ceph bug (#2392).

Signed-off-by: Sage Weil <sage@inktank.com>
2012-08-02 09:11:19 -07:00
..
addr.c ceph: Push file_update_time() into ceph_page_mkwrite() 2012-07-31 01:02:45 +04:00
caps.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client 2012-02-02 15:47:33 -08:00
ceph_frag.c ceph: factor out libceph from Ceph file system 2010-10-20 15:37:28 -07:00
debugfs.c ceph: explicitly reference rename old_dentry parent dir in request 2011-07-26 11:31:14 -07:00
dir.c ceph: simplify+fix atomic_open 2012-08-02 09:11:19 -07:00
export.c ceph: move encode_fh to new API 2012-05-29 23:28:33 -04:00
file.c ceph: simplify+fix atomic_open 2012-08-02 09:11:19 -07:00
inode.c ceph: avoid panic with mismatched symlink sizes in fill_inode() 2012-03-22 10:47:45 -05:00
ioctl.c ceph: ignore preferred_osd field 2012-05-16 14:28:28 -05:00
ioctl.h ceph: fully initialize new layout 2012-05-16 14:28:27 -05:00
Kconfig ceph: factor out libceph from Ceph file system 2010-10-20 15:37:28 -07:00
locks.c ceph: unwind canceled flock state 2011-06-07 21:36:45 -07:00
Makefile ceph: Makefile: Remove unnessary code 2011-01-12 15:15:13 -08:00
mds_client.c ceph: close old con before reopening on mds reconnect 2012-07-30 18:15:32 -07:00
mds_client.h ceph: define ceph_auth_handshake type 2012-05-17 08:18:12 -05:00
mdsmap.c ceph: factor out libceph from Ceph file system 2010-10-20 15:37:28 -07:00
snap.c ceph: define snap counts as u32 everywhere 2012-07-30 18:15:47 -07:00
strings.c ceph: factor out libceph from Ceph file system 2010-10-20 15:37:28 -07:00
super.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client 2012-07-31 14:35:28 -07:00
super.h ceph: simplify+fix atomic_open 2012-08-02 09:11:19 -07:00
xattr.c ceph: fix potential double free 2012-07-30 18:15:35 -07:00