]> git.ipfire.org Git - thirdparty/libvirt.git/commit
qemu: Support vram for video of qxl type
authorOsier Yang <jyang@redhat.com>
Sun, 6 Mar 2011 14:00:27 +0000 (22:00 +0800)
committerOsier Yang <jyang@redhat.com>
Sun, 6 Mar 2011 14:00:27 +0000 (22:00 +0800)
commit82dfc6f38e353cad24ff0029d2210ff2196e21a2
treefcb1964398378afd66aafc4c04a80ebab2c5ff40
parent5a814012359a74922892737e1e5b1ee94ba74e49
qemu: Support vram for video of qxl type

For qemu names the primary vga as "qxl-vga":

  1) if vram is specified for 2nd qxl device:

    -vga qxl -global qxl-vga.vram_size=$SIZE \
    -device qxl,id=video1,vram_size=$SIZE,...

  2) if vram is not specified for 2nd qxl device, (use the default
     set by global):

    -vga qxl -global qxl-vga.vram_size=$SIZE \
    -device qxl,id=video1,...

For qemu names all qxl devices as "qxl":

  1) if vram is specified for 2nd qxl device:

    -vga qxl -global qxl.vram_size=$SIZE \
    -device qxl,id=video1,vram_size=$SIZE ...

  2) if vram is not specified for 2nd qxl device:

    -vga qxl -global qxl-vga.vram_size=$SIZE \
    -device qxl,id=video1,...

"-global" is the only way to define vram_size for the primary qxl
device, regardless of how qemu names it, (It's not good a good
way, as original idea of "-global" is to set a global default for
a driver property, but to specify vram for first qxl device, we
have to use it).

For other qxl devices, as they are represented by "-device", could
specify it directly and seperately for each, and it overrides the
default set by "-global" if specified.

v1 - v2:
  * modify "virDomainVideoDefaultRAM" so that it returns 16M as the
    default vram_size for qxl device.

  * vram_size * 1024 (qemu accepts bytes for vram_size).

  * apply default vram_size for qxl device for which vram_size is
    not specified.

  * modify "graphics-spice" tests (more sensiable vram_size)

  * Add an argument of virDomainDefPtr type for qemuBuildVideoDevStr,
    to use virDomainVideoDefaultRAM in qemuBuildVideoDevStr).

v2 - v3:
  * Modify default video memory size for qxl device from 16M to 24M

  * Update codes to be consistent with changes on qemu_capabilities.*
src/conf/domain_conf.c
src/qemu/qemu_capabilities.c
src/qemu/qemu_capabilities.h
src/qemu/qemu_command.c
tests/qemuhelptest.c
tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-qxl-vga.args [new file with mode: 0644]
tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-qxl-vga.xml [new file with mode: 0644]
tests/qemuxml2argvdata/qemuxml2argv-graphics-spice.args
tests/qemuxml2argvdata/qemuxml2argv-graphics-spice.xml
tests/qemuxml2argvtest.c
tests/qemuxml2xmltest.c