Commit ffc13a38 authored by Trond Myklebust's avatar Trond Myklebust Committed by Linus Torvalds

[PATCH] Fix posix file locking (8/9)

VFS: Fix up documentation for the new locking interfaces.
Signed-off-by: default avatarTrond Myklebust <trond.myklebust@fys.uio.no>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 6640d8f3
...@@ -276,21 +276,34 @@ foo_get_block(). It's an overkill, since block bitmaps can be protected by ...@@ -276,21 +276,34 @@ foo_get_block(). It's an overkill, since block bitmaps can be protected by
internal fs locking and real critical areas are much smaller than the areas internal fs locking and real critical areas are much smaller than the areas
filesystems protect now. filesystems protect now.
--------------------------- file_lock ------------------------------------ ----------------------- file_lock_operations ------------------------------
prototypes: prototypes:
void (*fl_notify)(struct file_lock *); /* unblock callback */
void (*fl_insert)(struct file_lock *); /* lock insertion callback */ void (*fl_insert)(struct file_lock *); /* lock insertion callback */
void (*fl_remove)(struct file_lock *); /* lock removal callback */ void (*fl_remove)(struct file_lock *); /* lock removal callback */
void (*fl_copy_lock)(struct file_lock *, struct file_lock *);
void (*fl_release_private)(struct file_lock *);
locking rules: locking rules:
BKL may block BKL may block
fl_notify: yes no fl_insert: yes no
fl_insert: yes no fl_remove: yes no
fl_remove: yes no fl_copy_lock: yes no
fl_release_private: yes yes
----------------------- lock_manager_operations ---------------------------
prototypes:
int (*fl_compare_owner)(struct file_lock *, struct file_lock *);
void (*fl_notify)(struct file_lock *); /* unblock callback */
locking rules:
BKL may block
fl_compare_owner: yes no
fl_notify: yes no
Currently only NLM provides instances of this class. None of the Currently only NLM provides instances of this class. None of the
them block. If you have out-of-tree instances - please, show up. Locking them block. If you have out-of-tree instances - please, show up. Locking
in that area will change. in that area will change.
--------------------------- buffer_head ----------------------------------- --------------------------- buffer_head -----------------------------------
prototypes: prototypes:
void (*b_end_io)(struct buffer_head *bh, int uptodate); void (*b_end_io)(struct buffer_head *bh, int uptodate);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment