Files
twx-linux/include/linux
Yan, Zheng 719a2514e9 ceph: consider inode's last read/write when calculating wanted caps
Add i_last_rd and i_last_wr to ceph_inode_info. These fields are
used to track the last time the client acquired read/write caps for
the inode.

If there is no read/write on an inode for 'caps_wanted_delay_max'
seconds, __ceph_caps_file_wanted() does not request caps for read/write
even there are open files.

Call __ceph_touch_fmode() for dir operations. __ceph_caps_file_wanted()
calculates dir's wanted caps according to last dir read/modification. If
there is recent dir read, dir inode wants CEPH_CAP_ANY_SHARED caps. If
there is recent dir modification, also wants CEPH_CAP_FILE_EXCL.

Readdir is a special case. Dir inode wants CEPH_CAP_FILE_EXCL after
readdir, as with that, modifications do not need to release
CEPH_CAP_FILE_SHARED or invalidate all dentry leases issued by readdir.

Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
Reviewed-by: Jeff Layton <jlayton@kernel.org>
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2020-03-30 12:42:42 +02:00
..
2020-01-27 14:35:32 +01:00
2020-01-23 12:37:18 +00:00
2020-02-04 03:05:26 +00:00
2020-02-04 03:05:26 +00:00
2020-01-23 00:35:50 +01:00
2020-03-04 13:46:03 +01:00
2020-01-27 11:09:31 +01:00
2020-01-17 16:48:07 -08:00
2020-01-18 09:19:18 -05:00
2020-03-06 11:06:15 +01:00
2020-03-06 11:06:15 +01:00
2020-03-23 11:17:22 +01:00
2020-01-31 17:33:54 +00:00
2020-01-16 17:09:18 +01:00
2020-01-29 17:00:02 -06:00
2020-03-12 15:36:12 -07:00
2020-01-24 10:24:31 -08:00
2020-01-24 10:24:31 -08:00
2020-02-04 03:05:24 +00:00
2020-02-04 03:05:26 +00:00
2020-02-21 11:22:15 -08:00
2020-03-21 18:56:06 -07:00
2020-01-17 22:33:37 -05:00