MPAGE_WRITEPAGES

Section: (9)
Updated: 09 October 2005
Index Return to Main Contents

 

NAME

mpage_writepages - walk the list of dirty pages of the given  

SYNOPSIS

"SYNOPSIS"

int mpage_writepages (struct address_space * mapping, struct writeback_control * wbc, get_block_t get_block);  

ARGUMENTS

mapping
address space structure to write
wbc
subtract the number of written pages from *wbc->nr_to_write
get_block
the filesystem's block mapper function. If this is NULL then use a_ops->writepage. Otherwise, go direct-to-BIO.
 

DESCRIPTION

This is a library function, which implements the writepages address_space_operation.

If a page is already under I/O, generic_writepages skips it, even if it's dirty. This is desirable behaviour for memory-cleaning writeback, but it is INCORRECT for data-integrity system calls such as fsync. fsync and msync need to guarantee that all the data which was dirty at the time the call was made get new I/O started against them. If wbc->sync_mode is WB_SYNC_ALL then we were called for data integrity and we must wait for existing IO to complete.  

DESCRIPTION

This is a library function, which implements the writepages address_space_operation.

If a page is already under I/O, generic_writepages skips it, even if it's dirty. This is desirable behaviour for memory-cleaning writeback, but it is INCORRECT for data-integrity system calls such as fsync. fsync and msync need to guarantee that all the data which was dirty at the time the call was made get new I/O started against them. If wbc->sync_mode is WB_SYNC_ALL then we were called for data integrity and we must wait for existing IO to complete.


 

Index

NAME
SYNOPSIS
ARGUMENTS
DESCRIPTION
DESCRIPTION

This document was created by man2html, using the manual pages.
Time: 00:02:29 GMT, October 09, 2005