Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
cloud-kernel
提交
f1d110ca
cloud-kernel
项目概览
openanolis
/
cloud-kernel
1 年多 前同步成功
通知
160
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看板
提交
f1d110ca
编写于
1月 11, 2009
作者:
J
J. Bruce Fields
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
nfsd4: remove a forward declaration
Signed-off-by:
N
J. Bruce Fields
<
bfields@citi.umich.edu
>
上级
2283963f
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
42 addition
and
43 deletion
+42
-43
fs/nfsd/nfs4state.c
fs/nfsd/nfs4state.c
+42
-43
未找到文件。
fs/nfsd/nfs4state.c
浏览文件 @
f1d110ca
...
...
@@ -75,7 +75,6 @@ static stateid_t onestateid; /* bits all 1 */
/* forward declarations */
static
struct
nfs4_stateid
*
find_stateid
(
stateid_t
*
stid
,
int
flags
);
static
struct
nfs4_delegation
*
find_delegation_stateid
(
struct
inode
*
ino
,
stateid_t
*
stid
);
static
void
release_stateid_lockowners
(
struct
nfs4_stateid
*
open_stp
);
static
char
user_recovery_dirname
[
PATH_MAX
]
=
"/var/lib/nfs/v4recovery"
;
static
void
nfs4_set_recdir
(
char
*
recdir
);
...
...
@@ -330,6 +329,20 @@ static void release_lock_stateid(struct nfs4_stateid *stp)
free_generic_stateid
(
stp
);
}
static
void
release_stateid_lockowners
(
struct
nfs4_stateid
*
open_stp
)
{
struct
nfs4_stateowner
*
lock_sop
;
while
(
!
list_empty
(
&
open_stp
->
st_lockowners
))
{
lock_sop
=
list_entry
(
open_stp
->
st_lockowners
.
next
,
struct
nfs4_stateowner
,
so_perstateid
);
/* list_del(&open_stp->st_lockowners); */
BUG_ON
(
lock_sop
->
so_is_open_owner
);
release_stateowner
(
lock_sop
);
}
}
static
void
release_open_stateid
(
struct
nfs4_stateid
*
stp
)
{
unhash_generic_stateid
(
stp
);
...
...
@@ -338,6 +351,34 @@ static void release_open_stateid(struct nfs4_stateid *stp)
free_generic_stateid
(
stp
);
}
static
void
unhash_stateowner
(
struct
nfs4_stateowner
*
sop
)
{
struct
nfs4_stateid
*
stp
;
list_del
(
&
sop
->
so_idhash
);
list_del
(
&
sop
->
so_strhash
);
if
(
sop
->
so_is_open_owner
)
list_del
(
&
sop
->
so_perclient
);
list_del
(
&
sop
->
so_perstateid
);
while
(
!
list_empty
(
&
sop
->
so_stateids
))
{
stp
=
list_entry
(
sop
->
so_stateids
.
next
,
struct
nfs4_stateid
,
st_perstateowner
);
if
(
sop
->
so_is_open_owner
)
release_open_stateid
(
stp
);
else
release_lock_stateid
(
stp
);
}
}
static
void
release_stateowner
(
struct
nfs4_stateowner
*
sop
)
{
unhash_stateowner
(
sop
);
list_del
(
&
sop
->
so_close_lru
);
nfs4_put_stateowner
(
sop
);
}
static
inline
void
renew_client
(
struct
nfs4_client
*
clp
)
{
...
...
@@ -1064,48 +1105,6 @@ alloc_init_open_stateowner(unsigned int strhashval, struct nfs4_client *clp, str
return
sop
;
}
static
void
release_stateid_lockowners
(
struct
nfs4_stateid
*
open_stp
)
{
struct
nfs4_stateowner
*
lock_sop
;
while
(
!
list_empty
(
&
open_stp
->
st_lockowners
))
{
lock_sop
=
list_entry
(
open_stp
->
st_lockowners
.
next
,
struct
nfs4_stateowner
,
so_perstateid
);
/* list_del(&open_stp->st_lockowners); */
BUG_ON
(
lock_sop
->
so_is_open_owner
);
release_stateowner
(
lock_sop
);
}
}
static
void
unhash_stateowner
(
struct
nfs4_stateowner
*
sop
)
{
struct
nfs4_stateid
*
stp
;
list_del
(
&
sop
->
so_idhash
);
list_del
(
&
sop
->
so_strhash
);
if
(
sop
->
so_is_open_owner
)
list_del
(
&
sop
->
so_perclient
);
list_del
(
&
sop
->
so_perstateid
);
while
(
!
list_empty
(
&
sop
->
so_stateids
))
{
stp
=
list_entry
(
sop
->
so_stateids
.
next
,
struct
nfs4_stateid
,
st_perstateowner
);
if
(
sop
->
so_is_open_owner
)
release_open_stateid
(
stp
);
else
release_lock_stateid
(
stp
);
}
}
static
void
release_stateowner
(
struct
nfs4_stateowner
*
sop
)
{
unhash_stateowner
(
sop
);
list_del
(
&
sop
->
so_close_lru
);
nfs4_put_stateowner
(
sop
);
}
static
inline
void
init_stateid
(
struct
nfs4_stateid
*
stp
,
struct
nfs4_file
*
fp
,
struct
nfsd4_open
*
open
)
{
struct
nfs4_stateowner
*
sop
=
open
->
op_stateowner
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录