Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
Kernel
提交
c8ed555a
K
Kernel
项目概览
openeuler
/
Kernel
接近 2 年 前同步成功
通知
8
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
K
Kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
c8ed555a
编写于
3月 31, 2013
作者:
A
Al Viro
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
scsi_debug: switch to ->show_info()
Signed-off-by:
N
Al Viro
<
viro@zeniv.linux.org.uk
>
上级
cac19703
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
21 addition
and
32 deletion
+21
-32
drivers/scsi/scsi_debug.c
drivers/scsi/scsi_debug.c
+21
-32
未找到文件。
drivers/scsi/scsi_debug.c
浏览文件 @
c8ed555a
...
...
@@ -2823,31 +2823,27 @@ static const char * scsi_debug_info(struct Scsi_Host * shp)
/* scsi_debug_proc_info
* Used if the driver currently has no own support for /proc/scsi
*/
static
int
scsi_debug_proc_info
(
struct
Scsi_Host
*
host
,
char
*
buffer
,
char
**
start
,
off_t
offset
,
int
length
,
int
inout
)
static
int
scsi_debug_write_info
(
struct
Scsi_Host
*
host
,
char
*
buffer
,
int
length
)
{
int
len
,
pos
,
begin
;
int
orig_length
;
char
arr
[
16
];
int
opts
;
int
minLen
=
length
>
15
?
15
:
length
;
orig_length
=
length
;
if
(
inout
==
1
)
{
char
arr
[
16
];
int
minLen
=
length
>
15
?
15
:
length
;
if
(
!
capable
(
CAP_SYS_ADMIN
)
||
!
capable
(
CAP_SYS_RAWIO
))
return
-
EACCES
;
memcpy
(
arr
,
buffer
,
minLen
);
arr
[
minLen
]
=
'\0'
;
if
(
1
!=
sscanf
(
arr
,
"%d"
,
&
opts
))
return
-
EINVAL
;
scsi_debug_opts
=
opts
;
if
(
scsi_debug_every_nth
!=
0
)
scsi_debug_cmnd_count
=
0
;
return
length
;
}
if
(
!
capable
(
CAP_SYS_ADMIN
)
||
!
capable
(
CAP_SYS_RAWIO
))
return
-
EACCES
;
memcpy
(
arr
,
buffer
,
minLen
);
arr
[
minLen
]
=
'\0'
;
if
(
1
!=
sscanf
(
arr
,
"%d"
,
&
pos
))
return
-
EINVAL
;
scsi_debug_opts
=
pos
;
if
(
scsi_debug_every_nth
!=
0
)
scsi_debug_cmnd_count
=
0
;
return
length
;
}
begin
=
0
;
pos
=
len
=
sprintf
(
buffer
,
"scsi_debug adapter driver, version "
static
int
scsi_debug_show_info
(
struct
seq_file
*
m
,
struct
Scsi_Host
*
host
)
{
seq_printf
(
m
,
"scsi_debug adapter driver, version "
"%s [%s]
\n
"
"num_tgts=%d, shared (ram) size=%d MB, opts=0x%x, "
"every_nth=%d(curr:%d)
\n
"
...
...
@@ -2862,15 +2858,7 @@ static int scsi_debug_proc_info(struct Scsi_Host *host, char *buffer, char **sta
scsi_debug_sector_size
,
sdebug_cylinders_per
,
sdebug_heads
,
sdebug_sectors_per
,
num_aborts
,
num_dev_resets
,
num_bus_resets
,
num_host_resets
,
dix_reads
,
dix_writes
,
dif_errors
);
if
(
pos
<
offset
)
{
len
=
0
;
begin
=
pos
;
}
*
start
=
buffer
+
(
offset
-
begin
);
/* Start of wanted data */
len
-=
(
offset
-
begin
);
if
(
len
>
length
)
len
=
length
;
return
len
;
return
0
;
}
static
ssize_t
sdebug_delay_show
(
struct
device_driver
*
ddp
,
char
*
buf
)
...
...
@@ -3957,7 +3945,8 @@ int scsi_debug_queuecommand_lck(struct scsi_cmnd *SCpnt, done_funct_t done)
static
DEF_SCSI_QCMD
(
scsi_debug_queuecommand
)
static
struct
scsi_host_template
sdebug_driver_template
=
{
.
proc_info
=
scsi_debug_proc_info
,
.
show_info
=
scsi_debug_show_info
,
.
write_info
=
scsi_debug_write_info
,
.
proc_name
=
sdebug_proc_name
,
.
name
=
"SCSI DEBUG"
,
.
info
=
scsi_debug_info
,
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录