lkml.org 
[lkml]   [2003]   [Feb]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: hidden assumptions in generic_file_write
Hi,

On Mon, 17 Feb 2003, Muli Ben-Yehuda wrote:

> Since the data is copied to the page after prepare_write() returns, it
> seems that the assumption is that prepare_write() is synchronous and
> the page was already read into memory in case it was not there.

prepare_write tells the fs which part of the page is overwritten, since
the data is usually managed in buffer sized chunks and if the write is
misaligned, it's needed to read a buffer from disk, so a complete buffer
can be written back. That read is indeed syncronous.

> Also, after commit_write(), the code immediately falls through unlock
> which unlocks the page. Since a page is locked during IO, it seems
> that commit_write() is synchronous and the page was already written
> when it returns.

The write is asynchronous, so the actual IO is started later. commit_write
only marks the written buffers as dirty.

bye, Roman

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:33    [W:0.045 / U:1.008 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site