Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
tp-qemu
提交
40b0f3a3
T
tp-qemu
项目概览
openeuler
/
tp-qemu
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
tp-qemu
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
40b0f3a3
编写于
5月 28, 2013
作者:
Q
Qingtang Zhou
提交者:
Lucas Meneghel Rodrigues
6月 06, 2013
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
qemu.tests.usb_storage: Do io test with format_disk script
Signed-off-by:
N
Qingtang Zhou
<
qzhou@redhat.com
>
上级
20b89882
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
19 addition
and
65 deletion
+19
-65
qemu/tests/cfg/usb.cfg
qemu/tests/cfg/usb.cfg
+17
-0
qemu/tests/usb_storage.py
qemu/tests/usb_storage.py
+2
-65
未找到文件。
qemu/tests/cfg/usb.cfg
浏览文件 @
40b0f3a3
...
...
@@ -142,6 +142,23 @@
check_serial_option = yes
check_removable_option = yes
check_io_size_option = yes
# The following parameters will be overridden in guest-os config files.
create_partition_cmd = ""
format_cmd = "yes |mkfs $(readlink -f `ls /dev/disk/by-path/* | grep usb`)"
list_disk_cmd = ""
set_online_cmd = ""
mount_cmd = "mount $(readlink -f `ls /dev/disk/by-path/* | grep usb`) /media"
umount_cmd = "umount $(readlink -f `ls /dev/disk/by-path/* | grep usb`)"
testfile_name = "/media/usb_storage-test.txt"
writefile_cmd = "out=%s;"
writefile_cmd += " python -c "print '$out'*10**4" > /tmp/usb_storage.in;"
writefile_cmd += " for size in 4K 16K 64K 256K; do"
writefile_cmd += " dd if=/tmp/usb_storage.in of=/media/out.$size bs=$size || exit 1;"
writefile_cmd += " md5sum /media/out.$size > /media/out.$size.md5;"
writefile_cmd += ' echo "md5sum -c /media/out.$size.md5 >/dev/null 2>&1" >> /media/md5chk.sh;'
writefile_cmd += " done;"
writefile_cmd += " echo $out > %s"
readfile_cmd = "sh /media/md5chk.sh && cat %s"
RHEL.3, RHEL.4, RHEL.5:
check_io_size_option = no
- usb_host:
...
...
qemu/tests/usb_storage.py
浏览文件 @
40b0f3a3
import
logging
,
re
,
uuid
from
autotest.client.shared
import
error
from
virttest
import
utils_test
@
error
.
context_aware
...
...
@@ -68,72 +69,8 @@ def run_usb_storage(test, params, env):
(
"
\n
"
.
join
(
fail_log
)))
@
error
.
context_aware
def
_do_io_test_guest
(
session
):
blksizes
=
[
"4K"
,
"16K"
,
"64K"
,
"256K"
]
output
=
session
.
cmd
(
"fdisk -l"
)
if
params
[
"fdisk_string"
]
not
in
output
:
for
line
in
output
.
splitlines
():
logging
.
debug
(
line
)
raise
error
.
TestFail
(
"Could not detect the usb device on"
"fdisk output"
)
error
.
context
(
"Formatting USB disk"
)
tmp_cmd
=
"readlink -f `ls /dev/disk/by-path/* | grep usb`"
devname
=
session
.
cmd
(
tmp_cmd
).
strip
()
session
.
cmd
(
"yes | mkfs %s"
%
devname
,
timeout
=
int
(
params
[
"format_timeout"
]))
error
.
context
(
"Mounting USB disk"
)
session
.
cmd
(
"mount %s /mnt"
%
devname
)
error
.
context
(
"Creating comparison file"
)
c_file
=
'/tmp/usbfile'
session
.
cmd
(
"dd if=/dev/urandom of=%s bs=1M count=1"
%
c_file
)
error
.
context
(
"Copying %s to USB disk"
%
c_file
)
for
s
in
blksizes
:
u_file
=
"/mnt/usbfile-%s"
%
s
session
.
cmd
(
"dd if=%s of=%s bs=%s"
%
(
c_file
,
u_file
,
s
))
error
.
context
(
"Unmounting USB disk before file comparison"
)
session
.
cmd
(
"umount %s"
%
devname
)
error
.
context
(
"Mounting USB disk for file comparison"
)
session
.
cmd
(
"mount %s /mnt"
%
devname
)
error
.
context
(
"Determining md5sum for file on root fs and in USB disk"
)
md5_root
=
session
.
cmd
(
"md5sum %s"
%
c_file
).
strip
()
md5_root
=
md5_root
.
split
()[
0
]
for
s
in
blksizes
:
u_file
=
"/mnt/usbfile-%s"
%
s
md5_usb
=
session
.
cmd
(
"md5sum %s"
%
u_file
).
strip
()
md5_usb
=
md5_usb
.
split
()[
0
]
if
md5_root
!=
md5_usb
:
raise
error
.
TestError
(
"MD5 mismatch between file on root fs "
"and on USB disk [%s]"
%
u_file
)
error
.
context
(
"Unmounting USB disk after file comparison"
)
session
.
cmd
(
"umount %s"
%
devname
)
error
.
context
(
"Checking if there are I/O error messages in dmesg"
)
output
=
session
.
get_command_output
(
"dmesg -c"
)
io_error_msg
=
[]
for
line
in
output
.
splitlines
():
if
"Buffer I/O error"
in
line
:
io_error_msg
.
append
(
line
)
if
re
.
search
(
"reset \w+ speed USB device"
,
line
):
io_error_msg
.
append
(
line
)
if
io_error_msg
:
e_msg
=
"IO error found on guest's dmesg when formatting USB device"
logging
.
error
(
e_msg
)
for
line
in
io_error_msg
:
logging
.
error
(
line
)
raise
error
.
TestFail
(
e_msg
)
utils_test
.
run_virt_sub_test
(
test
,
params
,
env
,
"format_disk"
)
@
error
.
context_aware
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录