]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/commit
ext4: do not polute the extents cache while shifting extents
authorRoman Pen <roman.penyaev@profitbricks.com>
Mon, 9 Jan 2017 02:00:35 +0000 (21:00 -0500)
committerTim Gardner <tim.gardner@canonical.com>
Mon, 13 Mar 2017 21:20:54 +0000 (15:20 -0600)
commit72b8b7df972b7275d1062479a7b599fd69b3684e
tree8dab8962b6d8acf305930c08d430ff681f1908a0
parentab1c5d5af555a5958cde3129d83800a2ddaef280
ext4: do not polute the extents cache while shifting extents

BugLink: http://bugs.launchpad.net/bugs/1672544
commit 03e916fa8b5577d85471452a3d0c5738aa658dae upstream.

Inside ext4_ext_shift_extents() function ext4_find_extent() is called
without EXT4_EX_NOCACHE flag, which should prevent cache population.

This leads to oudated offsets in the extents tree and wrong blocks
afterwards.

Patch fixes the problem providing EXT4_EX_NOCACHE flag for each
ext4_find_extents() call inside ext4_ext_shift_extents function.

Fixes: 331573febb6a2
Signed-off-by: Roman Pen <roman.penyaev@profitbricks.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Cc: Namjae Jeon <namjae.jeon@samsung.com>
Cc: Andreas Dilger <adilger.kernel@dilger.ca>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
fs/ext4/extents.c