aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/filesystems/Locking
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/filesystems/Locking')
-rw-r--r--Documentation/filesystems/Locking9
1 files changed, 7 insertions, 2 deletions
diff --git a/Documentation/filesystems/Locking b/Documentation/filesystems/Locking
index c2992bc54f2f..680fb566b928 100644
--- a/Documentation/filesystems/Locking
+++ b/Documentation/filesystems/Locking
@@ -92,7 +92,6 @@ prototypes:
92 void (*destroy_inode)(struct inode *); 92 void (*destroy_inode)(struct inode *);
93 void (*dirty_inode) (struct inode *); 93 void (*dirty_inode) (struct inode *);
94 int (*write_inode) (struct inode *, int); 94 int (*write_inode) (struct inode *, int);
95 void (*put_inode) (struct inode *);
96 void (*drop_inode) (struct inode *); 95 void (*drop_inode) (struct inode *);
97 void (*delete_inode) (struct inode *); 96 void (*delete_inode) (struct inode *);
98 void (*put_super) (struct super_block *); 97 void (*put_super) (struct super_block *);
@@ -115,7 +114,6 @@ alloc_inode: no no no
115destroy_inode: no 114destroy_inode: no
116dirty_inode: no (must not sleep) 115dirty_inode: no (must not sleep)
117write_inode: no 116write_inode: no
118put_inode: no
119drop_inode: no !!!inode_lock!!! 117drop_inode: no !!!inode_lock!!!
120delete_inode: no 118delete_inode: no
121put_super: yes yes no 119put_super: yes yes no
@@ -512,6 +510,7 @@ prototypes:
512 void (*close)(struct vm_area_struct*); 510 void (*close)(struct vm_area_struct*);
513 int (*fault)(struct vm_area_struct*, struct vm_fault *); 511 int (*fault)(struct vm_area_struct*, struct vm_fault *);
514 int (*page_mkwrite)(struct vm_area_struct *, struct page *); 512 int (*page_mkwrite)(struct vm_area_struct *, struct page *);
513 int (*access)(struct vm_area_struct *, unsigned long, void*, int, int);
515 514
516locking rules: 515locking rules:
517 BKL mmap_sem PageLocked(page) 516 BKL mmap_sem PageLocked(page)
@@ -519,6 +518,7 @@ open: no yes
519close: no yes 518close: no yes
520fault: no yes 519fault: no yes
521page_mkwrite: no yes no 520page_mkwrite: no yes no
521access: no yes
522 522
523 ->page_mkwrite() is called when a previously read-only page is 523 ->page_mkwrite() is called when a previously read-only page is
524about to become writeable. The file system is responsible for 524about to become writeable. The file system is responsible for
@@ -527,6 +527,11 @@ taking to lock out truncate, the page range should be verified to be
527within i_size. The page mapping should also be checked that it is not 527within i_size. The page mapping should also be checked that it is not
528NULL. 528NULL.
529 529
530 ->access() is called when get_user_pages() fails in
531acces_process_vm(), typically used to debug a process through
532/proc/pid/mem or ptrace. This function is needed only for
533VM_IO | VM_PFNMAP VMAs.
534
530================================================================================ 535================================================================================
531 Dubious stuff 536 Dubious stuff
532 537