diff options
author | Chao Yu <chao2.yu@samsung.com> | 2016-02-24 17:20:44 +0800 |
---|---|---|
committer | Jaegeuk Kim <jaegeuk@kernel.org> | 2016-02-25 17:27:03 -0800 |
commit | 80dd9c0e9db220697301e76b7b61f580ad9e8ecd (patch) | |
tree | e56ed4bab3b42033943ae3fdd86353e5f0db9936 /fs/f2fs/file.c | |
parent | 0ff21646f2a5c6ff77acc51eb3df4235af39be46 (diff) | |
download | op-kernel-dev-80dd9c0e9db220697301e76b7b61f580ad9e8ecd.zip op-kernel-dev-80dd9c0e9db220697301e76b7b61f580ad9e8ecd.tar.gz |
f2fs: fix incorrect upper bound when iterating inode mapping tree
1. Inode mapping tree can index page in range of [0, ULONG_MAX], however,
in some places, f2fs only search or iterate page in ragne of [0, LONG_MAX],
result in miss hitting in page cache.
2. filemap_fdatawait_range accepts range parameters in unit of bytes, so
the max range it covers should be [0, LLONG_MAX], if we use [0, LONG_MAX]
as range for waiting on writeback, big number of pages will not be covered.
This patch corrects above two issues.
Signed-off-by: Chao Yu <chao2.yu@samsung.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Diffstat (limited to 'fs/f2fs/file.c')
-rw-r--r-- | fs/f2fs/file.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/f2fs/file.c b/fs/f2fs/file.c index 8dea195..0e2a2bd 100644 --- a/fs/f2fs/file.c +++ b/fs/f2fs/file.c @@ -301,7 +301,7 @@ static pgoff_t __get_first_dirty_index(struct address_space *mapping, pagevec_init(&pvec, 0); nr_pages = pagevec_lookup_tag(&pvec, mapping, &pgofs, PAGECACHE_TAG_DIRTY, 1); - pgofs = nr_pages ? pvec.pages[0]->index : LONG_MAX; + pgofs = nr_pages ? pvec.pages[0]->index : ULONG_MAX; pagevec_release(&pvec); return pgofs; } |