Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
gsplhtlxg
clone-Linux
提交
52f21999
C
clone-Linux
项目概览
gsplhtlxg
/
clone-Linux
通知
2
Star
0
Fork
1
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
C
clone-Linux
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
52f21999
编写于
3月 28, 2013
作者:
A
Al Viro
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
ecryptfs: close rmmod race
Signed-off-by:
N
Al Viro
<
viro@zeniv.linux.org.uk
>
上级
de55eb1d
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
2 addition
and
12 deletion
+2
-12
fs/ecryptfs/miscdev.c
fs/ecryptfs/miscdev.c
+2
-12
未找到文件。
fs/ecryptfs/miscdev.c
浏览文件 @
52f21999
...
...
@@ -80,13 +80,6 @@ ecryptfs_miscdev_open(struct inode *inode, struct file *file)
int
rc
;
mutex_lock
(
&
ecryptfs_daemon_hash_mux
);
rc
=
try_module_get
(
THIS_MODULE
);
if
(
rc
==
0
)
{
rc
=
-
EIO
;
printk
(
KERN_ERR
"%s: Error attempting to increment module use "
"count; rc = [%d]
\n
"
,
__func__
,
rc
);
goto
out_unlock_daemon_list
;
}
rc
=
ecryptfs_find_daemon_by_euid
(
&
daemon
);
if
(
!
rc
)
{
rc
=
-
EINVAL
;
...
...
@@ -96,7 +89,7 @@ ecryptfs_miscdev_open(struct inode *inode, struct file *file)
if
(
rc
)
{
printk
(
KERN_ERR
"%s: Error attempting to spawn daemon; "
"rc = [%d]
\n
"
,
__func__
,
rc
);
goto
out_
module_put_
unlock_daemon_list
;
goto
out_unlock_daemon_list
;
}
mutex_lock
(
&
daemon
->
mux
);
if
(
daemon
->
flags
&
ECRYPTFS_DAEMON_MISCDEV_OPEN
)
{
...
...
@@ -108,9 +101,6 @@ ecryptfs_miscdev_open(struct inode *inode, struct file *file)
atomic_inc
(
&
ecryptfs_num_miscdev_opens
);
out_unlock_daemon:
mutex_unlock
(
&
daemon
->
mux
);
out_module_put_unlock_daemon_list:
if
(
rc
)
module_put
(
THIS_MODULE
);
out_unlock_daemon_list:
mutex_unlock
(
&
ecryptfs_daemon_hash_mux
);
return
rc
;
...
...
@@ -147,7 +137,6 @@ ecryptfs_miscdev_release(struct inode *inode, struct file *file)
"bug.
\n
"
,
__func__
,
rc
);
BUG
();
}
module_put
(
THIS_MODULE
);
return
rc
;
}
...
...
@@ -471,6 +460,7 @@ ecryptfs_miscdev_write(struct file *file, const char __user *buf,
static
const
struct
file_operations
ecryptfs_miscdev_fops
=
{
.
owner
=
THIS_MODULE
,
.
open
=
ecryptfs_miscdev_open
,
.
poll
=
ecryptfs_miscdev_poll
,
.
read
=
ecryptfs_miscdev_read
,
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录