Hi Ted: On Tue, Aug 18, 2009 at 9:39 AM, Theodore Tso<tytso@xxxxxxx> wrote: > On Thu, Aug 13, 2009 at 09:09:58AM -0700, Curt Wohlgemuth wrote: >> But the actual submittal of I/O for the previous extent might cause >> pages_skipped to be bumped, right? Removing these increments might cause >> the accounting to be incorrect, it seems to me. > > I don't see where the submission of an extent of pages for I/O would > cause page_skipped to be incremented or changed --- am I missing > something? Probably not. But it seems to me that a call order of write_cache_pages -> __mpage_da_writepage -> mpage_da_submit_io -> ext4_writepage can cause pages_skipped to be incremented, either directly in ext4_writepage() (page has delayed/unwritted buffers) or in __block_write_full_page() (buffer already locked). In fact, in mpage_da_submit_io(), pages_written is only incremented if pages_skipped hasn't been bumped -- so that routine already knows that pages_skipped might be changed on I/O submit. If this happens, ext4_da_writepages() will wipe out the fact that pages_skipped was changed during submittal, won't it? Thanks, Curt -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html