Bug 1310458 - Ovirt 3.6 uses hotplug memory independant of machine type
Summary: Ovirt 3.6 uses hotplug memory independant of machine type
Keywords:
Status: CLOSED NEXTRELEASE
Alias: None
Product: ovirt-engine
Classification: oVirt
Component: Backend.Core
Version: 3.6.2
Hardware: Unspecified
OS: Unspecified
unspecified
medium vote
Target Milestone: ---
: ---
Assignee: Nobody
QA Contact: meital avital
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-02-21 19:50 UTC by Markus Stockhausen
Modified: 2016-03-23 12:27 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2016-03-23 12:27:59 UTC
oVirt Team: Virt
rule-engine: planning_ack?
rule-engine: devel_ack?
rule-engine: testing_ack?


Attachments (Terms of Use)

Description Markus Stockhausen 2016-02-21 19:50:56 UTC
Description of problem:

Ovirt must not use hotplug memory for older machine types. Otherwise startup will fail with messages like qemu-kvm: "-memory 'slots|maxmem'" is not supported by: pc-1.0

Version-Release number of selected component (if applicable):

Ovirt 3.6.2

How reproducible:

100%

Steps to Reproduce:
1. use ovirt 3.6 with cluster level 3.6
2. define VM and use older machine type e.g. rhel6.5.0 or pc-1.0
3. try to start vm

Actual results:

qemu fails to start.

Expected results:

qemu should start.

Additional info:

Bad XML for libvirt
<?xml ...>
        <name>colvm370</name>
        <uuid>023c978c-63b0-4960-958b-33455b7886c1</uuid>
        <memory>2097152</memory>
        <currentMemory>2097152</currentMemory>
        <maxMemory slots="16">4294967296</maxMemory> <--- DOES NOT WORK
        <vcpu current="2">32</vcpu>
...
        <os>
                <type arch="x86_64" machine="pc-1.0">hvm</type>
                <smbios mode="sysinfo"/>
        </os>

Comment 1 Markus Stockhausen 2016-02-21 20:12:56 UTC
Explanation of use case: 

http://lists.ovirt.org/pipermail/users/2016-February/038069.html

Comment 2 Michal Skrivanek 2016-02-22 05:59:07 UTC
Not all the combinations of old machine type and a current cluster level make sense. Hotplug is a cluster level feature, enabled in 3.6. It does not "check" the machine type

If you don't want to have hotplug enabled you either disable it globally for 3.6 cluster level or use 3.5 compatibility level for a particular VM

Comment 3 Markus Stockhausen 2016-02-22 06:24:17 UTC
Thanks for pointing that out. I was searching for such an option but did not find anything in WebUI. Maybe I'm missing something but

- how/where can I disable memory hotplug for a 3.6 cluster?

- or how/where can I enforce 3.5 compatibility for a single VM in a 3.6 cluster?

Comment 4 Michal Skrivanek 2016-02-22 06:39:15 UTC
(In reply to Markus Stockhausen from comment #3)
> Thanks for pointing that out. I was searching for such an option but did not
> find anything in WebUI. Maybe I'm missing something but
> 
> - how/where can I disable memory hotplug for a 3.6 cluster?

Via engine-config HotPlugMemorySupported parameter

> - or how/where can I enforce 3.5 compatibility for a single VM in a 3.6
> cluster?

This will only be possible in 4.0. You need to use a 3.5 cluster for now, and even in 4.0 there will likely be some exceptions

To your email - machine type describes all the "hw" of the virtual machine, related features, and also what is being tested. If the one from 3.6 doesn't work for you for any reason you have to keep at the older cluster level. Cluster defines the behavior for many features. In 3.6 hotplug ram is the only one which fails right away when using old machine, but it won't work reliably anyway even when you disable it. YMMV

Comment 5 Michal Skrivanek 2016-03-23 12:27:59 UTC
let's see how it behaves in 4.0


Note You need to log in before you can comment on or make changes to this bug.