aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/kernfs.h
diff options
context:
space:
mode:
authorEric W. Biederman <ebiederm@xmission.com>2015-05-13 17:09:29 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2015-07-21 13:10:00 -0400
commit80c298105bf80e33ae494eaeba51f00352b5373c (patch)
tree173d2fa47f6a58fec963d859ab6dfcd553c62ff8 /include/linux/kernfs.h
parenta2020b02c1ec4fffddb77785773dff533428f814 (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: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include/linux/kernfs.h')
-rw-r--r--include/linux/kernfs.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/kernfs.h b/include/linux/kernfs.h
index 71ecdab1671b..29d1896c3ba5 100644
--- a/include/linux/kernfs.h
+++ b/include/linux/kernfs.h
@@ -45,6 +45,7 @@ enum kernfs_node_flag {
45 KERNFS_LOCKDEP = 0x0100, 45 KERNFS_LOCKDEP = 0x0100,
46 KERNFS_SUICIDAL = 0x0400, 46 KERNFS_SUICIDAL = 0x0400,
47 KERNFS_SUICIDED = 0x0800, 47 KERNFS_SUICIDED = 0x0800,
48 KERNFS_EMPTY_DIR = 0x1000,
48}; 49};
49 50
50/* @flags for kernfs_create_root() */ 51/* @flags for kernfs_create_root() */
@@ -285,6 +286,8 @@ void kernfs_destroy_root(struct kernfs_root *root);
285struct kernfs_node *kernfs_create_dir_ns(struct kernfs_node *parent, 286struct kernfs_node *kernfs_create_dir_ns(struct kernfs_node *parent,
286 const char *name, umode_t mode, 287 const char *name, umode_t mode,
287 void *priv, const void *ns); 288 void *priv, const void *ns);
289struct kernfs_node *kernfs_create_empty_dir(struct kernfs_node *parent,
290 const char *name);
288struct kernfs_node *__kernfs_create_file(struct kernfs_node *parent, 291struct kernfs_node *__kernfs_create_file(struct kernfs_node *parent,
289 const char *name, 292 const char *name,
290 umode_t mode, loff_t size, 293 umode_t mode, loff_t size,