Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
cloud-kernel
提交
6b4d0b27
cloud-kernel
项目概览
openanolis
/
cloud-kernel
1 年多 前同步成功
通知
161
Star
36
Fork
7
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
10
列表
看板
标记
里程碑
合并请求
2
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
cloud-kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
10
Issue
10
列表
看板
标记
里程碑
合并请求
2
合并请求
2
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
6b4d0b27
编写于
2月 14, 2013
作者:
A
Al Viro
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
clean shmem_file_setup() a bit
Signed-off-by:
N
Al Viro
<
viro@zeniv.linux.org.uk
>
上级
39b65252
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
9 addition
and
10 deletion
+9
-10
mm/shmem.c
mm/shmem.c
+9
-10
未找到文件。
mm/shmem.c
浏览文件 @
6b4d0b27
...
...
@@ -2873,15 +2873,14 @@ EXPORT_SYMBOL_GPL(shmem_truncate_range);
*/
struct
file
*
shmem_file_setup
(
const
char
*
name
,
loff_t
size
,
unsigned
long
flags
)
{
int
error
;
struct
file
*
file
;
struct
file
*
res
;
struct
inode
*
inode
;
struct
path
path
;
struct
dentry
*
root
;
struct
qstr
this
;
if
(
IS_ERR
(
shm_mnt
))
return
(
void
*
)
shm_mnt
;
return
ERR_CAST
(
shm_mnt
)
;
if
(
size
<
0
||
size
>
MAX_LFS_FILESIZE
)
return
ERR_PTR
(
-
EINVAL
);
...
...
@@ -2889,7 +2888,7 @@ struct file *shmem_file_setup(const char *name, loff_t size, unsigned long flags
if
(
shmem_acct_size
(
flags
,
size
))
return
ERR_PTR
(
-
ENOMEM
);
error
=
-
ENOMEM
;
res
=
ERR_PTR
(
-
ENOMEM
)
;
this
.
name
=
name
;
this
.
len
=
strlen
(
name
);
this
.
hash
=
0
;
/* will go */
...
...
@@ -2899,7 +2898,7 @@ struct file *shmem_file_setup(const char *name, loff_t size, unsigned long flags
goto
put_memory
;
path
.
mnt
=
mntget
(
shm_mnt
);
error
=
-
ENOSPC
;
res
=
ERR_PTR
(
-
ENOSPC
)
;
inode
=
shmem_get_inode
(
root
->
d_sb
,
NULL
,
S_IFREG
|
S_IRWXUGO
,
0
,
flags
);
if
(
!
inode
)
goto
put_dentry
;
...
...
@@ -2909,23 +2908,23 @@ struct file *shmem_file_setup(const char *name, loff_t size, unsigned long flags
clear_nlink
(
inode
);
/* It is unlinked */
#ifndef CONFIG_MMU
error
=
ramfs_nommu_expand_for_mapping
(
inode
,
size
);
res
=
ERR_PTR
(
error
);
if
(
error
)
goto
put_dentry
;
#endif
file
=
alloc_file
(
&
path
,
FMODE_WRITE
|
FMODE_READ
,
res
=
alloc_file
(
&
path
,
FMODE_WRITE
|
FMODE_READ
,
&
shmem_file_operations
);
error
=
PTR_ERR
(
file
);
if
(
IS_ERR
(
file
))
if
(
IS_ERR
(
res
))
goto
put_dentry
;
return
file
;
return
res
;
put_dentry:
path_put
(
&
path
);
put_memory:
shmem_unacct_size
(
flags
,
size
);
return
ERR_PTR
(
error
)
;
return
res
;
}
EXPORT_SYMBOL_GPL
(
shmem_file_setup
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录