[libvirt] [PATCHv5 2/2] qemu: Disk Geometry Override Support
Viktor Mihajlovski
mihajlov at linux.vnet.ibm.com
Mon Aug 20 13:58:30 UTC 2012
On 08/20/2012 02:06 PM, Daniel P. Berrange wrote:
> On Mon, Aug 20, 2012 at 01:58:25PM +0200, Viktor Mihajlovski wrote:
>> From: J.B. Joret <jb at linux.vnet.ibm.com>
>>
>> Qemu command line generation for geometry override and testcases.
>>
>> V2 Changes: squashed qemu code and testcases.
>>
>> V3 Changes: use virReportError.
>>
>> V4 Changes: rebase
>>
>> V5 Changes: Fixed test invocation for geometry.
>>
>> Signed-off-by: J.B. Joret <jb at linux.vnet.ibm.com>
>> Signed-off-by: Viktor Mihajlovski <mihajlov at linux.vnet.ibm.com>
>>
>> Signed-off-by: Viktor Mihajlovski <mihajlov at linux.vnet.ibm.com>
>> ---
>> src/qemu/qemu_command.c | 59 ++++++++++++++++++++
>> .../qemuxml2argv-disk-geometry.args | 4 +
>> .../qemuxml2argv-disk-geometry.xml | 26 +++++++++
>> tests/qemuxml2argvtest.c | 2 +
>> 4 files changed, 91 insertions(+), 0 deletions(-)
>> create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-disk-geometry.args
>> create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-disk-geometry.xml
>>
>> diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
>> index 9383530..cc44015 100644
>> --- a/src/qemu/qemu_command.c
>> +++ b/src/qemu/qemu_command.c
>> @@ -2073,6 +2073,8 @@ qemuBuildDriveStr(virConnectPtr conn ATTRIBUTE_UNUSED,
>> {
>> virBuffer opt = VIR_BUFFER_INITIALIZER;
>> const char *bus = virDomainDiskQEMUBusTypeToString(disk->bus);
>> + const char *trans =
>> + virDomainDiskGeometryTransTypeToString(disk->geometry.trans);
>> int idx = virDiskNameToIndex(disk->dst);
>> int busid = -1, unitid = -1;
>>
>> @@ -2275,6 +2277,24 @@ qemuBuildDriveStr(virConnectPtr conn ATTRIBUTE_UNUSED,
>> disk->type != VIR_DOMAIN_DISK_TYPE_DIR &&
>> qemuCapsGet(qemuCaps, QEMU_CAPS_DRIVE_FORMAT))
>> virBufferAsprintf(&opt, ",format=%s", disk->driverType);
>> +
>> + /* generate geometry command string*/
>> + if (disk->type == VIR_DOMAIN_DISK_TYPE_BLOCK ||
>> + disk->type == VIR_DOMAIN_DISK_TYPE_FILE) {
>
> The cylinders/heads/sectors data is part of the guest side device
> model. The disk->type == block|file|network is part of the host
> side device model. IIUC, there should be no dependency between host
> and guest side data for this property, so IMHO this if() should be
> removed.
>
>
good catch. As the same suppression happens in domain_conf.c, I will
resend the series.
--
Mit freundlichen Grüßen/Kind Regards
Viktor Mihajlovski
IBM Deutschland Research & Development GmbH
Vorsitzender des Aufsichtsrats: Martin Jetter
Geschäftsführung: Dirk Wittkopp
Sitz der Gesellschaft: Böblingen
Registergericht: Amtsgericht Stuttgart, HRB 243294
More information about the libvir-list
mailing list