summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2009-12-19Update for 0.12.0 releasev0.12.0Anthony Liguori2-1/+35
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-12-19Update to SeaBIOS 0.5.0Anthony Liguori2-0/+0
The only change is updating the makefile but that way we're carrying an official release. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit eac1bb74be4d95616b8a6217e020b1b0d6918608)
2009-12-19Revert "monitor: Convert do_migrate_set_speed() to QObject"Anthony Liguori3-4/+3
This reverts commit 3a4921047d514c336531c304bec362c4d138ebcc. From Luiz: do_migrate_set_speed() accepts a suffix for the 'value' argument and this is not good for QMP. We will have to add a new argument type to handle that and this will have to wait for 0.13. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 46ee2295678af629a2869e4e331e4e002bcc31fd)
2009-12-19e1000: Don't muck with PCI commmand registerAnthony Liguori1-1/+0
Otherwise, the driver does not work in Linux after the INT_DISABLE changes in PCI. Michael Tsirkin had a patch to do this, I'm not sure what happened to it. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 17a7a5c59c4d72dd1d5666f348b010be6b10163c)
2009-12-19monitor: do_balloon(): Use 'M' argument typeLuiz Capitulino2-3/+2
This makes do_balloon() accept megabyte values from the user Monitor while accepting byte values for QMP. Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 056001ab30b1e596b992e70f9cb2adacef9c0ad0)
2009-12-19monitor: Introduce 'M' argument typeLuiz Capitulino1-0/+4
This is a target long value in megabytes which should be converted to bytes. It will be used by handlers which accept a megabyte value when in "user mode". Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 7cfe34fe4e3b518485c15aa9a78b4cf9cbd11a4d)
2009-12-19QMP: Update spec fileLuiz Capitulino1-26/+34
- Remove "draft" status - Change default success response to be json-object - Change error and event data member to be a json-object - Update examples - Add new section "Compatibility Considerations" - Other fixes and clarifications Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 58341bcd112cf11c6266cabe36921572fa4b019d)
2009-12-19QMP: Update README fileLuiz Capitulino1-11/+23
- Fix output description - Fix command-line usage notes - Minor improvements Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit d683cfb1a94aa61ace4ce7ce824f1e087b37b851)
2009-12-19QMP: Assure that returned data is a QDictLuiz Capitulino1-0/+1
This is for debug purposes only. Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 19863875a2e18fc868a7b830f16fa76d32518bd1)
2009-12-19QMP: Return an empty dict by defaultLuiz Capitulino1-1/+2
Currently, when a regular command doesn't have any data to output, QMP will emit: { "return": "OK" } Returning an empty dict is better though, because dicts can support some protocol changes in a compatible way. So, with this commit we will return: { "return": {} } Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit e38fb11b5099db8de8d60d536d4a01610ee4c08b)
2009-12-19QMP: Only handle converted commandsLuiz Capitulino1-1/+1
Looks like I dropped this check when addressing the 'query-' commands request. QMP should only handle converted commands, obviously. Reported-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 89f5461fc9a3c437e632f6895dc605e8f03b925e)
2009-12-19Update SeaBIOS to include PCI based option rom loadingAnthony Liguori3-0/+0
Also remove pcbios from the tree. It will no longer work. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 2dc3f77c86b6c3782f057af1d935ccddc052bed5)
2009-12-19roms: remove option rom packing logicGerd Hoffmann2-61/+50
Now that we load the option roms via fw_cfg, we can stop copying them to the 0xc000 -> 0xe000. The patch does just that. Also the rom loader gets simplified as all remaining users of the rom loader load the bits at a fixed address so the packing and aligning logic can go away. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 632cf034b401cdd01dae253a8b577fe518e37654)
2009-12-19roms: use new fw_cfg file xfer support.Gerd Hoffmann3-5/+27
roms: use fw_cfg for vgabios and option rom loading, additionally to deploying them the traditional way (copy to 0xc0000 -> 0xe0000 range). Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 379526a40e855b0da3c5718063a7d992aa5a79a1)
2009-12-19fw_cfg: add API for file transfer.Gerd Hoffmann2-2/+62
This patch adds a file transfer interface to fw_cfg. Intended to be used for passing non-pci option roms and vgabios to seabios. Namespace is modeled after the existing cbfs filesystem support in seabios. Reading the new FW_CFG_FILE_DIR entry returns a file list. Fields there are in network byte order (aka bigendian). aliguori: fix fw_cfg.h for multiboot.bin, add proper fw_cfg.h declarations, quiet fprintf() in fw_cfg.c Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit abe147e0ce41c07e789f6627bcb01c905d1f9bbf)
2009-12-19fw_cfg: make calls typesafeGerd Hoffmann2-21/+21
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit c2b5bda43a1c87147fadc78d5590b1465b850816)
2009-12-19pci romfiles: add property, add default to PCIDeviceInfoGerd Hoffmann6-32/+29
This patch adds a romfile property to the pci bus. It allows to specify a romfile to load into the rom bar of the pci device. The default value comes from a new field in PCIDeviceInfo. The property allows to change the file and also to disable the rom loading using an empty string. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 8c52c8f320b27684ec3b1a649925b75af376b1f7)
2009-12-19Support PCI based option rom loadingAnthony Liguori6-4/+44
Currently, we preload option roms into the option rom space in memory. This prevents DDIM from functioning correctly which severely limits the number of roms we can support. This patch introduces a pci_add_option_rom() which registers the PCI_ROM_ADDRESS bar which points to our option rom. It also converts over the cirrus vga adapter, the rtl8139, virtio, and the e1000 to use this new mechanism. The result is that PXE boot functions even with three unique types of cards. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit c2039bd0ffce8807e0eaac55254fde790825fa92)
2009-12-19Fix backcompat for hotplug of SCSI controllersDaniel P. Berrange1-5/+1
SCSI controllers have no trouble existing without any attached disks. This could be achieved with the (legacy) monitor syntax pci_add pci_addr=auto storage if=scsi This is now denied with scsi requires a backing file/device. failed to add if=scsi There is no need for this denial and it breaks compatability with existing QEMU usage, so remove the check for presence of a drive. Signed-off-by: Daniel P. Berrange <berrange@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit ec7efac4a967c650ae1cd8cebe28e7c69cbe3864)
2009-12-19fdc: fix migration from 0.11Juan Quintela1-7/+5
0.11 uses as instance ide io_base, get it back Signed-off-by: Juan Quintela <quintela@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 47f5ba724871622c7db7a73fd05d6b3646478dd6)
2009-12-19Revert "fdc: fix vmstate variable passed"Juan Quintela1-29/+4
Floppy used the io_base address to register savevm region. This reverts commit 2966b390d0f7cd5e5b971290fcc20685de374228. Signed-off-by: Juan Quintela <quintela@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit aef30c3c6a3165178584eb125f64defd8173eebd)
2009-12-19monitor: Accept input only byte-wiseJan Kiszka1-1/+1
This allows to suspend command interpretation and execution synchronously, e.g. during migration. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit c62313bbdc48f72e93fa8196f2fff96ba35e4e9d)
2009-12-19Revert "kvm: x86: Save/restore exception_index"Anthony Liguori2-2/+1
This reverts commit ebbc8a3d8e76d0402f8a08c10c0f32e24715d41d. As suggested by Jan Kiszka, "It was obsoleted by d1793b836f8f123b961c613de1bb1c0c185c84cc and now saves/restores a useless field." Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit acb6685feaeea0989d29b6f12e96fea48e8ce9d9)
2009-12-19vmware: increase cursor buffer size.Dave Airlie1-1/+1
The cursor pixmap size we calculate later ends up being 4096 dwords long by the looks of it. This boots an F12 LiveCD now. Signed-off-by: Dave Airlie <airlied@linux.ie> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 8095cb3ed22d74649fd247efb9518459eae4d92e)
2009-12-19VMware VGA: Only enable dirty log tracking when fifo is disabledAnthony Liguori3-4/+36
This patch enables dirty log tracking whenever it's needed and disables it when it is not. We unconditionally enable dirty log tracking on reset, restart dirty log tracking when PCI IO regions are remapped, and disable/enable it based on commands from the guest. Rebased-by: Dave Airlie <airlied@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit b5cc6e32baa9d98d50debe23229b303f89fe84f1)
2009-12-19Fix VMware VGA depth computationAnthony Liguori1-7/+7
VMware VGA requires that the depth presented to the guest is the same as the DisplaySurface that it renders to. This is because it performs a very simple memcpy() to blit from one surface to another. We currently hardcode a 24-bit depth. The surface allocator for SDL may, and usually will, allocate a surface with a different depth causing screen corruption. This changes the code to allocate the DisplaySurface before initializing the device which allows the depth of the DisplaySurface to be used instead of hardcoding something. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit a6109ff1b5d7184a9d490c4ff94f175940232ebd)
2009-12-19Make sure to enable dirty log tracking for VMware VGAAnthony Liguori1-0/+4
This is needed for VMware VGA to work properly under KVM. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit ee3e41a9a0194af21d0da75f5afd87bea3738cf3)
2009-12-19Make sure to enable dirty tracking of VBE vram mappingAnthony Liguori5-19/+31
Apparently, VBE maps the VGA vram to a fixed physical location. KVM requires that all mappings of the VGA vram have dirty tracking enabled on them. Any access to the VGA vram through the VBE mapping currently fails to result in dirty page tracking updates causing a black screen. This is the true root cause of VMware VGA not working correctly under KVM and likely also an issue with some of the std-vga black screen issues too. Cirrus does not enable VBE so it would not be a problem when using Cirrus. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> Rebased-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit f0138a63a41fe26bcef61d031ae53d872d12a992)
2009-12-19vmware: setup PCI BAR 2 for FIFO as per vmware specDave Airlie1-5/+30
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit f351d050dccfc469fecd353d095526d52e4632c6)
2009-12-19qdev: improve property error reporting.Gerd Hoffmann1-2/+7
Add a error message in case we fail to parse a qdev property. Also make qemu not abort() in case setting a global property can't be set. This used to be a clear programming error. The introduction of the -global switch changed that though, so better exit instead (after printing the new error message). Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 9ef5c4bf8132eb72db2dd83fce3fa0005a6dd13f)
2009-12-19fix vga names in default_listGerd Hoffmann1-2/+2
Fix mismerge between 64465297 and 556cd098. Cc: Markus Armbruster <armbru@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 69fd02eea61e6d9e7cd7831ef26522a5ac9e146c)
2009-12-19usb-host: check mon before using it.Gerd Hoffmann1-4/+7
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit eba6fe8732cb5109b6fcf6a973d8959827eb7af4)
2009-12-19usb-net: use qdev for -usbdeviceGerd Hoffmann3-52/+47
Rebased to master, adapted to device renaming by armbru, no other changes. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 42be86ce95db944910005aa981a8e9ae5e01b05a)
2009-12-19Check rom_load_all() return value.Gerd Hoffmann2-2/+5
Check rom_load_all() return value. Also don't make option rom loading failure fatal. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 15ff7705444ab9663189946d6d648431e0649df1)
2009-12-19defaults: update device_list[]Gerd Hoffmann2-0/+4
Add isa-fdc (disables default_floppy). Add ide-drive (disables default_cdrom). Also walk the -global QemuOpts, so we'll catch -global isa-fdc.drive{A,B}=<name> too. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit d8bcbabf260a4ecce73180991cad576de850b66d)
2009-12-19defaults: split default_driveGerd Hoffmann2-4/+24
Split default_drive into default_{floppy,cdrom,sdcard}. Also add QEMUMachine flags to disable them per machine. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit ac33f8fad14e07fa12b74c3494339ae6882dc22f)
2009-12-19monitor: Catch printing to non-existent monitorLuiz Capitulino1-3/+3
The monitor_vprintf() function now touches the 'mon' pointer before calling monitor_puts(), this causes block migration to segfault as its functions call monitor_printf() with a NULL 'mon'. To fix the problem this commit moves the 'mon' NULL check from monitor_puts() to monitor_vprintf(). This can potentially hide bugs, but for some reason this has been the behavior for a long time. Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 2daa11912699d9412fb4404d646031a74b166aa5)
2009-12-19monitor: Avoid readline functions in QMPLuiz Capitulino1-0/+3
The monitor_read_command() function is readline specific and should only be used when readline is available. Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 183e6e525764d5c4978e37b42dc2cde0b0ffcfec)
2009-12-19monitor: do_balloon(): Check for errorsLuiz Capitulino1-9/+26
do_balloon() should check for ballooning availability as do_info_balloon() does. Noted by Daniel P. Berrange <berrange@redhat.com>. Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit cfdf2c40577ed99bb19cdc05d0537e2808d77a78)
2009-12-19monitor: Use 'device' in ejectLuiz Capitulino2-2/+2
Monitor's eject command uses 'filename' for the device name argument, but 'device' is a better name. Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 78d714e08f15171adf48e32ba86709f9c64f37cf)
2009-12-19QDict: Fix size updateLuiz Capitulino2-2/+3
Key replacement should not update the dictionary's size. This commit also adds a test for the bug. Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 29ec3156ee66b6e2553a0adb2f35cb143edddc5f)
2009-12-19qdev: Improve uni-north device namesMarkus Armbruster1-12/+12
Switch to the names suggested by Blue Swirl. Signed-off-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 18dd19a7d9bb90734b5188fd6f53c76bde711e4b)
2009-12-19Avoid permanently disabled QEMU monitor when UNIX migration failsDaniel P. Berrange1-5/+7
If a UNIX migration command is attempt to a UNIX socket which does not exist, then the monitor is suspended, but never resumed. This prevents any further use of the monitor * migration-unix.c: Only call migrate_fd_monitor_suspend() once connected to the UNIX socket. Signed-off-by: Daniel P. Berrange <berrange@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 2dd650e58acbafedc7bf34045b7f81bb6c912e72)
2009-12-19Fix loading of ELF multiboot kernelsKevin Wolf2-6/+6
The multiboot implementation assumed that there is only one program header (which contains the entry point) and that the entry point is at the start of the code. This doesn't hold true generally and caused too little data to be loaded. Fix the loading code to pass the whole loaded data to the Multiboot Option ROM. Signed-off-by: Kevin Wolf <kwolf@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 092493be3caab1ac77f4223b4c3fb0975d1ed490)
2009-12-19Revert "Rename DriveInfo.onerror to on_write_error" (fix mismerge)Kevin Wolf1-4/+0
Part of the first patch of the -drive rerror series has been merged once more on top of the rest of the series. This effectively disables the rerror option and always goes with the default value. Reverting the commit re-enables the option. This reverts commit fc072ec4df0996682dfbff6c735e2bbc0d93132f. Signed-off-by: Kevin Wolf <kwolf@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 75f124753922451ee697defd81a80a91ce3f9888)
2009-12-19qemu-io: Fix memory leakKevin Wolf1-4/+6
Signed-off-by: Kevin Wolf <kwolf@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 40a0d7c395f4d18a8061ba075d8f9aab2fa0ec2a)
2009-12-19Fix thinko in linuxboot.SPaolo Bonzini1-12/+8
The %gs segment that was used was not matching the comments. I just moved the GDT descriptor on the stack instead. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 36ecd7c016f682437941a54193251cbf918bef0d)
2009-12-19target-i386: Fix evaluation of DR7 registerJan Kiszka1-2/+2
hw_breakpoint_type and hw_breakpoint_len used the wrong index multiplier to extract type and len. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit d46272c774a94a8b2f0849703070dbcd93057f50)
2009-12-19kvm: x86: Use separate exception_injected CPUState fieldJan Kiszka3-3/+5
Marcelo correctly remarked that there are usage conflicts between QEMU core code and KVM /wrt exception_index. So spend a separate field and also save/restore it properly. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 31827373f03b0ff1550d45ddef0ca1305a2ae70d)
2009-12-19vnc: hextile: do not generate ForegroundSpecified and SubrectsColoured tilesAnthony Liguori1-3/+1
This violates the RFB specification (section 6.6.4). It happens to work with most clients but it's still wrong. Reported-by: Yaniv Kaul <ykaul@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 02c2b87fff97e77a1f6033fb09f53afa267c0c1e)