aboutsummaryrefslogtreecommitdiff
path: root/hw
AgeCommit message (Collapse)Author
2008-10-06Introduce v3 of savevm protocolaliguori
The current savevm/loadvm protocol has some draw backs. It does not support the ability to do progressive saving which means it cannot be used for live checkpointing or migration. The sections sizes are 32-bit integers which means that it will not function when using more than 4GB of memory for a guest. It attempts to seek within the output file which means it cannot be streamed. The current protocol also is pretty lax about how it supports forward compatibility. If a saved section version is greater than what the restore code support, the restore code generally treats the saved data as being in whatever version it supports. This means that restoring a saved VM on an older version of QEMU will likely result in silent guest failure. This patch introduces a new version of the savevm protocol. It has the following features: * Support for progressive save of sections (for live checkpoint/migration) * An asynchronous API for doing save * Support for interleaving multiple progressive save sections (for future support of memory hot-add/storage migration) * Fully streaming format * Strong section version checking Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5434 c046a42c-6fe2-441c-8c8c-71466251a162
2008-10-04Move nographic export to sysemu.hblueswir1
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5414 c046a42c-6fe2-441c-8c8c-71466251a162
2008-10-04Use qemu-log.hblueswir1
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5413 c046a42c-6fe2-441c-8c8c-71466251a162
2008-10-03Improve pflash cfi01 debug messages (Thomas Petazzoni).balrog
This patches slightly improves the debugging messages in pflash_read() and pflash_write(). Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5410 c046a42c-6fe2-441c-8c8c-71466251a162
2008-10-03Reset CFI01 flash wcycle after erase confirm (Thomas Petazzoni).balrog
pfl->wcycle was set to 1 when the erase confirm command was set, which lead to the next command being misinterpreted by Qemu: pflash_write: Unimplemented flash cmd sequence (offset 00000000, wcycle 0x1 cmd 0x20 value 0x70) This patch fixes this issue by resetting pfl->wcycle to 0 on erase confirm so that the next command is considered as a new one. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5409 c046a42c-6fe2-441c-8c8c-71466251a162
2008-10-03Rearrange tick functionsblueswir1
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5408 c046a42c-6fe2-441c-8c8c-71466251a162
2008-10-02Resurrect the safe part of r5274blueswir1
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5401 c046a42c-6fe2-441c-8c8c-71466251a162
2008-10-02Make PCI class description tables constblueswir1
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5400 c046a42c-6fe2-441c-8c8c-71466251a162
2008-10-02Make some tables constblueswir1
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5395 c046a42c-6fe2-441c-8c8c-71466251a162
2008-10-02Sun ss20 OBP does 32bit register access to esp (Robert Reif)blueswir1
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5394 c046a42c-6fe2-441c-8c8c-71466251a162
2008-10-01Reset CPU on INIT IPIaurel32
INIT IPI should reset CPU. Also non boot CPU should be halted. It will be un-halted by SIPI. Signed-off-by: Gleb Natapov <gleb@redhat.com> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5390 c046a42c-6fe2-441c-8c8c-71466251a162
2008-10-01qemu: improve scsi dma speed by increasing the dma buffer sizeaurel32
taken from Xen 17267:f4a92f0db20f, original patch by Samuel Thibault. Signed-off-by: Avi Kivity <avi@qumranet.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5385 c046a42c-6fe2-441c-8c8c-71466251a162
2008-10-01hw/apic.c: use bsr and bsf on x86_64aurel32
(C.W. Betts) git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5382 c046a42c-6fe2-441c-8c8c-71466251a162
2008-10-01Check that asynchronous (DMA) submission succeeds (Ian Jackson).balrog
If it does not, abort the command immediately rather than dropping it on the floor. Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5369 c046a42c-6fe2-441c-8c8c-71466251a162
2008-10-01Actually check read/write errors in IDE (Ian Jackson).balrog
This patch makes the ide emulation actually take notice of error returns from bdrv_write and bdrv_aio_{read,write}. (Cherry picked from qemu-xen e0e7a0afe0e324a1f7d64c240f567b15dbe454cf, first posted to qemu-devel Wed, 20 Feb 2008 15:26:41 +0000) Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5368 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-30Add some missing static qualifiersblueswir1
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5363 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-30Make sure bluez programs (cross-)compile, add missing statics.balrog
Spotted by Blue Swirl. git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5358 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-29Fix SS-2 crashblueswir1
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5357 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-29Refactor QEMUFile for live migrationaliguori
To support live migration, we override QEMUFile so that instead of writing to disk, the save/restore state happens over a network connection. This patch makes QEMUFile read/write operations function pointers so that we can override them for live migration. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5352 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-29Emulate a USB bluetooth dongle (or HCI Transport layer).balrog
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5349 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-29Use VHCI to allow the host os to participate in a qemu bluetooth "vlan".balrog
This does the reverse of bt-host.c, proxying from guest to host. Appears to be more reliable. git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5348 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-29Bluetooth HIDP emulation on top of usb-hid.c and L2CAP and SDP.balrog
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5347 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-29Add L2CAP logic and a virtual SDP server for use in emulated devices.balrog
Note that the L2CAP flow-controlled mode is not fully supported. git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5346 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-29Add a virtual HCI.balrog
This implements most of the logic of a real HCI (at least the pieces marked as mandatory). It doesn't support keys, authentication etc. It works on top of the LMP layer, which is not fully emulated because software never has direct access to it. git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5345 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-28Emulate a serial bluetooth HCI with H4+ extensions and attach to n8x0's UART.balrog
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5343 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-28Add a "null" bluetooth HCI and a header file for bluetooth.balrog
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5342 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-28Add to machine structure a flag to use SCSI drives instead of IDE: fixes SS-20blueswir1
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5339 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-28Fix dots per clock value, cleanup and "optimize"malc
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5338 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-28Optional "precise" VGA retrace supportmalc
Selected via: -vga <name>,retrace=precise git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5336 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-26Add a generic Niagara machineblueswir1
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5329 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-25Revert r5274 which breaks savevm/loadvmblueswir1
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5321 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-24pflash: Add missing parenthesis in error message.ths
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5311 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-24Don't use ds->dpy_copy directly from hw/ (Jan Niehusmann).balrog
I left a TODO in the code because this still doesn't definitely fix all issues. git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5308 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-23scsi-generic: decode correctly SCSI tape commands (Laurent Vivier)aliguori
This patch allows to use a "real" SCSI tape with qemu using "-drive /dev/sgX,if=scsi". It allows to decode correctly transfer length when the type of the device is a tape. Some issues remain when the application reading the tape tries to go beyond the end of the stream (but they must be corrected at the SCSI controller level). Signed-off-by: Laurent Vivier <Laurent.Vivier@bull.net> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5305 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-22ETRAX-FS: Correct ethernet PHY diagnostics register reads.edgar_igl
* Correct ethernet PHY diagnostics register reads. * Add friendly names for the speed/duplex fields. * Report duplex mismatches between MAC and PHY. git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5300 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-22Add software and timer interrupt supportblueswir1
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5299 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-22Add comment to windows SCSI hack.pbrook
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5295 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-22LSI SCSI: raise UDC on infinite loop (Marcelo Tosatti)aliguori
Raise UDC (Unexpected Disconnect) when a large enough number of instructions has been executed by the SCRIPTS processor. This "solution" is much simpler than temporarily interrupting execution. This remedies the situation with Windows which downloads SCRIPTS code that busy loops on guest main memory. Their drivers _do_ handle UDC appropriately (at least XP and 2003). It would be nicer to actually detect infinite loops, but until then, this bandaid seems acceptable. Since the situation seems to be rare enough, raise the number of instructions to 10000 (previously 1000). Three people other than myself had success with this patch. Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5293 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-22scsi-generic: correct 6-bytes commands transfer length (Laurent Vivier)aliguori
According to SCSI documentation, for 6 bytes commands (READ(6), WRITE(6)), if transfer length is 0 it specifies 256 blocks. Signed-off-by: Laurent Vivier <Laurent.Vivier@bull.net> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5292 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-22scsi-generic: correct usage of memset() (Laurent Vivier)aliguori
void *memset(void *s, int c, size_t n); DESCRIPTION The memset() function fills the first n bytes of the memory area pointed to by s with the constant byte c." Reported by Dietmar Maurer. Signed-off-by: Laurent Vivier <Laurent.Vivier@bull.net> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5291 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-20Suppress gcc 4.x -Wpointer-sign (included in -Wall) warningsblueswir1
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5275 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-20Add signed versions of save/load functionsblueswir1
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5274 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-20Use a QEMUBH when an OMAP timer must expire immediately.balrog
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5265 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-20Add a comment about masking of CTI interrupt in 16550A UART.balrog
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5264 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-20Allow attaching devices to OMAP UARTs.balrog
Also avoid two signedness warnings in hw/omap2.c. The API to attach new devices to serials is fine, bu the implementation is a hack. git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5263 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-18Add Sparc32 display depth to firmware configurationblueswir1
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5261 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-18Add common keys to firmware configurationblueswir1
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5260 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-18Add UUID to firmware configuration info (Gleb Natapov)blueswir1
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5259 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-18Key/value based qemu<->guest firmware communication mechanism (Gleb Natapov)blueswir1
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5256 c046a42c-6fe2-441c-8c8c-71466251a162
2008-09-17[PATCH] alpha: fix linux syscall conventionaurel32
According to linux kernel sources, register a3 is set in case of failure (and cleared in case of success) while register v0 contains the result (or -errno in case of error). The convention was not followed which results in weird behaviour. Signed-off-by: Tristan Gingold <gingold@adacore.com> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5243 c046a42c-6fe2-441c-8c8c-71466251a162