Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
libvirt
提交
52888813
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看板
体验新版 GitCode,发现更多精彩内容 >>
提交
52888813
编写于
11月 10, 2010
作者:
M
Matthias Bolte
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
esx: Support SMBIOS host mode
上级
45dc5a14
变更
7
显示空白变更内容
内联
并排
Showing
7 changed file
with
69 addition
and
1 deletion
+69
-1
src/esx/esx_vmx.c
src/esx/esx_vmx.c
+26
-1
tests/vmx2xmldata/vmx2xml-smbios.vmx
tests/vmx2xmldata/vmx2xml-smbios.vmx
+3
-0
tests/vmx2xmldata/vmx2xml-smbios.xml
tests/vmx2xmldata/vmx2xml-smbios.xml
+16
-0
tests/vmx2xmltest.c
tests/vmx2xmltest.c
+2
-0
tests/xml2vmxdata/xml2vmx-smbios.vmx
tests/xml2vmxdata/xml2vmx-smbios.vmx
+11
-0
tests/xml2vmxdata/xml2vmx-smbios.xml
tests/xml2vmxdata/xml2vmx-smbios.xml
+9
-0
tests/xml2vmxtest.c
tests/xml2vmxtest.c
+2
-0
未找到文件。
src/esx/esx_vmx.c
浏览文件 @
52888813
...
...
@@ -74,6 +74,7 @@ def->os
->loader
->bootloader
->bootloaderArgs
->smbios_mode <=> smbios.reflecthost = "<value>" # <value> == true means SMBIOS_HOST, otherwise it's SMBIOS_EMULATE, defaults to "false"
...
...
@@ -880,6 +881,7 @@ esxVMX_ParseConfig(esxVMX_Context *ctx, virCapsPtr caps, const char *vmx,
long
long
numvcpus
=
0
;
char
*
sched_cpu_affinity
=
NULL
;
char
*
guestOS
=
NULL
;
bool
smbios_reflecthost
=
false
;
int
controller
;
int
bus
;
int
port
;
...
...
@@ -1195,6 +1197,16 @@ esxVMX_ParseConfig(esxVMX_Context *ctx, virCapsPtr caps, const char *vmx,
goto
cleanup
;
}
/* vmx:smbios.reflecthost -> def:os.smbios_mode */
if
(
esxUtil_GetConfigBoolean
(
conf
,
"smbios.reflecthost"
,
&
smbios_reflecthost
,
false
,
true
)
<
0
)
{
goto
cleanup
;
}
if
(
smbios_reflecthost
)
{
def
->
os
.
smbios_mode
=
VIR_DOMAIN_SMBIOS_HOST
;
}
/* def:features */
/* FIXME */
...
...
@@ -2552,7 +2564,7 @@ esxVMX_FormatConfig(esxVMX_Context *ctx, virCapsPtr caps, virDomainDefPtr def,
goto
cleanup
;
}
/* def:arch -> vmx:guestOS */
/* def:
os.
arch -> vmx:guestOS */
if
(
def
->
os
.
arch
==
NULL
||
STRCASEEQ
(
def
->
os
.
arch
,
"i686"
))
{
virBufferAddLit
(
&
buffer
,
"guestOS =
\"
other
\"\n
"
);
}
else
if
(
STRCASEEQ
(
def
->
os
.
arch
,
"x86_64"
))
{
...
...
@@ -2564,6 +2576,19 @@ esxVMX_FormatConfig(esxVMX_Context *ctx, virCapsPtr caps, virDomainDefPtr def,
goto
cleanup
;
}
/* def:os.smbios_mode -> vmx:smbios.reflecthost */
if
(
def
->
os
.
smbios_mode
==
VIR_DOMAIN_SMBIOS_NONE
||
def
->
os
.
smbios_mode
==
VIR_DOMAIN_SMBIOS_EMULATE
)
{
/* nothing */
}
else
if
(
def
->
os
.
smbios_mode
==
VIR_DOMAIN_SMBIOS_HOST
)
{
virBufferAddLit
(
&
buffer
,
"smbios.reflecthost =
\"
true
\"\n
"
);
}
else
{
ESX_ERROR
(
VIR_ERR_CONFIG_UNSUPPORTED
,
_
(
"Unsupported SMBIOS mode '%s'"
),
virDomainSmbiosModeTypeToString
(
def
->
os
.
smbios_mode
));
goto
cleanup
;
}
/* def:uuid -> vmx:uuid.action, vmx:uuid.bios */
if
(
memcmp
(
def
->
uuid
,
zero
,
VIR_UUID_BUFLEN
)
==
0
)
{
virBufferAddLit
(
&
buffer
,
"uuid.action =
\"
create
\"\n
"
);
...
...
tests/vmx2xmldata/vmx2xml-smbios.vmx
0 → 100644
浏览文件 @
52888813
config.version = "8"
virtualHW.version = "4"
smbios.reflecthost = "true"
tests/vmx2xmldata/vmx2xml-smbios.xml
0 → 100644
浏览文件 @
52888813
<domain
type=
'vmware'
>
<uuid>
00000000-0000-0000-0000-000000000000
</uuid>
<memory>
32768
</memory>
<currentMemory>
32768
</currentMemory>
<vcpu>
1
</vcpu>
<os>
<type
arch=
'i686'
>
hvm
</type>
<smbios
mode=
'host'
/>
</os>
<clock
offset=
'utc'
/>
<on_poweroff>
destroy
</on_poweroff>
<on_reboot>
restart
</on_reboot>
<on_crash>
destroy
</on_crash>
<devices>
</devices>
</domain>
tests/vmx2xmltest.c
浏览文件 @
52888813
...
...
@@ -285,6 +285,8 @@ mymain(int argc, char **argv)
DO_TEST
(
"annotation"
,
"annotation"
,
esxVI_ProductVersion_ESX35
);
DO_TEST
(
"smbios"
,
"smbios"
,
esxVI_ProductVersion_ESX35
);
virCapabilitiesFree
(
caps
);
return
result
==
0
?
EXIT_SUCCESS
:
EXIT_FAILURE
;
...
...
tests/xml2vmxdata/xml2vmx-smbios.vmx
0 → 100644
浏览文件 @
52888813
.encoding = "UTF-8"
config.version = "8"
virtualHW.version = "4"
guestOS = "other"
smbios.reflecthost = "true"
uuid.bios = "56 4d 9b ef ac d9 b4 e0-c8 f0 ae a8 b9 10 35 15"
displayName = "smbios"
memsize = "4"
numvcpus = "1"
floppy0.present = "false"
floppy1.present = "false"
tests/xml2vmxdata/xml2vmx-smbios.xml
0 → 100644
浏览文件 @
52888813
<domain
type=
'vmware'
>
<name>
smbios
</name>
<uuid>
564d9bef-acd9-b4e0-c8f0-aea8b9103515
</uuid>
<memory>
4096
</memory>
<os>
<type>
hvm
</type>
<smbios
mode=
'host'
/>
</os>
</domain>
tests/xml2vmxtest.c
浏览文件 @
52888813
...
...
@@ -278,6 +278,8 @@ mymain(int argc, char **argv)
DO_TEST
(
"annotation"
,
"annotation"
,
esxVI_ProductVersion_ESX35
);
DO_TEST
(
"smbios"
,
"smbios"
,
esxVI_ProductVersion_ESX35
);
virCapabilitiesFree
(
caps
);
return
result
==
0
?
EXIT_SUCCESS
:
EXIT_FAILURE
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录