Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
cloud-kernel
提交
84d02150
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看板
提交
84d02150
编写于
7月 28, 2015
作者:
M
Mike Marshall
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Orangefs: sooth most sparse complaints
Signed-off-by:
N
Mike Marshall
<
hubcap@omnibond.com
>
上级
2c590d5f
变更
11
隐藏空白更改
内联
并排
Showing
11 changed file
with
33 addition
and
30 deletion
+33
-30
fs/orangefs/devpvfs2-req.c
fs/orangefs/devpvfs2-req.c
+1
-1
fs/orangefs/file.c
fs/orangefs/file.c
+8
-5
fs/orangefs/inode.c
fs/orangefs/inode.c
+1
-1
fs/orangefs/protocol.h
fs/orangefs/protocol.h
+1
-11
fs/orangefs/pvfs2-bufmap.c
fs/orangefs/pvfs2-bufmap.c
+7
-3
fs/orangefs/pvfs2-debugfs.c
fs/orangefs/pvfs2-debugfs.c
+1
-1
fs/orangefs/pvfs2-kernel.h
fs/orangefs/pvfs2-kernel.h
+1
-1
fs/orangefs/pvfs2-mod.c
fs/orangefs/pvfs2-mod.c
+0
-1
fs/orangefs/pvfs2-sysfs.c
fs/orangefs/pvfs2-sysfs.c
+2
-2
fs/orangefs/super.c
fs/orangefs/super.c
+4
-4
fs/orangefs/waitqueue.c
fs/orangefs/waitqueue.c
+7
-0
未找到文件。
fs/orangefs/devpvfs2-req.c
浏览文件 @
84d02150
...
...
@@ -857,7 +857,7 @@ static unsigned long translate_dev_map26(unsigned long args, long *error)
*/
struct
PVFS_dev_map_desc
__user
*
p
=
compat_alloc_user_space
(
sizeof
(
*
p
));
u32
addr
;
compat_uptr_t
addr
;
*
error
=
0
;
/* get the ptr from the 32 bit user-space */
...
...
fs/orangefs/file.c
浏览文件 @
84d02150
...
...
@@ -799,7 +799,7 @@ static ssize_t pvfs2_file_write_iter(struct kiocb *iocb, struct iov_iter *iter)
/*
* Perform a miscellaneous operation on a file.
*/
long
pvfs2_ioctl
(
struct
file
*
file
,
unsigned
int
cmd
,
unsigned
long
arg
)
static
long
pvfs2_ioctl
(
struct
file
*
file
,
unsigned
int
cmd
,
unsigned
long
arg
)
{
int
ret
=
-
ENOTTY
;
__u64
val
=
0
;
...
...
@@ -885,7 +885,7 @@ static int pvfs2_file_mmap(struct file *file, struct vm_area_struct *vma)
*
* \note Not called when each file is closed.
*/
int
pvfs2_file_release
(
struct
inode
*
inode
,
struct
file
*
file
)
static
int
pvfs2_file_release
(
struct
inode
*
inode
,
struct
file
*
file
)
{
gossip_debug
(
GOSSIP_FILE_DEBUG
,
"pvfs2_file_release: called on %s
\n
"
,
...
...
@@ -909,7 +909,10 @@ int pvfs2_file_release(struct inode *inode, struct file *file)
/*
* Push all data for a specific file onto permanent storage.
*/
int
pvfs2_fsync
(
struct
file
*
file
,
loff_t
start
,
loff_t
end
,
int
datasync
)
static
int
pvfs2_fsync
(
struct
file
*
file
,
loff_t
start
,
loff_t
end
,
int
datasync
)
{
int
ret
=
-
EINVAL
;
struct
pvfs2_inode_s
*
pvfs2_inode
=
...
...
@@ -947,7 +950,7 @@ int pvfs2_fsync(struct file *file, loff_t start, loff_t end, int datasync)
* Future upgrade could support SEEK_DATA and SEEK_HOLE but would
* require much changes to the FS
*/
loff_t
pvfs2_file_llseek
(
struct
file
*
file
,
loff_t
offset
,
int
origin
)
static
loff_t
pvfs2_file_llseek
(
struct
file
*
file
,
loff_t
offset
,
int
origin
)
{
int
ret
=
-
EINVAL
;
struct
inode
*
inode
=
file
->
f_path
.
dentry
->
d_inode
;
...
...
@@ -989,7 +992,7 @@ loff_t pvfs2_file_llseek(struct file *file, loff_t offset, int origin)
* Support local locks (locks that only this kernel knows about)
* if Orangefs was mounted -o local_lock.
*/
int
pvfs2_lock
(
struct
file
*
filp
,
int
cmd
,
struct
file_lock
*
fl
)
static
int
pvfs2_lock
(
struct
file
*
filp
,
int
cmd
,
struct
file_lock
*
fl
)
{
int
rc
=
-
ENOLCK
;
...
...
fs/orangefs/inode.c
浏览文件 @
84d02150
...
...
@@ -33,7 +33,7 @@ static int read_one_page(struct page *page)
loff_t
blockptr_offset
=
(((
loff_t
)
page
->
index
)
<<
blockbits
);
bytes_read
=
pvfs2_inode_read
(
inode
,
page_data
,
(
char
__user
*
)
page_data
,
blocksize
,
&
blockptr_offset
,
inode
->
i_size
);
...
...
fs/orangefs/protocol.h
浏览文件 @
84d02150
...
...
@@ -341,7 +341,7 @@ __s32 PINT_non_errno_mapping[] = { \
extern __s32 PINT_errno_mapping[]; \
extern __s32 PINT_non_errno_mapping[]; \
extern const char *PINT_non_errno_strerror_mapping[]; \
__s32 PVFS_get_errno_mapping(__s32 error) \
static
__s32 PVFS_get_errno_mapping(__s32 error) \
{ \
__s32 ret = error, mask = 0; \
__s32 positive = ((error > -1) ? 1 : 0); \
...
...
@@ -364,16 +364,6 @@ __s32 PVFS_get_errno_mapping(__s32 error) \
} \
return ret; \
} \
__s32 PVFS_errno_to_error(int err) \
{ \
__s32 e = 0; \
\
for (; e < PVFS_ERRNO_MAX; ++e) \
if (PINT_errno_mapping[e] == err) \
return e | PVFS_ERROR_BIT; \
\
return err; \
} \
DECLARE_ERRNO_MAPPING()
/* permission bits */
...
...
fs/orangefs/pvfs2-bufmap.c
浏览文件 @
84d02150
...
...
@@ -9,7 +9,7 @@
DECLARE_WAIT_QUEUE_HEAD
(
pvfs2_bufmap_init_waitq
);
struct
pvfs2_bufmap
{
st
atic
st
ruct
pvfs2_bufmap
{
atomic_t
refcnt
;
int
desc_size
;
...
...
@@ -663,6 +663,7 @@ int pvfs_bufmap_copy_iovec_from_kernel(struct pvfs2_bufmap *bufmap,
int
to_page_index
=
0
;
void
*
to_kaddr
=
NULL
;
void
*
from_kaddr
=
NULL
;
struct
kvec
*
iv
=
NULL
;
struct
iovec
*
copied_iovec
=
NULL
;
struct
pvfs_bufmap_desc
*
to
;
unsigned
int
seg
;
...
...
@@ -708,9 +709,10 @@ int pvfs_bufmap_copy_iovec_from_kernel(struct pvfs2_bufmap *bufmap,
* buffer into the mapped buffer one page at a time though
*/
while
(
amt_copied
<
size
)
{
struct
iovec
*
iv
=
&
copied_iovec
[
seg
];
int
inc_to_page_index
;
iv
=
(
struct
kvec
*
)
&
copied_iovec
[
seg
];
if
(
iv
->
iov_len
<
(
PAGE_SIZE
-
to_page_offset
))
{
cur_copy_size
=
PVFS_util_min
(
iv
->
iov_len
,
size
-
amt_copied
);
...
...
@@ -885,6 +887,7 @@ int pvfs_bufmap_copy_to_kernel_iovec(struct pvfs2_bufmap *bufmap,
int
from_page_index
=
0
;
void
*
from_kaddr
=
NULL
;
void
*
to_kaddr
=
NULL
;
struct
kvec
*
iv
;
struct
iovec
*
copied_iovec
=
NULL
;
struct
pvfs_bufmap_desc
*
from
;
unsigned
int
seg
;
...
...
@@ -930,9 +933,10 @@ int pvfs_bufmap_copy_to_kernel_iovec(struct pvfs2_bufmap *bufmap,
* but make sure that we do so one page at a time.
*/
while
(
amt_copied
<
size
)
{
struct
iovec
*
iv
=
&
copied_iovec
[
seg
];
int
inc_from_page_index
;
iv
=
(
struct
kvec
*
)
&
copied_iovec
[
seg
];
if
(
iv
->
iov_len
<
(
PAGE_SIZE
-
from_page_offset
))
{
cur_copy_size
=
PVFS_util_min
(
iv
->
iov_len
,
size
-
amt_copied
);
...
...
fs/orangefs/pvfs2-debugfs.c
浏览文件 @
84d02150
...
...
@@ -70,7 +70,7 @@ static const struct seq_operations help_debug_ops = {
* Used to protect data in ORANGEFS_KMOD_DEBUG_FILE and
* ORANGEFS_KMOD_DEBUG_FILE.
*/
DEFINE_MUTEX
(
orangefs_debug_lock
);
static
DEFINE_MUTEX
(
orangefs_debug_lock
);
int
orangefs_debug_open
(
struct
inode
*
,
struct
file
*
);
...
...
fs/orangefs/pvfs2-kernel.h
浏览文件 @
84d02150
...
...
@@ -608,7 +608,7 @@ struct inode *pvfs2_iget(struct super_block *sb,
struct
pvfs2_object_kref
*
ref
);
ssize_t
pvfs2_inode_read
(
struct
inode
*
inode
,
char
*
buf
,
char
__user
*
buf
,
size_t
count
,
loff_t
*
offset
,
loff_t
readahead_size
);
...
...
fs/orangefs/pvfs2-mod.c
浏览文件 @
84d02150
...
...
@@ -47,7 +47,6 @@ struct client_debug_mask client_debug_mask = { NULL, 0, 0 };
unsigned
int
kernel_mask_set_mod_init
;
/* implicitly false */
int
op_timeout_secs
=
PVFS2_DEFAULT_OP_TIMEOUT_SECS
;
int
slot_timeout_secs
=
PVFS2_DEFAULT_SLOT_TIMEOUT_SECS
;
__u32
DEBUG_LINE
=
50
;
MODULE_LICENSE
(
"GPL"
);
MODULE_AUTHOR
(
"PVFS2 Development Team"
);
...
...
fs/orangefs/pvfs2-sysfs.c
浏览文件 @
84d02150
...
...
@@ -750,7 +750,7 @@ static ssize_t int_store(struct orangefs_obj *orangefs_obj,
/*
* obtain attribute values from userspace with a service operation.
*/
int
sysfs_service_op_show
(
char
*
kobj_id
,
char
*
buf
,
void
*
attr
)
static
int
sysfs_service_op_show
(
char
*
kobj_id
,
char
*
buf
,
void
*
attr
)
{
struct
pvfs2_kernel_op_s
*
new_op
=
NULL
;
int
rc
=
0
;
...
...
@@ -1023,7 +1023,7 @@ static ssize_t
* We want to return 1 if we think everything went OK, and
* EINVAL if not.
*/
int
sysfs_service_op_store
(
char
*
kobj_id
,
const
char
*
buf
,
void
*
attr
)
static
int
sysfs_service_op_store
(
char
*
kobj_id
,
const
char
*
buf
,
void
*
attr
)
{
struct
pvfs2_kernel_op_s
*
new_op
=
NULL
;
int
val
=
0
;
...
...
fs/orangefs/super.c
浏览文件 @
84d02150
...
...
@@ -269,7 +269,7 @@ static void pvfs2_dirty_inode(struct inode *inode, int flags)
SetAtimeFlag
(
pvfs2_inode
);
}
struct
super_operations
pvfs2_s_ops
=
{
st
atic
const
st
ruct
super_operations
pvfs2_s_ops
=
{
.
alloc_inode
=
pvfs2_alloc_inode
,
.
destroy_inode
=
pvfs2_destroy_inode
,
.
dirty_inode
=
pvfs2_dirty_inode
,
...
...
@@ -279,7 +279,7 @@ struct super_operations pvfs2_s_ops = {
.
show_options
=
generic_show_options
,
};
struct
dentry
*
pvfs2_fh_to_dentry
(
struct
super_block
*
sb
,
st
atic
st
ruct
dentry
*
pvfs2_fh_to_dentry
(
struct
super_block
*
sb
,
struct
fid
*
fid
,
int
fh_len
,
int
fh_type
)
...
...
@@ -299,7 +299,7 @@ struct dentry *pvfs2_fh_to_dentry(struct super_block *sb,
return
d_obtain_alias
(
pvfs2_iget
(
sb
,
&
refn
));
}
int
pvfs2_encode_fh
(
struct
inode
*
inode
,
static
int
pvfs2_encode_fh
(
struct
inode
*
inode
,
__u32
*
fh
,
int
*
max_len
,
struct
inode
*
parent
)
...
...
@@ -347,7 +347,7 @@ static struct export_operations pvfs2_export_ops = {
.
fh_to_dentry
=
pvfs2_fh_to_dentry
,
};
int
pvfs2_fill_sb
(
struct
super_block
*
sb
,
void
*
data
,
int
silent
)
static
int
pvfs2_fill_sb
(
struct
super_block
*
sb
,
void
*
data
,
int
silent
)
{
int
ret
=
-
EINVAL
;
struct
inode
*
root
=
NULL
;
...
...
fs/orangefs/waitqueue.c
浏览文件 @
84d02150
...
...
@@ -314,6 +314,13 @@ void pvfs2_clean_up_interrupted_operation(struct pvfs2_kernel_op_s *op)
spin_unlock
(
&
op
->
lock
);
gossip_err
(
"interrupted operation is in a weird state 0x%x
\n
"
,
op
->
op_state
);
}
else
{
/*
* It is not intended for execution to flow here,
* but having this unlock here makes sparse happy.
*/
gossip_err
(
"%s: can't get here.
\n
"
,
__func__
);
spin_unlock
(
&
op
->
lock
);
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录