mirror of https://gitee.com/openkylin/linux.git
ramfs: support O_TMPFILE
[akpm@linux-foundation.org: update inode_operations.tmpfile] Link: http://lkml.kernel.org/r/20190206073349.GA15311@avx2 Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> Acked-by: Christian Brauner <christian.brauner@ubuntu.com> Cc: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
3d742d4b6e
commit
93da400397
|
@ -151,6 +151,18 @@ static int ramfs_symlink(struct user_namespace *mnt_userns, struct inode *dir,
|
|||
return error;
|
||||
}
|
||||
|
||||
static int ramfs_tmpfile(struct user_namespace *mnt_userns,
|
||||
struct inode *dir, struct dentry *dentry, umode_t mode)
|
||||
{
|
||||
struct inode *inode;
|
||||
|
||||
inode = ramfs_get_inode(dir->i_sb, dir, mode, 0);
|
||||
if (!inode)
|
||||
return -ENOSPC;
|
||||
d_tmpfile(dentry, inode);
|
||||
return 0;
|
||||
}
|
||||
|
||||
static const struct inode_operations ramfs_dir_inode_operations = {
|
||||
.create = ramfs_create,
|
||||
.lookup = simple_lookup,
|
||||
|
@ -161,6 +173,7 @@ static const struct inode_operations ramfs_dir_inode_operations = {
|
|||
.rmdir = simple_rmdir,
|
||||
.mknod = ramfs_mknod,
|
||||
.rename = simple_rename,
|
||||
.tmpfile = ramfs_tmpfile,
|
||||
};
|
||||
|
||||
/*
|
||||
|
|
Loading…
Reference in New Issue