kernel-ark/include/trace
Dave Chinner 0b5649278e writeback: pay attention to wbc->nr_to_write in write_cache_pages
If a filesystem writes more than one page in ->writepage, write_cache_pages
fails to notice this and continues to attempt writeback when wbc->nr_to_write
has gone negative - this trace was captured from XFS:

    wbc_writeback_start: towrt=1024
    wbc_writepage: towrt=1024
    wbc_writepage: towrt=0
    wbc_writepage: towrt=-1
    wbc_writepage: towrt=-5
    wbc_writepage: towrt=-21
    wbc_writepage: towrt=-85

This has adverse effects on filesystem writeback behaviour. write_cache_pages()
needs to terminate after a certain number of pages are written, not after a
certain number of calls to ->writepage are made.  This is a regression
introduced by 17bc6c30cf ("vfs: Add
no_nrwrite_index_update writeback control flag"), but cannot be reverted
directly due to subsequent bug fixes that have gone in on top of it.

Signed-off-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2010-06-08 18:12:44 -07:00
..
events writeback: pay attention to wbc->nr_to_write in write_cache_pages 2010-06-08 18:12:44 -07:00
boot.h tracing/fastboot: include missing headers 2008-12-12 09:26:13 +01:00
define_trace.h tracing: Fix tracepoint.h DECLARE_TRACE() to allow more than one header 2010-05-05 11:46:17 -04:00
ftrace.h perf_events, trace: Fix probe unregister race 2010-05-31 08:46:09 +02:00
syscall.h tracing: Allow events to share their print functions 2010-05-14 14:20:32 -04:00