Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
libvirt
提交
5196e6ca
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,发现更多精彩内容 >>
提交
5196e6ca
编写于
9月 03, 2007
作者:
D
Daniel Veillard
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
* src/openvz_conf.c src/openvz_conf.h src/openvz_driver.c: a bit
of cleanup on top of previous patches. Daniel
上级
b36902c3
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
51 addition
and
21 deletion
+51
-21
ChangeLog
ChangeLog
+5
-0
src/openvz_conf.c
src/openvz_conf.c
+33
-14
src/openvz_conf.h
src/openvz_conf.h
+1
-1
src/openvz_driver.c
src/openvz_driver.c
+12
-6
未找到文件。
ChangeLog
浏览文件 @
5196e6ca
Mon Sep 3 18:29:05 CEST 2007 Daniel Veillard <veillard@redhat.com>
* src/openvz_conf.c src/openvz_conf.h src/openvz_driver.c: a bit
of cleanup on top of previous patches.
Mon Sep 3 17:35:15 CEST 2007 Daniel Veillard <veillard@redhat.com>
* src/openvz_conf.c src/openvz_conf.h src/openvz_driver.c
...
...
src/openvz_conf.c
浏览文件 @
5196e6ca
...
...
@@ -59,9 +59,6 @@ static void error (virConnectPtr conn, virErrorNumber code, const char *info);
static
struct
openvz_vm_def
*
openvzParseXML
(
virConnectPtr
conn
,
xmlDocPtr
xml
);
static
int
openvzGetVPSUUID
(
int
vpsid
,
char
*
uuidstr
);
static
int
openvzSetUUID
(
int
vpsid
);
static
struct
openvz_vm
*
openvzLoadConfig
(
struct
openvz_driver
*
driver
,
const
char
*
path
,
const
char
*
xmlStr
);
/* For errors internal to this library. */
static
void
...
...
@@ -117,7 +114,7 @@ struct openvz_vm
}
int
strtoI
(
char
*
str
)
strtoI
(
c
onst
c
har
*
str
)
{
int
base
=
10
;
char
*
endptr
;
...
...
@@ -340,7 +337,7 @@ static struct openvz_vm_def
}
/* rejecting VPS ID <= OPENVZ_RSRV_VM_LIMIT for they are reserved */
if
(
strtoI
(
BAD_CAST
obj
->
stringval
)
<=
OPENVZ_RSRV_VM_LIMIT
)
{
if
(
strtoI
(
(
const
char
*
)
obj
->
stringval
)
<=
OPENVZ_RSRV_VM_LIMIT
)
{
error
(
conn
,
VIR_ERR_INTERNAL_ERROR
,
"VPS ID Error (must be an integer greater than 100"
);
goto
bail_out
;
...
...
@@ -531,13 +528,18 @@ openvzGetVPSInfo(virConnectPtr conn) {
*
pnext
=
calloc
(
1
,
sizeof
(
struct
openvz_vm
));
if
(
!*
pnext
)
{
error
(
conn
,
VIR_ERR_INTERNAL_ERROR
,
"calloc failed"
);
return
NULL
;
goto
error
;
}
if
(
!
vm
)
vm
=
*
pnext
;
fscanf
(
fp
,
"%d %s
\n
"
,
&
veid
,
status
);
if
(
fscanf
(
fp
,
"%d %s
\n
"
,
&
veid
,
status
)
!=
2
)
{
error
(
conn
,
VIR_ERR_INTERNAL_ERROR
,
"Failed to parse vzlist output"
);
free
(
*
pnext
);
goto
error
;
}
if
(
strcmp
(
status
,
"stopped"
))
{
(
*
pnext
)
->
status
=
VIR_DOMAIN_RUNNING
;
driver
->
num_active
++
;
...
...
@@ -546,14 +548,18 @@ openvzGetVPSInfo(virConnectPtr conn) {
else
{
(
*
pnext
)
->
status
=
VIR_DOMAIN_SHUTOFF
;
driver
->
num_inactive
++
;
(
*
pnext
)
->
vpsid
=
-
1
;
/* inactive domains don't have their ID set in libvirt,
thought this doesn't make sense for OpenVZ */
/*
* inactive domains don't have their ID set in libvirt,
* thought this doesn't make sense for OpenVZ
*/
(
*
pnext
)
->
vpsid
=
-
1
;
}
vmdef
=
calloc
(
1
,
sizeof
(
struct
openvz_vm_def
));
if
(
!
vmdef
)
{
error
(
conn
,
VIR_ERR_INTERNAL_ERROR
,
"calloc failed"
);
return
NULL
;
free
(
*
pnext
);
goto
error
;
}
snprintf
(
vmdef
->
name
,
OPENVZ_NAME_MAX
,
"%i"
,
veid
);
...
...
@@ -561,14 +567,27 @@ openvzGetVPSInfo(virConnectPtr conn) {
ret
=
virUUIDParse
(
uuidstr
,
vmdef
->
uuid
);
if
(
ret
==
-
1
)
{
error
(
conn
,
VIR_ERR_INTERNAL_ERROR
,
"UUID in config file malformed"
);
return
NULL
;
error
(
conn
,
VIR_ERR_INTERNAL_ERROR
,
"UUID in config file malformed"
);
free
(
*
pnext
);
free
(
vmdef
);
goto
error
;
}
(
*
pnext
)
->
vmdef
=
vmdef
;
pnext
=
&
(
*
pnext
)
->
next
;
}
return
vm
;
error:
while
(
vm
!=
NULL
)
{
struct
openvz_vm
*
next
;
next
=
vm
->
next
;
free
(
vm
->
vmdef
);
free
(
vm
);
vm
=
next
;
}
return
NULL
;
}
static
char
...
...
@@ -579,7 +598,7 @@ static char
while
(
conf_dir_list
[
i
])
{
if
(
!
access
(
conf_dir_list
[
i
],
F_OK
))
return
strdup
(
conf_dir_list
[
i
]);
return
strdup
(
conf_dir_list
[
i
]);
i
++
;
}
...
...
@@ -660,7 +679,7 @@ openvzSetUUID(int vpsid)
char
uuidstr
[
VIR_UUID_STRING_BUFLEN
];
unsigned
char
uuid
[
VIR_UUID_BUFLEN
];
char
*
conf_dir
;
int
fd
,
ret
,
i
;
int
fd
,
ret
;
conf_dir
=
openvzLocateConfDir
();
sprintf
(
conf_file
,
"%s/%d.conf"
,
conf_dir
,
vpsid
);
...
...
src/openvz_conf.h
浏览文件 @
5196e6ca
...
...
@@ -129,5 +129,5 @@ void openvzRemoveInactiveVM(struct openvz_driver *driver, struct openvz_vm *vm);
void
openvzFreeDriver
(
struct
openvz_driver
*
driver
);
void
openvzFreeVM
(
struct
openvz_driver
*
driver
,
struct
openvz_vm
*
vm
,
int
checkCallee
);
void
openvzFreeVMDef
(
struct
openvz_vm_def
*
def
);
int
strtoI
(
char
*
str
);
int
strtoI
(
c
onst
c
har
*
str
);
#endif
/* OPENVZ_CONF_H */
src/openvz_driver.c
浏览文件 @
5196e6ca
...
...
@@ -164,7 +164,7 @@ static virDomainPtr openvzDomainLookupByID(virConnectPtr conn,
return
dom
;
}
static
char
*
openvzGetOSType
(
virDomainPtr
dom
)
static
char
*
openvzGetOSType
(
virDomainPtr
dom
ATTRIBUTE_UNUSED
)
{
/* OpenVZ runs on Linux and runs only Linux */
return
strdup
(
"linux"
);
...
...
@@ -275,7 +275,8 @@ bail_out:
return
ret
;
}
static
int
openvzDomainReboot
(
virDomainPtr
dom
,
unsigned
int
flags
)
{
static
int
openvzDomainReboot
(
virDomainPtr
dom
,
unsigned
int
flags
ATTRIBUTE_UNUSED
)
{
char
cmdbuf
[
CMDBUF_LEN
];
int
ret
;
char
*
cmdExec
[
OPENVZ_MAX_ARG
];
...
...
@@ -631,7 +632,7 @@ static int openvzListDomains(virConnectPtr conn, int *ids, int nids) {
return
got
;
}
static
int
openvzNumDomains
(
virConnectPtr
conn
)
{
static
int
openvzNumDomains
(
virConnectPtr
conn
ATTRIBUTE_UNUSED
)
{
return
ovz_driver
.
num_active
;
}
...
...
@@ -662,7 +663,7 @@ static int openvzListDefinedDomains(virConnectPtr conn,
return
got
;
}
static
int
openvzNumDefinedDomains
(
virConnectPtr
conn
)
{
static
int
openvzNumDefinedDomains
(
virConnectPtr
conn
ATTRIBUTE_UNUSED
)
{
return
ovz_driver
.
num_inactive
;
}
...
...
@@ -687,11 +688,11 @@ static int openvzActive(void) {
return
1
;
}
static
int
openvzCloseNetwork
(
virConnectPtr
conn
)
{
static
int
openvzCloseNetwork
(
virConnectPtr
conn
ATTRIBUTE_UNUSED
)
{
return
0
;
}
static
virDrvOpenStatus
openvzOpenNetwork
(
virConnectPtr
conn
,
static
virDrvOpenStatus
openvzOpenNetwork
(
virConnectPtr
conn
ATTRIBUTE_UNUSED
,
const
char
*
name
ATTRIBUTE_UNUSED
,
int
flags
ATTRIBUTE_UNUSED
)
{
return
VIR_DRV_OPEN_SUCCESS
;
...
...
@@ -747,6 +748,11 @@ static virDriver openvzDriver = {
NULL
,
/* domainGetSchedulerType */
NULL
,
/* domainGetSchedulerParameters */
NULL
,
/* domainSetSchedulerParameters */
NULL
,
/* domainMigratePrepare */
NULL
,
/* domainMigratePerform */
NULL
,
/* domainMigrateFinish */
NULL
,
/* domainBlockStats */
NULL
,
/* domainInterfaceStats */
};
static
virNetworkDriver
openvzNetworkDriver
=
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录