diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c index 838eae39d3b1..6e39a15a942a 100644 --- a/fs/f2fs/data.c +++ b/fs/f2fs/data.c @@ -1778,9 +1778,10 @@ sync_out: if (map->m_flags & F2FS_MAP_MAPPED) { unsigned int ofs = start_pgofs - map->m_lblk; - f2fs_update_read_extent_cache_range(&dn, - start_pgofs, map->m_pblk + ofs, - map->m_len - ofs); + if (map->m_len > ofs) + f2fs_update_read_extent_cache_range(&dn, + start_pgofs, map->m_pblk + ofs, + map->m_len - ofs); } if (map->m_next_extent) *map->m_next_extent = is_hole ? pgofs + 1 : pgofs;