mirror of
https://github.com/projectacrn/acrn-hypervisor.git
synced 2026-06-08 18:14:53 +00:00
tools: acrnctl: Use new IPC lib to connect acrn-dm
this patch aim at
1. Use new IPC lib to connect acrn-dm.
2. Export list_vm, start_vm and stop_vm and acrnd will use them later.
3. Rename vmm releated struct and function
Signed-off-by: Kaige Fu <kaige.fu@intel.com>
Reviewed-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Reviewed-by: Yan, Like <like.yan@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
This commit is contained in:
58
tools/acrn-manager/acrnctl.h
Normal file
58
tools/acrn-manager/acrnctl.h
Normal file
@@ -0,0 +1,58 @@
|
||||
/**
|
||||
* Copyright (C) 2018 Intel Corporation
|
||||
* SPDX-License-Identifier: BSD-3-Clause
|
||||
*/
|
||||
|
||||
#ifndef _ACRNCTL_H_
|
||||
#define _ACRNCTL_H_
|
||||
|
||||
#include <sys/queue.h>
|
||||
|
||||
#define ACRNCTL_OPT_ROOT "/opt/acrn/conf"
|
||||
#define ACRN_DM_SOCK_ROOT "/run/acrn/mngr"
|
||||
|
||||
#define MAX_NAME_LEN (16)
|
||||
|
||||
enum vm_state {
|
||||
VM_STATE_UNKNOWN = 0,
|
||||
VM_CREATED, /* VM created / awaiting start (boot) */
|
||||
VM_STARTED, /* VM started (booted) */
|
||||
VM_PAUSED, /* VM paused */
|
||||
VM_UNTRACKED, /* VM not created by acrnctl, or its launch script can change vm name */
|
||||
};
|
||||
|
||||
static const char *state_str[] = {
|
||||
[VM_STATE_UNKNOWN] = "unknown",
|
||||
[VM_CREATED] = "stopped",
|
||||
[VM_STARTED] = "started",
|
||||
[VM_PAUSED] = "paused",
|
||||
[VM_UNTRACKED] = "untracked",
|
||||
};
|
||||
|
||||
/**
|
||||
* @brief search all vm and store it in vmmngr_head
|
||||
*/
|
||||
void get_vm_list(void);
|
||||
|
||||
/**
|
||||
* @brief search vm indentified by vm from vmmngr_head
|
||||
*
|
||||
* @return vmmngr_struct * if find, NULL not find
|
||||
*/
|
||||
struct vmmngr_struct *vmmngr_find(char *vmname);
|
||||
|
||||
/* Per-vm vm managerment struct */
|
||||
struct vmmngr_struct {
|
||||
char name[MAX_NAME_LEN];
|
||||
unsigned long state;
|
||||
LIST_ENTRY(vmmngr_struct) list;
|
||||
};
|
||||
|
||||
int shell_cmd(const char *cmd, char *outbuf, int len);
|
||||
|
||||
/* vm life cycle ops */
|
||||
int list_vm(void);
|
||||
int stop_vm(char *vmname);
|
||||
int start_vm(char *vmname);
|
||||
|
||||
#endif /* _ACRNCTL_H_ */
|
||||
Reference in New Issue
Block a user