[Kimchi-devel] [PATCH] Setting default memory of PPC to 2048
Daniel Henrique Barboza
dhbarboza82 at gmail.com
Thu Aug 6 16:54:24 UTC 2015
On 08/06/2015 10:38 AM, Aline Manera wrote:
>
>
> On 31/07/2015 15:00, dhbarboza82 at gmail.com wrote:
>> From: Daniel Henrique Barboza <dhbarboza82 at gmail.com>
>>
>> At this moment Kimchi for Power systems does not support guests
>> created with less that 2Gb of RAM. This patch set the default
>> Power template to reflect it.
>>
>> Any user defined setting in template.conf will overwrite this
>> default. This is intended. The user must have the final
>> word in the customization of his/her VM templates.
>>
>> Signed-off-by: Daniel Henrique Barboza <dhbarboza82 at gmail.com>
>> ---
>> src/kimchi/osinfo.py | 26 +++++++++++++++-----------
>> 1 file changed, 15 insertions(+), 11 deletions(-)
>>
>> diff --git a/src/kimchi/osinfo.py b/src/kimchi/osinfo.py
>> index 78eb828..6506f2d 100644
>> --- a/src/kimchi/osinfo.py
>> +++ b/src/kimchi/osinfo.py
>> @@ -44,28 +44,28 @@ template_specs = {'x86': {'old':
>> dict(disk_bus='ide',
>> cdrom_bus='scsi',
>> kbd_type="kbd",
>> kbd_bus='usb',
>> mouse_bus='usb',
>> - tablet_bus='usb', memory=1280),
>> + tablet_bus='usb', memory=2048),
>> 'modern': dict(disk_bus='virtio',
>> nic_model='virtio',
>> cdrom_bus='scsi',
>> kbd_bus='usb',
>> kbd_type="kbd",
>> mouse_bus='usb',
>> tablet_bus='usb',
>> - memory=1280)},
>> + memory=2048)},
>> 'ppc64le': {'old': dict(disk_bus='virtio',
>> nic_model='virtio',
>> cdrom_bus='scsi',
>> kbd_bus='usb',
>> kbd_type="keyboard",
>> mouse_bus='usb',
>> tablet_bus='usb',
>> - memory=1280),
>> + memory=2048),
>> 'modern': dict(disk_bus='virtio',
>> nic_model='virtio',
>> cdrom_bus='scsi',
>> kbd_bus='usb',
>> kbd_type="keyboard",
>> mouse_bus='usb',
>> tablet_bus='usb',
>> - memory=1280)}}
>> + memory=2048)}}
>>
>>
>> custom_specs = {'fedora': {'22': dict(video_model='qxl')}}
>> @@ -89,6 +89,16 @@ icon_available_distros = [icon[5:-4] for icon in
>> glob.glob1('%s/images/'
>> % paths.ui_dir, 'icon-*.png')]
>>
>>
>> +def _get_arch():
>> + for arch, sub_archs in SUPPORTED_ARCHS.iteritems():
>> + if os.uname()[4] in sub_archs:
>> + return arch
>> +
>> +
>> +def _get_default_template_mem(host_arch):
>> + return template_specs[host_arch]['modern'].get('memory', 1024)
>
> You are assuming the OS is a modern distro to every case which may be
> not true in always cases.
> I know the memory value is the same in both cases - old and modern,
> but it is a easy point of failure.
>
> As we know have the template.conf file, I suggest to create one
> specific by arch.
> So we will have one for x86 and other one for Power. The conf file for
> Power can have the default value already set and while loading it, we
> get the right one according to arch.
> What do you think about it?
Not sure. Perhaps it would be easier to just add the default x86 mem
value '1024' to the old
and modern dicts of x86_64 arch and just rely on the code to set the
correct value. I'll test it
here and see if it works.
>
>> +
>> +
>> def _get_tmpl_defaults():
>> """
>> ConfigObj returns a dict like below when no changes were made
>> in the
>> @@ -107,7 +117,7 @@ def _get_tmpl_defaults():
>> # Create dict with default values
>> tmpl_defaults = defaultdict(dict)
>> tmpl_defaults['main']['networks'] = ['default']
>> - tmpl_defaults['main']['memory'] = 1024
>> + tmpl_defaults['main']['memory'] =
>> _get_default_template_mem(_get_arch())
>> tmpl_defaults['storage']['pool'] = 'default'
>> tmpl_defaults['storage']['disk.0'] = {'size': 10, 'format':
>> 'qcow2'}
>> tmpl_defaults['processor']['cpus'] = 1
>> @@ -157,12 +167,6 @@ def _get_tmpl_defaults():
>> defaults = _get_tmpl_defaults()
>>
>>
>> -def _get_arch():
>> - for arch, sub_archs in SUPPORTED_ARCHS.iteritems():
>> - if os.uname()[4] in sub_archs:
>> - return arch
>> -
>> -
>> def get_template_default(template_type, field):
>> host_arch = _get_arch()
>> # Assuming 'power' = 'ppc64le' because lookup() does the same,
>
More information about the Kimchi-devel
mailing list