diff options
| author | Eric W. Biederman <ebiederm@xmission.com> | 2015-05-13 16:09:29 -0500 |
|---|---|---|
| committer | Luis Henriques <luis.henriques@canonical.com> | 2015-07-15 10:01:07 +0100 |
| commit | 4e6378f17c02560f052a0fae6e7c2fc1647d06ba (patch) | |
| tree | b56404c594c763281714955d7f4f5e08d8d35ac4 /include/linux | |
| parent | ece47480151b7310a05556aa24ea394212704dfe (diff) | |
kernfs: Add support for always empty directories.
commit ea015218f2f7ace2dad9cedd21ed95bdba2886d7 upstream.
Add a new function kernfs_create_empty_dir that can be used to create
directory that can not be modified.
Update the code to use make_empty_dir_inode when reporting a
permanently empty directory to the vfs.
Update the code to not allow adding to permanently empty directories.
Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/kernfs.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/kernfs.h b/include/linux/kernfs.h index 30faf797c2c3..6658ff53203e 100644 --- a/include/linux/kernfs.h +++ b/include/linux/kernfs.h @@ -46,6 +46,7 @@ enum kernfs_node_flag { KERNFS_STATIC_NAME = 0x0200, KERNFS_SUICIDAL = 0x0400, KERNFS_SUICIDED = 0x0800, + KERNFS_EMPTY_DIR = 0x1000, }; /* @flags for kernfs_create_root() */ @@ -278,6 +279,8 @@ void kernfs_destroy_root(struct kernfs_root *root); struct kernfs_node *kernfs_create_dir_ns(struct kernfs_node *parent, const char *name, umode_t mode, void *priv, const void *ns); +struct kernfs_node *kernfs_create_empty_dir(struct kernfs_node *parent, + const char *name); struct kernfs_node *__kernfs_create_file(struct kernfs_node *parent, const char *name, umode_t mode, loff_t size, |
