From: Rik van Riel Add documentation for the vm_ops->access function. Signed-off-by: Rik van Riel Cc: Peter Zijlstra Signed-off-by: Andrew Morton --- Documentation/filesystems/Locking | 7 +++++++ 1 file changed, 7 insertions(+) diff -puN Documentation/filesystems/Locking~access_process_vm-device-memory-infrastructure-fix Documentation/filesystems/Locking --- a/Documentation/filesystems/Locking~access_process_vm-device-memory-infrastructure-fix +++ a/Documentation/filesystems/Locking @@ -510,6 +510,7 @@ prototypes: void (*close)(struct vm_area_struct*); int (*fault)(struct vm_area_struct*, struct vm_fault *); int (*page_mkwrite)(struct vm_area_struct *, struct page *); + int (*access)(struct vm_area_struct *, unsigned long, void*, int, int); locking rules: BKL mmap_sem PageLocked(page) @@ -517,6 +518,7 @@ open: no yes close: no yes fault: no yes page_mkwrite: no yes no +access: no yes ->page_mkwrite() is called when a previously read-only page is about to become writeable. The file system is responsible for @@ -525,6 +527,11 @@ taking to lock out truncate, the page ra within i_size. The page mapping should also be checked that it is not NULL. + ->access() is called when get_user_pages() fails in +acces_process_vm(), typically used to debug a process through +/proc/pid/mem or ptrace. This function is needed only for +VM_IO | VM_PFNMAP VMAs. + ================================================================================ Dubious stuff _