Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
linux
Commits
48bde8d3
Commit
48bde8d3
authored
Jul 03, 2013
by
Al Viro
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Document ->tmpfile()
Signed-off-by:
Al Viro
<
viro@zeniv.linux.org.uk
>
parent
af51a2ac
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
7 additions
and
0 deletions
+7
-0
Documentation/filesystems/Locking
Documentation/filesystems/Locking
+2
-0
Documentation/filesystems/vfs.txt
Documentation/filesystems/vfs.txt
+5
-0
No files found.
Documentation/filesystems/Locking
View file @
48bde8d3
...
@@ -64,6 +64,7 @@ prototypes:
...
@@ -64,6 +64,7 @@ prototypes:
int (*atomic_open)(struct inode *, struct dentry *,
int (*atomic_open)(struct inode *, struct dentry *,
struct file *, unsigned open_flag,
struct file *, unsigned open_flag,
umode_t create_mode, int *opened);
umode_t create_mode, int *opened);
int (*tmpfile) (struct inode *, struct dentry *, umode_t);
locking rules:
locking rules:
all may block
all may block
...
@@ -91,6 +92,7 @@ removexattr: yes
...
@@ -91,6 +92,7 @@ removexattr: yes
fiemap: no
fiemap: no
update_time: no
update_time: no
atomic_open: yes
atomic_open: yes
tmpfile: no
Additionally, ->rmdir(), ->unlink() and ->rename() have ->i_mutex on
Additionally, ->rmdir(), ->unlink() and ->rename() have ->i_mutex on
victim.
victim.
...
...
Documentation/filesystems/vfs.txt
View file @
48bde8d3
...
@@ -360,6 +360,8 @@ struct inode_operations {
...
@@ -360,6 +360,8 @@ struct inode_operations {
int (*removexattr) (struct dentry *, const char *);
int (*removexattr) (struct dentry *, const char *);
void (*update_time)(struct inode *, struct timespec *, int);
void (*update_time)(struct inode *, struct timespec *, int);
int (*atomic_open)(struct inode *, struct dentry *,
int (*atomic_open)(struct inode *, struct dentry *,
int (*tmpfile) (struct inode *, struct dentry *, umode_t);
} ____cacheline_aligned;
struct file *, unsigned open_flag,
struct file *, unsigned open_flag,
umode_t create_mode, int *opened);
umode_t create_mode, int *opened);
};
};
...
@@ -472,6 +474,9 @@ otherwise noted.
...
@@ -472,6 +474,9 @@ otherwise noted.
component is negative or needs lookup. Cached positive dentries are
component is negative or needs lookup. Cached positive dentries are
still handled by f_op->open().
still handled by f_op->open().
tmpfile: called in the end of O_TMPFILE open(). Optional, equivalent to
atomically creating, opening and unlinking a file in given directory.
The Address Space Object
The Address Space Object
========================
========================
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment