mm/filemap.c: don't initiate writeback if mapping has no dirty pages
[sfrench/cifs-2.6.git] / mm / filemap.c
index 5f30aedd7363f761ba31547ff1773307b6832caa..82f3b9a3a9406626d9bc1de9ddff3516dcb764c2 100644 (file)
@@ -408,7 +408,8 @@ int __filemap_fdatawrite_range(struct address_space *mapping, loff_t start,
                .range_end = end,
        };
 
-       if (!mapping_cap_writeback_dirty(mapping))
+       if (!mapping_cap_writeback_dirty(mapping) ||
+           !mapping_tagged(mapping, PAGECACHE_TAG_DIRTY))
                return 0;
 
        wbc_attach_fdatawrite_inode(&wbc, mapping->host);