Re: Q: generic_file_write sets PG_locked???

Eric W. Biederman (ebiederm+eric@ccr.net)
23 Apr 1999 00:48:03 -0500


>>>>> "ST" == Stephen C Tweedie <sct@redhat.com> writes:

ST> Hi,
ST> On 21 Apr 1999 19:46:21 -0500, ebiederm+eric@ccr.net (Eric W. Biederman) said:

The issue with the current NFS implementations is the case of:
PageUptodate(page) && PageLocked(page) being true and
the file is being written out. (This can happen easily with a mmaped page).

There is no need for filemap_nopage, generic_file_write to block in this case.
And for do_write_page to only be called on an unmapped page, think of msync.
The current NFS code appears to think the above will hapen.

filemap_write_page, generic_file_write, and filemap_nopage can all be replaced
so it may be possible to get the semantics NFS is expecting, but not
easily (i.e. msync). NFS currently doesn't replace those, it does
expect semantics that don't exist, so there is a bug in NFS.

Part of this bug is simply a matter of the NFS not doing (with
permissions) what it is documented/(what the programmer expted) to do.
But I don't think that is all of it.

>> I'm not prepared quite yet, for a large discussion on the code as I
>> haven't finished testing my prototypes. Once that is done I'll write
>> up some documentation and start pushing for integration of generic
>> dirty page handling for 2.3

ST> _Good_. :)
Thanks.

Eric

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