aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/filesystems
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2015-04-15 19:39:15 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2015-04-15 19:39:15 -0400
commiteea3a00264cf243a28e4331566ce67b86059339d (patch)
tree487f16389e0dfa32e9caa7604d1274a7dcda8f04 /Documentation/filesystems
parente7c82412433a8039616c7314533a0a1c025d99bf (diff)
parente693d73c20ffdb06840c9378f367bad849ac0d5d (diff)
Merge branch 'akpm' (patches from Andrew)
Merge second patchbomb from Andrew Morton: - the rest of MM - various misc bits - add ability to run /sbin/reboot at reboot time - printk/vsprintf changes - fiddle with seq_printf() return value * akpm: (114 commits) parisc: remove use of seq_printf return value lru_cache: remove use of seq_printf return value tracing: remove use of seq_printf return value cgroup: remove use of seq_printf return value proc: remove use of seq_printf return value s390: remove use of seq_printf return value cris fasttimer: remove use of seq_printf return value cris: remove use of seq_printf return value openrisc: remove use of seq_printf return value ARM: plat-pxa: remove use of seq_printf return value nios2: cpuinfo: remove use of seq_printf return value microblaze: mb: remove use of seq_printf return value ipc: remove use of seq_printf return value rtc: remove use of seq_printf return value power: wakeup: remove use of seq_printf return value x86: mtrr: if: remove use of seq_printf return value linux/bitmap.h: improve BITMAP_{LAST,FIRST}_WORD_MASK MAINTAINERS: CREDITS: remove Stefano Brivio from B43 .mailmap: add Ricardo Ribalda CREDITS: add Ricardo Ribalda Delgado ...
Diffstat (limited to 'Documentation/filesystems')
-rw-r--r--Documentation/filesystems/Locking8
1 files changed, 8 insertions, 0 deletions
diff --git a/Documentation/filesystems/Locking b/Documentation/filesystems/Locking
index c3cd6279e92e..7c3f187d48bf 100644
--- a/Documentation/filesystems/Locking
+++ b/Documentation/filesystems/Locking
@@ -523,6 +523,7 @@ prototypes:
523 void (*close)(struct vm_area_struct*); 523 void (*close)(struct vm_area_struct*);
524 int (*fault)(struct vm_area_struct*, struct vm_fault *); 524 int (*fault)(struct vm_area_struct*, struct vm_fault *);
525 int (*page_mkwrite)(struct vm_area_struct *, struct vm_fault *); 525 int (*page_mkwrite)(struct vm_area_struct *, struct vm_fault *);
526 int (*pfn_mkwrite)(struct vm_area_struct *, struct vm_fault *);
526 int (*access)(struct vm_area_struct *, unsigned long, void*, int, int); 527 int (*access)(struct vm_area_struct *, unsigned long, void*, int, int);
527 528
528locking rules: 529locking rules:
@@ -532,6 +533,7 @@ close: yes
532fault: yes can return with page locked 533fault: yes can return with page locked
533map_pages: yes 534map_pages: yes
534page_mkwrite: yes can return with page locked 535page_mkwrite: yes can return with page locked
536pfn_mkwrite: yes
535access: yes 537access: yes
536 538
537 ->fault() is called when a previously not present pte is about 539 ->fault() is called when a previously not present pte is about
@@ -558,6 +560,12 @@ the page has been truncated, the filesystem should not look up a new page
558like the ->fault() handler, but simply return with VM_FAULT_NOPAGE, which 560like the ->fault() handler, but simply return with VM_FAULT_NOPAGE, which
559will cause the VM to retry the fault. 561will cause the VM to retry the fault.
560 562
563 ->pfn_mkwrite() is the same as page_mkwrite but when the pte is
564VM_PFNMAP or VM_MIXEDMAP with a page-less entry. Expected return is
565VM_FAULT_NOPAGE. Or one of the VM_FAULT_ERROR types. The default behavior
566after this call is to make the pte read-write, unless pfn_mkwrite returns
567an error.
568
561 ->access() is called when get_user_pages() fails in 569 ->access() is called when get_user_pages() fails in
562access_process_vm(), typically used to debug a process through 570access_process_vm(), typically used to debug a process through
563/proc/pid/mem or ptrace. This function is needed only for 571/proc/pid/mem or ptrace. This function is needed only for