kernel_optimize_test/include/trace/events
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
..
bkl.h events: Harmonize event field names and print output names 2009-10-15 12:42:03 +02:00
block.h Add DocBook documentation for the block tracepoints. 2010-03-09 09:26:04 +01:00
ext4.h writeback: pay attention to wbc->nr_to_write in write_cache_pages 2010-06-08 18:12:44 -07:00
irq.h tracing: Convert softirq events to DEFINE_EVENT 2009-11-26 09:14:03 +01:00
jbd2.h ext4: Add new tracepoint for jbd2_cleanup_journal_tail 2009-12-23 07:45:44 -05:00
kmem.h tracing: Convert some kmem events to DEFINE_EVENT 2009-11-26 09:14:02 +01:00
kvm.h KVM: cleanup kvm trace 2010-05-17 12:15:22 +03:00
lock.h tracing: Factorize lock events in a lock class 2010-05-09 13:45:35 +02:00
mce.h perf_event, x86, mce: Use TRACE_EVENT() for MCE logging 2009-10-13 09:43:38 +02:00
module.h Merge branch 'linus' into tracing/core 2010-04-08 10:18:47 +02:00
napi.h tracing: Fix tracepoint.h DECLARE_TRACE() to allow more than one header 2010-05-05 11:46:17 -04:00
power.h tracing: Convert some power events to DEFINE_EVENT 2009-11-26 09:14:03 +01:00
sched.h sched, trace: Fix sched_switch() prev_state argument 2010-06-01 09:27:17 +02:00
scsi.h [SCSI] scsi_trace: Enhance SCSI command tracing 2010-04-30 12:52:08 -05:00
signal.h tracing: Convert some signal events to DEFINE_TRACE 2010-03-31 22:56:54 -04:00
skb.h net: skb ftracer - add tracepoint to skb_copy_datagram_iovec (v3) 2009-08-13 16:26:14 -07:00
syscalls.h tracing: Separate raw syscall from syscall tracer 2009-11-25 14:20:06 -05:00
timer.h itimer: Fix the itimer trace print format 2009-12-10 13:23:19 +01:00
workqueue.h tracing: Convert some workqueue events to DEFINE_EVENT 2009-11-26 09:14:03 +01:00