Port of diff-ubc-dont-skip-dirty-metadata-on-filtered-sync patch from PCS6.
Don't skip dirty metadata during per container sync[fs]. https://jira.sw.ru/browse/PSBM-39583 Signed-off-by: Andrey Ryabinin <aryabi...@virtuozzo.com> --- fs/fs-writeback.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/fs/fs-writeback.c b/fs/fs-writeback.c index b6b33d0..101892a 100644 --- a/fs/fs-writeback.c +++ b/fs/fs-writeback.c @@ -714,6 +714,7 @@ static long writeback_sb_inodes(struct super_block *sb, continue; } if ((work->ub || work->filter_ub) && + ((inode->i_state & I_DIRTY) == I_DIRTY_PAGES) && ub_should_skip_writeback(work->ub, inode)) { spin_unlock(&inode->i_lock); redirty_tail(inode, wb); @@ -1411,7 +1412,8 @@ static void wait_sb_inodes(struct super_block *sb, struct user_beancounter *ub) spin_unlock(&inode->i_lock); continue; } - if (ub && (mapping->dirtied_ub != ub)) { + if (ub && (mapping->dirtied_ub != ub) && + ((inode->i_state & I_DIRTY) == I_DIRTY_PAGES)) { spin_unlock(&inode->i_lock); continue; } -- 2.4.10 _______________________________________________ Devel mailing list Devel@openvz.org https://lists.openvz.org/mailman/listinfo/devel