diff options
author | Chao Yu <chao2.yu@samsung.com> | 2015-09-23 03:25:43 +0200 |
---|---|---|
committer | Jaegeuk Kim <jaegeuk@kernel.org> | 2015-10-10 01:20:53 +0200 |
commit | 1d7e10d58a1f62c8c44668cca1cff6a2dd57d7d9 (patch) | |
tree | 6773fb3abdc0a00e722ddfffa0654301baf4c562 /fs/f2fs/super.c | |
parent | f2fs: introduce __try_update_largest_extent (diff) | |
download | linux-1d7e10d58a1f62c8c44668cca1cff6a2dd57d7d9.tar.xz linux-1d7e10d58a1f62c8c44668cca1cff6a2dd57d7d9.zip |
f2fs: fix incorrect bimodal calculation
In update_sit_info, we use div_u64 to handle 'u64 divide u64' case, but
div_u64 can only handle 32-bits divisor, so our divisor with u64 type
passed to div_u64 will overflow, result in the wrong calculation when
show debug info of f2fs as below:
BDF: 464, avg. vblocks: 23509
(BDF should never exceed 100)
So change to use div64_u64 to handle this case correctly.
Signed-off-by: Chao Yu <chao2.yu@samsung.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Diffstat (limited to 'fs/f2fs/super.c')
0 files changed, 0 insertions, 0 deletions