[Libvirt] Proposal to add 3 functions for VBDs (Virtual Block Devices)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
- Subject: [Libvirt] Proposal to add 3 functions for VBDs (Virtual Block Devices)
- From: michel.ponceau@xxxxxxxx
- Date: Thu, 24 Aug 2006 17:32:19 +0200
- Sensitivity:
After the new VCPU functions, we also need Virtual Block Device management equivalent to Xen commands:
'xm block-list', 'xm block-attach', 'xm block-detach'.
I propose to add in Libvirt the following 3 functions:
/**
* virDomainGetVbdevs:
* @domain: pointer to domain object, or NULL for Domain0
* @info: pointer to an array of virVbdevInfo structures
* @maxinfo: number of structures in info array
*
* Extract information about virtual block devices of domain, store it in info.
*
* Returns the number of info filled in case of success, -1 in case of failure.
*/
int virDomainGetVbdevs(virDomainPtr domain, virVbdevInfoPtr info, int maxinfo)
/**
* virDomainCreateVbdev:
* @domain: pointer to domain object, or NULL for Domain0
* @number: virtual device number
* @mode: read-only (VIR_VBDMD_RO), or read/write (VIR_VBDMD_RW)
* @bkendID: ID of domain hosting the backend device (usually 0 for domain0)
* @bkend: pointer to backend device path
*
* Create a virtual block device.
*
* Returns 0 in case of success, -1 in case of failure.
*/
int virDomainCreateVbdev(virDomainPtr domain, unsigned int number, int mode,
int bkendID, char *bkend)
/**
* virDomainDestroyVbdev:
* @domain: pointer to domain object, or NULL for Domain0
* @number: virtual device number
*
* Destroy a virtual block device.
*
* Returns 0 in case of success, -1 in case of failure.
*/
int virDomainDestroyVbdev(virDomainPtr domain, unsigned int number)
Structure in libvirt.h:
/**
* virVbdevInfo: information structure for a Virtual Block Device in a domain
*/
typedef struct _virVbdevInfo virVbdevInfo;
struct _virVbdevInfo {
unsigned int number; /* virtual device number */
int state;
int evtChn;
int ringRef;
int bkendID; /* ID of domain hosting the backend device */
char bkend[128];
};
typedef virVbdevInfo *virVbdevInfoPtr;
/* Virtual Block Device access modes: read-only or read/write */
#define VIR_VBDMD_RO 0
#define VIR_VBDMD_RW 1
[Index of Archives]
[Virt Tools]
[Libvirt Users]
[Lib OS Info]
[Fedora Users]
[Fedora Desktop]
[Fedora SELinux]
[Big List of Linux Books]
[Yosemite News]
[KDE Users]
[Fedora Tools]