Revision tags: v4.1-rc1, v4.0, v4.0-rc7, v4.0-rc6, v4.0-rc5 |
|
#
2b0143b5 |
| 17-Mar-2015 |
David Howells <dhowells@redhat.com> |
VFS: normal filesystems (and lustre): d_inode() annotations
that's the bulk of filesystem drivers dealing with inodes of their own
Signed-off-by: David Howells <dhowells@redhat.com> Signed-off-by:
VFS: normal filesystems (and lustre): d_inode() annotations
that's the bulk of filesystem drivers dealing with inodes of their own
Signed-off-by: David Howells <dhowells@redhat.com> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
show more ...
|
Revision tags: v4.0-rc4, v4.0-rc3, v4.0-rc2, v4.0-rc1, v3.19, v3.19-rc7 |
|
#
5cba372c |
| 01-Feb-2015 |
Yan, Zheng <zyan@redhat.com> |
ceph: fix dentry leaks
Signed-off-by: Yan, Zheng <zyan@redhat.com>
|
Revision tags: v3.19-rc6 |
|
#
2f92b3d0 |
| 18-Jan-2015 |
Yan, Zheng <zyan@redhat.com> |
ceph: properly mark empty directory as complete
ceph_add_cap() calls __check_cap_issue(), which clears directory inode' complete flag. so we should set the complete flag for empty directory should b
ceph: properly mark empty directory as complete
ceph_add_cap() calls __check_cap_issue(), which clears directory inode' complete flag. so we should set the complete flag for empty directory should be set after calling ceph_add_cap().
Signed-off-by: Yan, Zheng <zyan@redhat.com>
show more ...
|
Revision tags: v3.19-rc5 |
|
#
38c48b5f |
| 13-Jan-2015 |
Yan, Zheng <zyan@redhat.com> |
ceph: provide seperate {inode,file}_operations for snapdir
remove all unsupported operations from {inode,file}_operations.
Signed-off-by: Yan, Zheng <zyan@redhat.com>
|
#
b83ae6d4 |
| 14-Jan-2015 |
Christoph Hellwig <hch@lst.de> |
fs: remove mapping->backing_dev_info
Now that we never use the backing_dev_info pointer in struct address_space we can simply remove it and save 4 to 8 bytes in every inode.
Signed-off-by: Christop
fs: remove mapping->backing_dev_info
Now that we never use the backing_dev_info pointer in struct address_space we can simply remove it and save 4 to 8 bytes in every inode.
Signed-off-by: Christoph Hellwig <hch@lst.de> Acked-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp> Reviewed-by: Tejun Heo <tj@kernel.org> Reviewed-by: Jan Kara <jack@suse.cz> Signed-off-by: Jens Axboe <axboe@fb.com>
show more ...
|
Revision tags: v3.19-rc4, v3.19-rc3, v3.19-rc2, v3.19-rc1, v3.18, v3.18-rc7, v3.18-rc6, v3.18-rc5 |
|
#
01deead0 |
| 14-Nov-2014 |
Yan, Zheng <zyan@redhat.com> |
ceph: use getattr request to fetch inline data
Add a new parameter 'locked_page' to ceph_do_getattr(). If inline data in getattr reply will be copied to the page.
Signed-off-by: Yan, Zheng <zyan@re
ceph: use getattr request to fetch inline data
Add a new parameter 'locked_page' to ceph_do_getattr(). If inline data in getattr reply will be copied to the page.
Signed-off-by: Yan, Zheng <zyan@redhat.com>
show more ...
|
#
31c542a1 |
| 14-Nov-2014 |
Yan, Zheng <zyan@redhat.com> |
ceph: add inline data to pagecache
Request reply and cap message can contain inline data. add inline data to the page cache if there is Fc cap.
Signed-off-by: Yan, Zheng <zyan@redhat.com>
|
Revision tags: v3.18-rc4, v3.18-rc3, v3.18-rc2 |
|
#
70db4f36 |
| 21-Oct-2014 |
Yan, Zheng <zyan@redhat.com> |
ceph: introduce a new inode flag indicating if cached dentries are ordered
After creating/deleting/renaming file, offsets of sibling dentries may change. So we can not use cached dentries to satisfy
ceph: introduce a new inode flag indicating if cached dentries are ordered
After creating/deleting/renaming file, offsets of sibling dentries may change. So we can not use cached dentries to satisfy readdir. But we can still use the cached dentries to conclude -ENOENT for lookup.
This patch introduces a new inode flag indicating if child dentries are ordered. The flag is set at the same time marking a directory complete. After creating/deleting/renaming file, we clear the flag on directory inode. This prevents ceph_readdir() from using cached dentries to satisfy readdir syscall.
Signed-off-by: Yan, Zheng <zyan@redhat.com>
show more ...
|
#
a455589f |
| 21-Oct-2014 |
Al Viro <viro@zeniv.linux.org.uk> |
assorted conversions to %p[dD]
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
|
Revision tags: v3.18-rc1 |
|
#
41d28bca |
| 12-Oct-2014 |
Al Viro <viro@zeniv.linux.org.uk> |
switch d_materialise_unique() users to d_splice_alias()
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
|
#
946e51f2 |
| 26-Oct-2014 |
Al Viro <viro@zeniv.linux.org.uk> |
move d_rcu from overlapping d_child to overlapping d_alias
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
|
Revision tags: v3.17, v3.17-rc7, v3.17-rc6 |
|
#
a4483e8a |
| 17-Sep-2014 |
Chao Yu <chao2.yu@samsung.com> |
ceph: remove redundant code for max file size verification
Both ceph_update_writeable_page and ceph_setattr will verify file size with max size ceph supported. There are two caller for ceph_update_w
ceph: remove redundant code for max file size verification
Both ceph_update_writeable_page and ceph_setattr will verify file size with max size ceph supported. There are two caller for ceph_update_writeable_page, ceph_write_begin and ceph_page_mkwrite. For ceph_write_begin, we have already verified the size in generic_write_checks of ceph_write_iter; for ceph_page_mkwrite, we have no chance to change file size when mmap. Likewise we have already verified the size in inode_change_ok when we call ceph_setattr. So let's remove the redundant code for max file size verification.
Signed-off-by: Chao Yu <chao2.yu@samsung.com> Reviewed-by: Yan, Zheng <zyan@redhat.com>
show more ...
|
#
508b32d8 |
| 16-Sep-2014 |
Yan, Zheng <zyan@redhat.com> |
ceph: request xattrs if xattr_version is zero
Following sequence of events can happen. - Client releases an inode, queues cap release message. - A 'lookup' reply brings the same inode back, but
ceph: request xattrs if xattr_version is zero
Following sequence of events can happen. - Client releases an inode, queues cap release message. - A 'lookup' reply brings the same inode back, but the reply doesn't contain xattrs because MDS didn't receive the cap release message and thought client already has up-to-data xattrs.
The fix is force sending a getattr request to MDS if xattrs_version is 0. The getattr mask is set to CEPH_STAT_CAP_XATTR, so MDS knows client does not have xattr.
Signed-off-by: Yan, Zheng <zyan@redhat.com>
show more ...
|
Revision tags: v3.17-rc5, v3.17-rc4, v3.17-rc3, v3.17-rc2, v3.17-rc1, v3.16, v3.16-rc7, v3.16-rc6, v3.16-rc5, v3.16-rc4, v3.16-rc3, v3.16-rc2, v3.16-rc1, v3.15 |
|
#
4e217b5d |
| 07-Jun-2014 |
Yan, Zheng <zheng.z.yan@intel.com> |
ceph: use truncate_pagecache() instead of truncate_inode_pages()
Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
|
#
f3ae1b97 |
| 06-Jun-2014 |
Fabian Frederick <fabf@skynet.be> |
fs/ceph: replace pr_warning by pr_warn
Update the last pr_warning callsites in fs branch
Signed-off-by: Fabian Frederick <fabf@skynet.be> Cc: Sage Weil <sage@inktank.com> Signed-off-by: Andrew Mort
fs/ceph: replace pr_warning by pr_warn
Update the last pr_warning callsites in fs branch
Signed-off-by: Fabian Frederick <fabf@skynet.be> Cc: Sage Weil <sage@inktank.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
show more ...
|
Revision tags: v3.15-rc8, v3.15-rc7, v3.15-rc6, v3.15-rc5, v3.15-rc4, v3.15-rc3, v3.15-rc2 |
|
#
8d08503c |
| 18-Apr-2014 |
Yan, Zheng <zheng.z.yan@intel.com> |
ceph: remember subtree root dirfrag's auth MDS
remember dirfrag's auth MDS when it's different from its parent inode's auth MDS.
Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
|
#
3e7fbe9c |
| 18-Apr-2014 |
Yan, Zheng <zheng.z.yan@intel.com> |
ceph: introduce ceph_fill_fragtree()
Move the code that update the i_fragtree into a separate function. Also add simple probabilistic test to decide whether the i_fragtree should be updated
Signed-
ceph: introduce ceph_fill_fragtree()
Move the code that update the i_fragtree into a separate function. Also add simple probabilistic test to decide whether the i_fragtree should be updated
Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
show more ...
|
#
d9df2783 |
| 17-Apr-2014 |
Yan, Zheng <zheng.z.yan@intel.com> |
ceph: pre-allocate ceph_cap struct for ceph_add_cap()
So that ceph_add_cap() can be used while i_ceph_lock is locked. This simplifies the code that handle cap import/export.
Signed-off-by: Yan, Zhe
ceph: pre-allocate ceph_cap struct for ceph_add_cap()
So that ceph_add_cap() can be used while i_ceph_lock is locked. This simplifies the code that handle cap import/export.
Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
show more ...
|
#
f98a128a |
| 16-Apr-2014 |
Yan, Zheng <zheng.z.yan@intel.com> |
ceph: update inode fields according to issued caps
Cap message and request reply from non-auth MDS may carry stale information (corresponding locks are in LOCK states) even they have the newest inod
ceph: update inode fields according to issued caps
Cap message and request reply from non-auth MDS may carry stale information (corresponding locks are in LOCK states) even they have the newest inode version. So client should update inode fields according to issued caps.
Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
show more ...
|
#
0a8a70f9 |
| 14-Apr-2014 |
Yan, Zheng <zheng.z.yan@intel.com> |
ceph: clear directory's completeness when creating file
When creating a file, ceph_set_dentry_offset() puts the new dentry at the end of directory's d_subdirs, then set the dentry's offset based on
ceph: clear directory's completeness when creating file
When creating a file, ceph_set_dentry_offset() puts the new dentry at the end of directory's d_subdirs, then set the dentry's offset based on directory's max offset. The offset does not reflect the real postion of the dentry in directory. Later readdir reply from MDS may change the dentry's position/offset. This inconsistency can cause missing/duplicate entries in readdir result if readdir is partly satisfied by dcache_readdir().
The fix is clear directory's completeness after creating/renaming file. It prevents later readdir from using dcache_readdir().
Fixes: http://tracker.ceph.com/issues/8025 Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com> Reviewed-by: Sage Weil <sage@inktank.com>
show more ...
|
Revision tags: v3.15-rc1 |
|
#
48193012 |
| 01-Apr-2014 |
Yan, Zheng <zheng.z.yan@intel.com> |
ceph: don't grabs open file reference for aborted request
Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
|
Revision tags: v3.14, v3.14-rc8 |
|
#
5f75ce57 |
| 21-Mar-2014 |
Fabian Frederick <fabf@skynet.be> |
ceph: Remove get/set acl on symlinks
Remove unsupported symlink operations.
Signed-off-by: Fabian Frederick <fabf@skynet.be> Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
|
Revision tags: v3.14-rc7, v3.14-rc6 |
|
#
8c93cd61 |
| 08-Mar-2014 |
Yan, Zheng <zheng.z.yan@intel.com> |
ceph: update i_max_size even if inode version does not change
handle following sequence of events: - client releases a inode with i_max_size > 0. The release message is queued. (is not sent to t
ceph: update i_max_size even if inode version does not change
handle following sequence of events: - client releases a inode with i_max_size > 0. The release message is queued. (is not sent to the auth MDS) - a 'lookup' request reply from non-auth MDS returns the same inode. - client opens the inode in write mode. The version of inode trace in 'open' request reply is equal to the cached inode's version. - client requests new max size. The MDS ignores the request because it does not affect client's write range
Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com> Reviewed-by: Sage Weil <sage@inktank.com>
show more ...
|
#
19913b4e |
| 06-Mar-2014 |
Yan, Zheng <zheng.z.yan@intel.com> |
ceph: add get_name() NFS export callback
Use the newly introduced LOOKUPNAME MDS request to connect child inode to its parent directory.
Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com> Reviewed-b
ceph: add get_name() NFS export callback
Use the newly introduced LOOKUPNAME MDS request to connect child inode to its parent directory.
Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com> Reviewed-by: Sage Weil <sage@inktank.com>
show more ...
|
Revision tags: v3.14-rc5, v3.14-rc4, v3.14-rc3, v3.14-rc2, v3.14-rc1, v3.13, v3.13-rc8, v3.13-rc7, v3.13-rc6, v3.13-rc5, v3.13-rc4, v3.13-rc3, v3.13-rc2, v3.13-rc1, v3.12, v3.12-rc7, v3.12-rc6, v3.12-rc5, v3.12-rc4, v3.12-rc3, v3.12-rc2, v3.12-rc1, v3.11, v3.11-rc7, v3.11-rc6, v3.11-rc5, v3.11-rc4, v3.11-rc3, v3.11-rc2, v3.11-rc1, v3.10, v3.10-rc7, v3.10-rc6, v3.10-rc5, v3.10-rc4, v3.10-rc3, v3.10-rc2, v3.10-rc1, v3.9, v3.9-rc8, v3.9-rc7, v3.9-rc6, v3.9-rc5, v3.9-rc4, v3.9-rc3, v3.9-rc2, v3.9-rc1, v3.8, v3.8-rc7 |
|
#
752c8bdc |
| 05-Feb-2013 |
Sage Weil <sage@inktank.com> |
ceph: do not chain inode updates to parent fsync
The fsync(dirfd) only covers namespace operations, not inode updates. We do not need to cover setattr variants or O_TRUNC.
Reported-by: Al Viro <vir
ceph: do not chain inode updates to parent fsync
The fsync(dirfd) only covers namespace operations, not inode updates. We do not need to cover setattr variants or O_TRUNC.
Reported-by: Al Viro <viro@xeniv.linux.org.uk> Signed-off-by: Sage Weil <sage@inktank.com> Reviewed-by: Yan, Zheng <zheng.z.yan@intel.com>
show more ...
|