Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openthos
linux
提交
89a58e32
L
linux
项目概览
openthos
/
linux
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
L
linux
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
89a58e32
编写于
5月 25, 2011
作者:
B
Benny Halevy
提交者:
Boaz Harrosh
5月 29, 2011
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
NFSv4.1: use pnfs_generic_pg_test directly by layout driver
Signed-off-by:
N
Benny Halevy
<
bhalevy@panasas.com
>
上级
18ad0a9f
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
17 addition
and
19 deletion
+17
-19
fs/nfs/nfs4filelayout.c
fs/nfs/nfs4filelayout.c
+3
-0
fs/nfs/objlayout/objio_osd.c
fs/nfs/objlayout/objio_osd.c
+1
-13
fs/nfs/pnfs.c
fs/nfs/pnfs.c
+9
-4
fs/nfs/pnfs.h
fs/nfs/pnfs.h
+4
-2
未找到文件。
fs/nfs/nfs4filelayout.c
浏览文件 @
89a58e32
...
...
@@ -661,6 +661,9 @@ filelayout_pg_test(struct nfs_pageio_descriptor *pgio, struct nfs_page *prev,
u64
p_stripe
,
r_stripe
;
u32
stripe_unit
;
if
(
!
pnfs_generic_pg_test
(
pgio
,
prev
,
req
))
return
0
;
if
(
!
pgio
->
pg_lseg
)
return
1
;
p_stripe
=
(
u64
)
prev
->
wb_index
<<
PAGE_CACHE_SHIFT
;
...
...
fs/nfs/objlayout/objio_osd.c
浏览文件 @
89a58e32
...
...
@@ -988,18 +988,6 @@ ssize_t objio_write_pagelist(struct objlayout_io_state *ol_state, bool stable)
return
_write_exec
(
ios
);
}
/*
* objlayout_pg_test(). Called by nfs_can_coalesce_requests()
*
* return true iff coalesce page
*/
bool
objlayout_pg_test
(
struct
nfs_pageio_descriptor
*
pgio
,
struct
nfs_page
*
prev
,
struct
nfs_page
*
req
)
{
return
true
;
}
static
struct
pnfs_layoutdriver_type
objlayout_type
=
{
.
id
=
LAYOUT_OSD2_OBJECTS
,
.
name
=
"LAYOUT_OSD2_OBJECTS"
,
...
...
@@ -1013,7 +1001,7 @@ static struct pnfs_layoutdriver_type objlayout_type = {
.
read_pagelist
=
objlayout_read_pagelist
,
.
write_pagelist
=
objlayout_write_pagelist
,
.
pg_test
=
objlayout
_pg_test
,
.
pg_test
=
pnfs_generic
_pg_test
,
.
free_deviceid_node
=
objio_free_deviceid_node
,
...
...
fs/nfs/pnfs.c
浏览文件 @
89a58e32
...
...
@@ -1067,12 +1067,17 @@ pnfs_generic_pg_test(struct nfs_pageio_descriptor *pgio, struct nfs_page *prev,
pgio
->
pg_count
,
access_type
,
gfp_flags
);
}
else
if
(
pgio
->
pg_lseg
&&
req_offset
(
req
)
>
end_offset
(
pgio
->
pg_lseg
->
pls_range
.
offset
,
pgio
->
pg_lseg
->
pls_range
.
length
))
return
true
;
}
if
(
pgio
->
pg_lseg
&&
req_offset
(
req
)
>
end_offset
(
pgio
->
pg_lseg
->
pls_range
.
offset
,
pgio
->
pg_lseg
->
pls_range
.
length
))
return
false
;
return
NFS_SERVER
(
pgio
->
pg_inode
)
->
pnfs_curr_ld
->
pg_test
(
pgio
,
prev
,
req
);
return
true
;
}
EXPORT_SYMBOL_GPL
(
pnfs_generic_pg_test
);
/*
* Called by non rpc-based layout drivers
...
...
fs/nfs/pnfs.h
浏览文件 @
89a58e32
...
...
@@ -295,8 +295,10 @@ static inline int pnfs_return_layout(struct inode *ino)
static
inline
void
pnfs_pageio_init
(
struct
nfs_pageio_descriptor
*
pgio
,
struct
inode
*
inode
)
{
if
(
NFS_SERVER
(
inode
)
->
pnfs_curr_ld
)
pgio
->
pg_test
=
pnfs_generic_pg_test
;
struct
pnfs_layoutdriver_type
*
ld
=
NFS_SERVER
(
inode
)
->
pnfs_curr_ld
;
if
(
ld
)
pgio
->
pg_test
=
ld
->
pg_test
;
}
#else
/* CONFIG_NFS_V4_1 */
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录