Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
libvirt
提交
67e74161
L
libvirt
项目概览
openeuler
/
libvirt
通知
3
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
L
libvirt
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
67e74161
编写于
1月 30, 2009
作者:
D
Daniel P. Berrange
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Support disk caching mode config
上级
3cb55cb5
变更
20
隐藏空白更改
内联
并排
Showing
20 changed file
with
315 addition
and
23 deletion
+315
-23
ChangeLog
ChangeLog
+13
-1
docs/schemas/domain.rng
docs/schemas/domain.rng
+35
-8
src/domain_conf.c
src/domain_conf.c
+28
-8
src/domain_conf.h
src/domain_conf.h
+11
-0
src/qemu_conf.c
src/qemu_conf.c
+33
-5
src/qemu_conf.h
src/qemu_conf.h
+2
-1
tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-none.args
...muxml2argvdata/qemuxml2argv-disk-drive-cache-v1-none.args
+1
-0
tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-none.xml
...emuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-none.xml
+29
-0
tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-wb.args
...qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-wb.args
+1
-0
tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-wb.xml
.../qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-wb.xml
+29
-0
tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-wt.args
...qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-wt.args
+1
-0
tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-wt.xml
.../qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-wt.xml
+29
-0
tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-none.args
...muxml2argvdata/qemuxml2argv-disk-drive-cache-v2-none.args
+1
-0
tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-none.xml
...emuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-none.xml
+29
-0
tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-wb.args
...qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-wb.args
+1
-0
tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-wb.xml
.../qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-wb.xml
+29
-0
tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-wt.args
...qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-wt.args
+1
-0
tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-wt.xml
.../qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-wt.xml
+29
-0
tests/qemuxml2argvtest.c
tests/qemuxml2argvtest.c
+10
-0
tests/qemuxml2xmltest.c
tests/qemuxml2xmltest.c
+3
-0
未找到文件。
ChangeLog
浏览文件 @
67e74161
Fri Jan 30 16:12:22 GMT 2009 Daniel P. Berrange <berrange@redhat.com>
Fri Jan 30 17:12:22 GMT 2009 Daniel P. Berrange <berrange@redhat.com>
Support <driver cache='none|writeback|writethrough'/> cache
control options
* src/domain_conf.c, src/domain_conf.h: Add supported for
disk caching mode options
* src/qemu_conf.c, src/qemu_conf.h: Detect supported cache
mode options for -drive and use them when launching QEMU
* docs/schemas/domain.rng: Document cache mode options
* tests/qemuxml2argvtest.c: Validate cache mode processing
* tests/qemuxml2argvdata/: Data files for cache mode options
Fri Jan 30 17:12:22 GMT 2009 Daniel P. Berrange <berrange@redhat.com>
Fix crash when using bogus arch type
* src/capabilities.c, src/capabilities.h: Add method to query
...
...
docs/schemas/domain.rng
浏览文件 @
67e74161
...
...
@@ -426,18 +426,45 @@
-->
<define
name=
'driver'
>
<element
name=
'driver'
>
<attribute
name=
'name'
>
<ref
name=
'genericName'
/>
</attribute>
<optional>
<attribute
name=
'type'
>
<ref
name=
'genericName'
/>
</attribute>
</optional>
<choice>
<group>
<ref
name=
'driverFormat'
/>
<optional>
<ref
name=
'driverCache'
/>
</optional>
</group>
<group>
<optional>
<ref
name=
'driverFormat'
/>
</optional>
<ref
name=
'driverCache'
/>
</group>
</choice>
<empty/>
</element>
</define>
<define
name=
'driverFormat'
>
<attribute
name=
'name'
>
<ref
name=
'genericName'
/>
</attribute>
<optional>
<attribute
name=
'type'
>
<ref
name=
'genericName'
/>
</attribute>
</optional>
</define>
<define
name=
'driverCache'
>
<attribute
name=
'cache'
>
<choice>
<value>
none
</value>
<value>
writeback
</value>
<value>
writethrough
</value>
</choice>
</attribute>
</define>
<define
name=
'filesystem'
>
<element
name=
'filesystem'
>
<choice>
...
...
src/domain_conf.c
浏览文件 @
67e74161
/*
* domain_conf.c: domain XML processing
*
* Copyright (C) 2006-200
8
Red Hat, Inc.
* Copyright (C) 2006-200
9
Red Hat, Inc.
* Copyright (C) 2006-2008 Daniel P. Berrange
*
* This library is free software; you can redistribute it and/or
...
...
@@ -91,6 +91,12 @@ VIR_ENUM_IMPL(virDomainDiskBus, VIR_DOMAIN_DISK_BUS_LAST,
"usb"
,
"uml"
)
VIR_ENUM_IMPL
(
virDomainDiskCache
,
VIR_DOMAIN_DISK_CACHE_LAST
,
"default"
,
"none"
,
"writethrough"
,
"writeback"
);
VIR_ENUM_IMPL
(
virDomainFS
,
VIR_DOMAIN_FS_TYPE_LAST
,
"mount"
,
"block"
,
...
...
@@ -568,6 +574,7 @@ virDomainDiskDefParseXML(virConnectPtr conn,
char
*
source
=
NULL
;
char
*
target
=
NULL
;
char
*
bus
=
NULL
;
char
*
cachetag
=
NULL
;
if
(
VIR_ALLOC
(
def
)
<
0
)
{
virReportOOMError
(
conn
);
...
...
@@ -617,6 +624,7 @@ virDomainDiskDefParseXML(virConnectPtr conn,
(
xmlStrEqual
(
cur
->
name
,
BAD_CAST
"driver"
)))
{
driverName
=
virXMLPropString
(
cur
,
"name"
);
driverType
=
virXMLPropString
(
cur
,
"type"
);
cachetag
=
virXMLPropString
(
cur
,
"cache"
);
}
else
if
(
xmlStrEqual
(
cur
->
name
,
BAD_CAST
"readonly"
))
{
def
->
readonly
=
1
;
}
else
if
(
xmlStrEqual
(
cur
->
name
,
BAD_CAST
"shareable"
))
{
...
...
@@ -713,6 +721,13 @@ virDomainDiskDefParseXML(virConnectPtr conn,
goto
error
;
}
if
(
cachetag
&&
(
def
->
cachemode
=
virDomainDiskCacheTypeFromString
(
cachetag
))
<
0
)
{
virDomainReportError
(
conn
,
VIR_ERR_INTERNAL_ERROR
,
_
(
"unknown disk cache mode '%s'"
),
cachetag
);
goto
error
;
}
def
->
src
=
source
;
source
=
NULL
;
def
->
dst
=
target
;
...
...
@@ -730,6 +745,7 @@ cleanup:
VIR_FREE
(
device
);
VIR_FREE
(
driverType
);
VIR_FREE
(
driverName
);
VIR_FREE
(
cachetag
);
return
def
;
...
...
@@ -2756,6 +2772,7 @@ virDomainDiskDefFormat(virConnectPtr conn,
const
char
*
type
=
virDomainDiskTypeToString
(
def
->
type
);
const
char
*
device
=
virDomainDiskDeviceTypeToString
(
def
->
device
);
const
char
*
bus
=
virDomainDiskBusTypeToString
(
def
->
bus
);
const
char
*
cachemode
=
virDomainDiskCacheTypeToString
(
def
->
cachemode
);
if
(
!
type
)
{
virDomainReportError
(
conn
,
VIR_ERR_INTERNAL_ERROR
,
...
...
@@ -2772,20 +2789,23 @@ virDomainDiskDefFormat(virConnectPtr conn,
_
(
"unexpected disk bus %d"
),
def
->
bus
);
return
-
1
;
}
if
(
!
cachemode
)
{
virDomainReportError
(
conn
,
VIR_ERR_INTERNAL_ERROR
,
_
(
"unexpected disk cache mode %d"
),
def
->
cachemode
);
return
-
1
;
}
virBufferVSprintf
(
buf
,
" <disk type='%s' device='%s'>
\n
"
,
type
,
device
);
if
(
def
->
driverName
)
{
virBufferVSprintf
(
buf
,
" <driver name='%s'"
,
def
->
driverName
);
if
(
def
->
driverType
)
virBufferVSprintf
(
buf
,
" <driver name='%s' type='%s'/>
\n
"
,
def
->
driverName
,
def
->
driverType
);
else
virBufferVSprintf
(
buf
,
" <driver name='%s'/>
\n
"
,
def
->
driverName
);
virBufferVSprintf
(
buf
,
" type='%s'"
,
def
->
driverType
);
if
(
def
->
cachemode
)
virBufferVSprintf
(
buf
,
" cache='%s'"
,
cachemode
);
virBufferVSprintf
(
buf
,
"/>
\n
"
);
}
if
(
def
->
src
)
{
...
...
src/domain_conf.h
浏览文件 @
67e74161
...
...
@@ -81,6 +81,15 @@ enum virDomainDiskBus {
VIR_DOMAIN_DISK_BUS_LAST
};
enum
virDomainDiskCache
{
VIR_DOMAIN_DISK_CACHE_DEFAULT
,
VIR_DOMAIN_DISK_CACHE_DISABLE
,
VIR_DOMAIN_DISK_CACHE_WRITETHRU
,
VIR_DOMAIN_DISK_CACHE_WRITEBACK
,
VIR_DOMAIN_DISK_CACHE_LAST
};
/* Stores the virtual disk configuration */
typedef
struct
_virDomainDiskDef
virDomainDiskDef
;
typedef
virDomainDiskDef
*
virDomainDiskDefPtr
;
...
...
@@ -92,6 +101,7 @@ struct _virDomainDiskDef {
char
*
dst
;
char
*
driverName
;
char
*
driverType
;
int
cachemode
;
unsigned
int
readonly
:
1
;
unsigned
int
shared
:
1
;
int
slotnum
;
/* pci slot number for unattach */
...
...
@@ -615,6 +625,7 @@ VIR_ENUM_DECL(virDomainLifecycle)
VIR_ENUM_DECL
(
virDomainDisk
)
VIR_ENUM_DECL
(
virDomainDiskDevice
)
VIR_ENUM_DECL
(
virDomainDiskBus
)
VIR_ENUM_DECL
(
virDomainDiskCache
)
VIR_ENUM_DECL
(
virDomainFS
)
VIR_ENUM_DECL
(
virDomainNet
)
VIR_ENUM_DECL
(
virDomainChr
)
...
...
src/qemu_conf.c
浏览文件 @
67e74161
/*
* config.c: VM configuration management
*
* Copyright (C) 2006, 2007, 2008 Red Hat, Inc.
* Copyright (C) 2006, 2007, 2008
, 2009
Red Hat, Inc.
* Copyright (C) 2006 Daniel P. Berrange
*
* This library is free software; you can redistribute it and/or
...
...
@@ -61,6 +61,22 @@ VIR_ENUM_IMPL(virDomainDiskQEMUBus, VIR_DOMAIN_DISK_BUS_LAST,
"uml"
)
VIR_ENUM_DECL
(
qemuDiskCacheV1
)
VIR_ENUM_DECL
(
qemuDiskCacheV2
)
VIR_ENUM_IMPL
(
qemuDiskCacheV1
,
VIR_DOMAIN_DISK_CACHE_LAST
,
"default"
,
"off"
,
"off"
,
/* writethrough not supported, so for safety, disable */
"on"
);
/* Old 'on' was equivalent to 'writeback' */
VIR_ENUM_IMPL
(
qemuDiskCacheV2
,
VIR_DOMAIN_DISK_CACHE_LAST
,
"default"
,
"none"
,
"writethrough"
,
"writeback"
);
#define qemudLog(level, msg...) fprintf(stderr, msg)
int
qemudLoadDriverConfig
(
struct
qemud_driver
*
driver
,
...
...
@@ -398,8 +414,11 @@ int qemudExtractVersionInfo(const char *qemu,
flags
|=
QEMUD_CMD_FLAG_UUID
;
if
(
strstr
(
help
,
"-domid"
))
flags
|=
QEMUD_CMD_FLAG_DOMID
;
if
(
strstr
(
help
,
"-drive"
))
if
(
strstr
(
help
,
"-drive"
))
{
flags
|=
QEMUD_CMD_FLAG_DRIVE
;
if
(
strstr
(
help
,
"cache=writethrough|writeback|none"
))
flags
|=
QEMUD_CMD_FLAG_DRIVE_CACHE_V2
;
}
if
(
strstr
(
help
,
"boot=on"
))
flags
|=
QEMUD_CMD_FLAG_DRIVE_BOOT
;
if
(
version
>=
9000
)
...
...
@@ -591,6 +610,7 @@ qemudNetworkIfaceConnect(virConnectPtr conn,
return
NULL
;
}
static
int
qemudBuildCommandLineChrDevStr
(
virDomainChrDefPtr
dev
,
char
*
buf
,
int
buflen
)
...
...
@@ -1015,11 +1035,20 @@ int qemudBuildCommandLine(virConnectPtr conn,
if
(
bootable
&&
disk
->
device
==
VIR_DOMAIN_DISK_DEVICE_DISK
)
virBufferAddLit
(
&
opt
,
",boot=on"
);
if
(
disk
->
shared
&&
!
disk
->
readonly
)
virBufferAddLit
(
&
opt
,
",cache=off"
);
if
(
disk
->
driverType
)
virBufferVSprintf
(
&
opt
,
",fmt=%s"
,
disk
->
driverType
);
if
(
disk
->
cachemode
)
{
const
char
*
mode
=
(
qemuCmdFlags
&
QEMUD_CMD_FLAG_DRIVE_CACHE_V2
)
?
qemuDiskCacheV2TypeToString
(
disk
->
cachemode
)
:
qemuDiskCacheV1TypeToString
(
disk
->
cachemode
);
virBufferVSprintf
(
&
opt
,
",cache=%s"
,
mode
);
}
else
if
(
disk
->
shared
&&
!
disk
->
readonly
)
{
virBufferAddLit
(
&
opt
,
",cache=off"
);
}
if
(
virBufferError
(
&
opt
))
{
virReportOOMError
(
conn
);
goto
error
;
...
...
@@ -1585,4 +1614,3 @@ cleanup:
VIR_FREE
(
xml
);
return
ret
;
}
src/qemu_conf.h
浏览文件 @
67e74161
/*
* config.h: VM configuration management
*
* Copyright (C) 2006, 2007 Red Hat, Inc.
* Copyright (C) 2006, 2007
, 2009
Red Hat, Inc.
* Copyright (C) 2006 Daniel P. Berrange
*
* This library is free software; you can redistribute it and/or
...
...
@@ -53,6 +53,7 @@ enum qemud_cmd_flags {
* since it had a design bug blocking the entire monitor console */
QEMUD_CMD_FLAG_MIGRATE_QEMU_TCP
=
(
1
<<
10
),
/* New migration syntax after merge to QEMU with TCP transport */
QEMUD_CMD_FLAG_MIGRATE_QEMU_EXEC
=
(
1
<<
11
),
/* New migration syntax after merge to QEMU with EXEC transport */
QEMUD_CMD_FLAG_DRIVE_CACHE_V2
=
(
1
<<
12
),
/* Is the cache= flag wanting new v2 values */
};
/* Main driver state */
...
...
tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-none.args
0 → 100644
浏览文件 @
67e74161
LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -monitor pty -pidfile /nowhere/QEMUGuest1.pid -no-acpi -boot c -drive file=/dev/HostVG/QEMUGuest1,if=ide,index=0,fmt=qcow2,cache=off -drive file=/dev/HostVG/QEMUGuest2,if=ide,media=cdrom,index=2,fmt=raw -net none -serial none -parallel none -usb
tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-none.xml
0 → 100644
浏览文件 @
67e74161
<domain
type=
'qemu'
>
<name>
QEMUGuest1
</name>
<uuid>
c7a5fdbd-edaf-9455-926a-d65c16db1809
</uuid>
<memory>
219200
</memory>
<currentMemory>
219200
</currentMemory>
<vcpu>
1
</vcpu>
<os>
<type
arch=
'i686'
machine=
'pc'
>
hvm
</type>
<boot
dev=
'hd'
/>
</os>
<clock
offset=
'utc'
/>
<on_poweroff>
destroy
</on_poweroff>
<on_reboot>
restart
</on_reboot>
<on_crash>
destroy
</on_crash>
<devices>
<emulator>
/usr/bin/qemu
</emulator>
<disk
type=
'block'
device=
'disk'
>
<driver
name=
'qemu'
type=
'qcow2'
cache=
'none'
/>
<source
dev=
'/dev/HostVG/QEMUGuest1'
/>
<target
dev=
'hda'
bus=
'ide'
/>
</disk>
<disk
type=
'block'
device=
'cdrom'
>
<driver
name=
'qemu'
type=
'raw'
/>
<source
dev=
'/dev/HostVG/QEMUGuest2'
/>
<target
dev=
'hdc'
bus=
'ide'
/>
<readonly/>
</disk>
</devices>
</domain>
tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-wb.args
0 → 100644
浏览文件 @
67e74161
LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -monitor pty -pidfile /nowhere/QEMUGuest1.pid -no-acpi -boot c -drive file=/dev/HostVG/QEMUGuest1,if=ide,index=0,fmt=qcow2,cache=on -drive file=/dev/HostVG/QEMUGuest2,if=ide,media=cdrom,index=2,fmt=raw -net none -serial none -parallel none -usb
tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-wb.xml
0 → 100644
浏览文件 @
67e74161
<domain
type=
'qemu'
>
<name>
QEMUGuest1
</name>
<uuid>
c7a5fdbd-edaf-9455-926a-d65c16db1809
</uuid>
<memory>
219200
</memory>
<currentMemory>
219200
</currentMemory>
<vcpu>
1
</vcpu>
<os>
<type
arch=
'i686'
machine=
'pc'
>
hvm
</type>
<boot
dev=
'hd'
/>
</os>
<clock
offset=
'utc'
/>
<on_poweroff>
destroy
</on_poweroff>
<on_reboot>
restart
</on_reboot>
<on_crash>
destroy
</on_crash>
<devices>
<emulator>
/usr/bin/qemu
</emulator>
<disk
type=
'block'
device=
'disk'
>
<driver
name=
'qemu'
type=
'qcow2'
cache=
'writeback'
/>
<source
dev=
'/dev/HostVG/QEMUGuest1'
/>
<target
dev=
'hda'
bus=
'ide'
/>
</disk>
<disk
type=
'block'
device=
'cdrom'
>
<driver
name=
'qemu'
type=
'raw'
/>
<source
dev=
'/dev/HostVG/QEMUGuest2'
/>
<target
dev=
'hdc'
bus=
'ide'
/>
<readonly/>
</disk>
</devices>
</domain>
tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-wt.args
0 → 100644
浏览文件 @
67e74161
LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -monitor pty -pidfile /nowhere/QEMUGuest1.pid -no-acpi -boot c -drive file=/dev/HostVG/QEMUGuest1,if=ide,index=0,fmt=qcow2,cache=off -drive file=/dev/HostVG/QEMUGuest2,if=ide,media=cdrom,index=2,fmt=raw -net none -serial none -parallel none -usb
tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-wt.xml
0 → 100644
浏览文件 @
67e74161
<domain
type=
'qemu'
>
<name>
QEMUGuest1
</name>
<uuid>
c7a5fdbd-edaf-9455-926a-d65c16db1809
</uuid>
<memory>
219200
</memory>
<currentMemory>
219200
</currentMemory>
<vcpu>
1
</vcpu>
<os>
<type
arch=
'i686'
machine=
'pc'
>
hvm
</type>
<boot
dev=
'hd'
/>
</os>
<clock
offset=
'utc'
/>
<on_poweroff>
destroy
</on_poweroff>
<on_reboot>
restart
</on_reboot>
<on_crash>
destroy
</on_crash>
<devices>
<emulator>
/usr/bin/qemu
</emulator>
<disk
type=
'block'
device=
'disk'
>
<driver
name=
'qemu'
type=
'qcow2'
cache=
'writethrough'
/>
<source
dev=
'/dev/HostVG/QEMUGuest1'
/>
<target
dev=
'hda'
bus=
'ide'
/>
</disk>
<disk
type=
'block'
device=
'cdrom'
>
<driver
name=
'qemu'
type=
'raw'
/>
<source
dev=
'/dev/HostVG/QEMUGuest2'
/>
<target
dev=
'hdc'
bus=
'ide'
/>
<readonly/>
</disk>
</devices>
</domain>
tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-none.args
0 → 100644
浏览文件 @
67e74161
LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -monitor pty -pidfile /nowhere/QEMUGuest1.pid -no-acpi -boot c -drive file=/dev/HostVG/QEMUGuest1,if=ide,index=0,fmt=qcow2,cache=none -drive file=/dev/HostVG/QEMUGuest2,if=ide,media=cdrom,index=2,fmt=raw -net none -serial none -parallel none -usb
tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-none.xml
0 → 100644
浏览文件 @
67e74161
<domain
type=
'qemu'
>
<name>
QEMUGuest1
</name>
<uuid>
c7a5fdbd-edaf-9455-926a-d65c16db1809
</uuid>
<memory>
219200
</memory>
<currentMemory>
219200
</currentMemory>
<vcpu>
1
</vcpu>
<os>
<type
arch=
'i686'
machine=
'pc'
>
hvm
</type>
<boot
dev=
'hd'
/>
</os>
<clock
offset=
'utc'
/>
<on_poweroff>
destroy
</on_poweroff>
<on_reboot>
restart
</on_reboot>
<on_crash>
destroy
</on_crash>
<devices>
<emulator>
/usr/bin/qemu
</emulator>
<disk
type=
'block'
device=
'disk'
>
<driver
name=
'qemu'
type=
'qcow2'
cache=
'none'
/>
<source
dev=
'/dev/HostVG/QEMUGuest1'
/>
<target
dev=
'hda'
bus=
'ide'
/>
</disk>
<disk
type=
'block'
device=
'cdrom'
>
<driver
name=
'qemu'
type=
'raw'
/>
<source
dev=
'/dev/HostVG/QEMUGuest2'
/>
<target
dev=
'hdc'
bus=
'ide'
/>
<readonly/>
</disk>
</devices>
</domain>
tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-wb.args
0 → 100644
浏览文件 @
67e74161
LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -monitor pty -pidfile /nowhere/QEMUGuest1.pid -no-acpi -boot c -drive file=/dev/HostVG/QEMUGuest1,if=ide,index=0,fmt=qcow2,cache=writeback -drive file=/dev/HostVG/QEMUGuest2,if=ide,media=cdrom,index=2,fmt=raw -net none -serial none -parallel none -usb
tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-wb.xml
0 → 100644
浏览文件 @
67e74161
<domain
type=
'qemu'
>
<name>
QEMUGuest1
</name>
<uuid>
c7a5fdbd-edaf-9455-926a-d65c16db1809
</uuid>
<memory>
219200
</memory>
<currentMemory>
219200
</currentMemory>
<vcpu>
1
</vcpu>
<os>
<type
arch=
'i686'
machine=
'pc'
>
hvm
</type>
<boot
dev=
'hd'
/>
</os>
<clock
offset=
'utc'
/>
<on_poweroff>
destroy
</on_poweroff>
<on_reboot>
restart
</on_reboot>
<on_crash>
destroy
</on_crash>
<devices>
<emulator>
/usr/bin/qemu
</emulator>
<disk
type=
'block'
device=
'disk'
>
<driver
name=
'qemu'
type=
'qcow2'
cache=
'writeback'
/>
<source
dev=
'/dev/HostVG/QEMUGuest1'
/>
<target
dev=
'hda'
bus=
'ide'
/>
</disk>
<disk
type=
'block'
device=
'cdrom'
>
<driver
name=
'qemu'
type=
'raw'
/>
<source
dev=
'/dev/HostVG/QEMUGuest2'
/>
<target
dev=
'hdc'
bus=
'ide'
/>
<readonly/>
</disk>
</devices>
</domain>
tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-wt.args
0 → 100644
浏览文件 @
67e74161
LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -monitor pty -pidfile /nowhere/QEMUGuest1.pid -no-acpi -boot c -drive file=/dev/HostVG/QEMUGuest1,if=ide,index=0,fmt=qcow2,cache=writethrough -drive file=/dev/HostVG/QEMUGuest2,if=ide,media=cdrom,index=2,fmt=raw -net none -serial none -parallel none -usb
tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-wt.xml
0 → 100644
浏览文件 @
67e74161
<domain
type=
'qemu'
>
<name>
QEMUGuest1
</name>
<uuid>
c7a5fdbd-edaf-9455-926a-d65c16db1809
</uuid>
<memory>
219200
</memory>
<currentMemory>
219200
</currentMemory>
<vcpu>
1
</vcpu>
<os>
<type
arch=
'i686'
machine=
'pc'
>
hvm
</type>
<boot
dev=
'hd'
/>
</os>
<clock
offset=
'utc'
/>
<on_poweroff>
destroy
</on_poweroff>
<on_reboot>
restart
</on_reboot>
<on_crash>
destroy
</on_crash>
<devices>
<emulator>
/usr/bin/qemu
</emulator>
<disk
type=
'block'
device=
'disk'
>
<driver
name=
'qemu'
type=
'qcow2'
cache=
'writethrough'
/>
<source
dev=
'/dev/HostVG/QEMUGuest1'
/>
<target
dev=
'hda'
bus=
'ide'
/>
</disk>
<disk
type=
'block'
device=
'cdrom'
>
<driver
name=
'qemu'
type=
'raw'
/>
<source
dev=
'/dev/HostVG/QEMUGuest2'
/>
<target
dev=
'hdc'
bus=
'ide'
/>
<readonly/>
</disk>
</devices>
</domain>
tests/qemuxml2argvtest.c
浏览文件 @
67e74161
...
...
@@ -201,6 +201,16 @@ mymain(int argc, char **argv)
QEMUD_CMD_FLAG_DRIVE_BOOT
);
DO_TEST
(
"disk-drive-fmt-qcow"
,
QEMUD_CMD_FLAG_DRIVE
|
QEMUD_CMD_FLAG_DRIVE_BOOT
);
DO_TEST
(
"disk-drive-shared"
,
QEMUD_CMD_FLAG_DRIVE
);
DO_TEST
(
"disk-drive-cache-v1-wt"
,
QEMUD_CMD_FLAG_DRIVE
);
DO_TEST
(
"disk-drive-cache-v1-wb"
,
QEMUD_CMD_FLAG_DRIVE
);
DO_TEST
(
"disk-drive-cache-v1-none"
,
QEMUD_CMD_FLAG_DRIVE
);
DO_TEST
(
"disk-drive-cache-v2-wt"
,
QEMUD_CMD_FLAG_DRIVE
|
QEMUD_CMD_FLAG_DRIVE_CACHE_V2
);
DO_TEST
(
"disk-drive-cache-v2-wb"
,
QEMUD_CMD_FLAG_DRIVE
|
QEMUD_CMD_FLAG_DRIVE_CACHE_V2
);
DO_TEST
(
"disk-drive-cache-v2-none"
,
QEMUD_CMD_FLAG_DRIVE
|
QEMUD_CMD_FLAG_DRIVE_CACHE_V2
);
DO_TEST
(
"disk-usb"
,
0
);
DO_TEST
(
"graphics-vnc"
,
0
);
DO_TEST
(
"graphics-sdl"
,
0
);
...
...
tests/qemuxml2xmltest.c
浏览文件 @
67e74161
...
...
@@ -98,6 +98,9 @@ mymain(int argc, char **argv)
DO_TEST
(
"disk-xenvbd"
);
DO_TEST
(
"disk-usb"
);
DO_TEST
(
"disk-drive-fmt-qcow"
);
DO_TEST
(
"disk-drive-cache-v1-wt"
);
DO_TEST
(
"disk-drive-cache-v1-wb"
);
DO_TEST
(
"disk-drive-cache-v1-none"
);
DO_TEST
(
"graphics-vnc"
);
DO_TEST
(
"graphics-sdl"
);
DO_TEST
(
"graphics-sdl-fullscreen"
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录