diff options
author | Sage Weil <sage@newdream.net> | 2010-05-27 13:40:43 -0400 |
---|---|---|
committer | Sage Weil <sage@newdream.net> | 2010-08-01 23:11:39 -0400 |
commit | 2962507ca204f886967e1a089d9bec206d427c22 (patch) | |
tree | e9cec16b13ad1d8e41c288658e62fb3bf1c66859 /fs/ceph/addr.c | |
parent | 33caad324b88f75f42d836735d86feaafb3b40cf (diff) |
ceph: perform lazy reads when file mode and caps permit
If the file mode is marked as "lazy," perform cached/buffered reads when
the caps permit it. Adjust the rdcache_gen and invalidation logic
accordingly so that we manage our cache based on the FILE_CACHE -or-
FILE_LAZYIO cap bits.
Signed-off-by: Sage Weil <sage@newdream.net>
Diffstat (limited to 'fs/ceph/addr.c')
-rw-r--r-- | fs/ceph/addr.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/ceph/addr.c b/fs/ceph/addr.c index d9c60b84949a..e00797eed29c 100644 --- a/fs/ceph/addr.c +++ b/fs/ceph/addr.c | |||
@@ -552,7 +552,7 @@ static void writepages_finish(struct ceph_osd_request *req, | |||
552 | * page truncation thread, possibly losing some data that | 552 | * page truncation thread, possibly losing some data that |
553 | * raced its way in | 553 | * raced its way in |
554 | */ | 554 | */ |
555 | if ((issued & CEPH_CAP_FILE_CACHE) == 0) | 555 | if ((issued & (CEPH_CAP_FILE_CACHE|CEPH_CAP_FILE_LAZYIO)) == 0) |
556 | generic_error_remove_page(inode->i_mapping, page); | 556 | generic_error_remove_page(inode->i_mapping, page); |
557 | 557 | ||
558 | unlock_page(page); | 558 | unlock_page(page); |