The patch titled
Document ->page_mkwrite() locking
has been added to the -mm tree. Its filename is
document-page_mkwrite-locking.patch
*** Remember to use Documentation/SubmitChecklist when testing your code ***
See http://www.zip.com.au/~akpm/linux/patches/stuff/added-to-mm.txt to find
out what to do about this
------------------------------------------------------
Subject: Document ->page_mkwrite() locking
From: Mark Fasheh <[EMAIL PROTECTED]>
There seems to be very little documentation about this callback in general.
The locking in particular is a bit tricky, so it's worth having this in
writing.
Signed-off-by: Mark Fasheh <[EMAIL PROTECTED]>
Cc: Nick Piggin <[EMAIL PROTECTED]>
Cc: David Howells <[EMAIL PROTECTED]>
Signed-off-by: Andrew Morton <[EMAIL PROTECTED]>
---
Documentation/filesystems/Locking | 11 ++++++++++-
1 files changed, 10 insertions(+), 1 deletion(-)
diff -puN Documentation/filesystems/Locking~document-page_mkwrite-locking
Documentation/filesystems/Locking
--- a/Documentation/filesystems/Locking~document-page_mkwrite-locking
+++ a/Documentation/filesystems/Locking
@@ -512,13 +512,22 @@ prototypes:
void (*close)(struct vm_area_struct*);
struct page *(*fault)(struct vm_area_struct*, struct fault_data *);
struct page *(*nopage)(struct vm_area_struct*, unsigned long, int *);
+ int (*page_mkwrite)(struct vm_area_struct *, struct page *);
locking rules:
- BKL mmap_sem
+ BKL mmap_sem PageLocked(page)
open: no yes
close: no yes
fault: no yes
nopage: no yes
+page_mkwrite: no yes no
+
+ ->page_mkwrite() is called when a previously read-only page is
+about to become writeable. The file system is responsible for
+protecting against truncate races. Once appropriate action has been
+taking to lock out truncate, the page range should be verified to be
+within i_size. The page mapping should also be checked that it is not
+NULL.
================================================================================
Dubious stuff
_
Patches currently in -mm which might be from [EMAIL PROTECTED] are
ocfs2-release-page-lock-before-calling-page_mkwrite.patch
document-page_mkwrite-locking.patch
fs-introduce-write_begin-write_end-and-perform_write-aops.patch
-
To unsubscribe from this list: send the line "unsubscribe mm-commits" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html