aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2009-11-18audio: link with -lpulse in addition to -lpulse-simpleAurelien Jarno1-2/+2
Link with -lpulse in addition to -lpulse-simple, needed when --no-add-needed is passed to the linker (gold default). Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2009-11-17Fix typoBlue Swirl1-1/+1
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2009-11-17Fix mingw32 buildBlue Swirl1-1/+0
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2009-11-17Prevent configuring for a user emulator on a different type of OSBlue Swirl1-0/+12
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2009-11-17Add linuxboot to BLOBSAlexander Graf1-1/+1
We should install linuxboot.bin too, so let's add it to the to-be-installed blobs. Signed-off-by: Alexander Graf <agraf@suse.de> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-17Convert linux bootrom to external rom and fw_cfgAlexander Graf5-104/+172
We already have a working multiboot implementation that uses fw_cfg to get its kernel module etc. data in int19 runtime now. So what's missing is a working linux boot option rom. While at it I figured it would be a good idea to take the opcode generator out of pc.c and instead use a proper option rom, like we do with multiboot. So here it is - an fw_cfg using option rom for -kernel with linux! Signed-off-by: Alexander Graf <agraf@suse.de> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-17Move common option rom code to header fileAlexander Graf2-76/+110
We will have a linux boot option rom soon, so let's take all functionality that might be useful for both to a header file that both roms can include. That way we only have to write fw_cfg access code once. Signed-off-by: Alexander Graf <agraf@suse.de> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-17Convert multiboot to fw_cfg backed data storageAlexander Graf3-31/+94
Right now we load the guest kernel to RAM, fire off the BIOS, hope it doesn't clobber memory and run an option rom that jumps into the kernel. That breaks with SeaBIOS, as that clears memory. So let's read all kernel, module etc. data using the fw_cfg interface when in the int19 handler. This patch implements said mechanism for multiboot. Signed-off-by: Alexander Graf <agraf@suse.de> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-17Introduce rom_copyAlexander Graf2-0/+39
We have several rom helpers currently, but none of them can get us code that spans several roms into a pointer. This patch introduces a function that copies over rom contents. Signed-off-by: Alexander Graf <agraf@suse.de> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-17fw_cfg: change cur_offset to 32 bitsJuan Quintela2-6/+40
Signed-off-by: Juan Quintela <quintela@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-17Update SeaBIOS to latestAnthony Liguori2-0/+0
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-17Add test suite for json marshallingAnthony Liguori1-5/+75
By reusing the qjson test suite. After checking that we can demarshal, marshal again and compared to the expected decoded value. This doesn't work so well for floats because they cannot be accurately represented in decimal but we try our best. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-17Provide marshalling mechanism for jsonAnthony Liguori2-0/+181
This introduces qobject_to_json which will convert a QObject to a JSON string representation. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-17QDict: Introduce qdict_iter()Luiz Capitulino2-0/+22
This adds iterator support to QDict, it will be used by the (to be introduced) QError module. Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-17Add a unit test for JSON supportAnthony Liguori3-1/+619
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-17Add a QObject JSON wrapperAnthony Liguori3-1/+84
This provides a QObject interface for creating QObjects from a JSON expression. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-17Add a JSON parserAnthony Liguori3-1/+591
This is the third and final stage of the JSON parser. It parses lexical tokens performing grammar validation and creating the final QObject representation. It uses a recursive decent parser. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-17Add a JSON message boundary identifierAnthony Liguori3-0/+128
The second stage of our JSON parser is a simple state machine that identifies individual JSON values by counting the levels of nesting of tokens. It does not perform grammar validation. We use this to emit a full JSON value to the parser. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-17Add a lexer for JSONAnthony Liguori3-1/+378
Our JSON parser is a three stage parser. The first stage tokenizes the stream into a set of lexical tokens. Since the lexical grammar is regular, we can use a finite state machine to model it. The state machine will emit tokens as they are identified. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-17Add a QBool typeAnthony Liguori4-1/+107
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-17Add unit test for QFloatAnthony Liguori3-0/+83
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-17Add a QFloat datatypeAnthony Liguori4-2/+108
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-17Allow strings to grow in sizeAnthony Liguori2-1/+40
This lets us use QString for building larger strings Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-17Add operations to qlist to allow it to be used as a stackAnthony Liguori2-0/+60
This makes lists no longer invariant. It's a very useful bit of functionality though. To deal with the fact that lists are no longer invariant, introduce a deep copy mechanism for lists. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-17Properly escape QDECREF macro argumentsAnthony Liguori1-1/+1
QDECREF does not properly escape the macro arguments which can lead to unexpected syntax errors. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-17Cleanup configure checks for dup3 and fallocateJan Kiszka1-2/+2
We have a function for this which does not issue annoying warnings. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-17kvm: x86: Refactor use of interrupt_bitmapJan Kiszka3-31/+21
Drop interrupt_bitmap from the cpustate and solely rely on the integer interupt_injected. This prepares us for the new injected-interrupt interface, which will deprecate the bitmap, while preserving compatibility. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-17kvm: Add arch reset handlerJan Kiszka4-0/+12
Will be required by succeeding changes. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-17Enable migration without shared storage from the monitorlirans@il.ibm.com2-13/+42
This patch adds the option to activate non-shared storage migration from the monitor. The migration command is as follows: (qemu) migrate -d tcp:0:4444 # for ordinary live migration (qemu) migrate -d -b tcp:0:4444 # for live migration with complete storage copy (qemu) migrate -d -i tcp:0:4444 # for live migration with incremental storage copy, storage is cow based. Changes from v4: - Minor coding style issues. Signed-off-by: Liran Schour <lirans@il.ibm.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-17Block live migrationlirans@il.ibm.com14-40/+713
This patch introduces block migration called during live migration. Block are being copied to the destination in an async way. First the code will transfer the whole disk and then transfer all dirty blocks accumulted during the migration. Still need to improve transition from the iterative phase of migration to the end phase. For now transition will take place when all blocks transfered once, all the dirty blocks will be transfered during the end phase (guest is suspended). Changes from v4: - Global variabels moved to a global state structure allocated dynamically. - Minor coding style issues. - Poll block.c for tracking of dirty blocks instead of manage it here. Signed-off-by: Liran Schour <lirans@il.ibm.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-17Expose a mechanism to trace block writeslirans@il.ibm.com3-2/+86
To support live migration without shared storage we need to be able to trace writes to disk while migrating. This Patch expose dirty block tracking per device to be polled from upper layer. Changes from v4: - Register dirty tracking for each block device. - Minor coding style issues. - Block.c will now manage a dirty bitmap per device once bdrv_set_dirty_tracking() is called. Bitmap is polled by the upper layer (block-migration.c). Signed-off-by: Liran Schour <lirans@il.ibm.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-17char: rename qemu_chr_reset to qemu_chr_generic_openAmit Shah4-14/+14
This function sends out the OPENED event to backends that have drive the chardevs. The 'reset' is now a historical artifact and we can now just call the function for what it is. Signed-off-by: Amit Shah <amit.shah@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-17char: Remove special init_reset handlingAmit Shah3-11/+0
The initial_reset sent to chardevs doesn't do much other than setting a bool to true. Char devices are interested in the open event and that gets sent whenever the device is opened. Moreover, the reset logic breaks as and when qemu's bh scheduling changes. Signed-off-by: Amit Shah <amit.shah@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-17char: don't limit data sent to backends to 1k per bufferAmit Shah1-6/+8
chardevs have a 'can_read' function via which backends specify the amount of data they can receive. When can_read returns > 0, apps can start sending data. However, each chardev driver here allows a max. of 1k bytes inspite of the backend being able to receive more. The best we can do here is to allocate s->max_size bytes from the heap on each call (which is the number returned by the backend from the can_read call). This is an intermediate step to bump up the bytes written in each call to 4k. Signed-off-by: Amit Shah <amit.shah@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-16ARM PB-A8 supportPaul Brook2-32/+83
Add ARM Realview PB-A8 board support. Signed-off-by: Paul Brook <paul@codesourcery.com>
2009-11-16LAN9118 emulationPaul Brook3-0/+1097
Add SMSC LAN9118 ethernet emulation. Signed-off-by: Paul Brook <paul@codesourcery.com>
2009-11-15mips_r4k: fix resetAurelien Jarno1-12/+15
(broken by 45a50b1668822c23afc2a89f724654e176518bc4) Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2009-11-15PPC64: map Uni-North AGP bus aka fix Linux bootBlue Swirl1-0/+10
Uni-North AGP device mapping was accidentally dropped in 2e29bd04786003561303dcad940b38afe790fb9b. Map the device. Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2009-11-15PPC64: Partial fix to Linux crash: revert to old devfnBlue Swirl1-1/+3
Before 2e29bd04786003561303dcad940b38afe790fb9b, Uni-North host and AGP bridge were using the same devfn, 11 << 3. The net effect was that only AGP bridge was visible. This was changed in the commit to 13 << 3 for AGP. Some of the later crashes happened due to NULL pointer dereferences generated by 07b7d05377a5e2b242ef0cce3d461d3284700fc0 and insufficient return value checks. Disable host device and revert AGP to 11 << 3. Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2009-11-15PCI: make duplicate devfn allocation fatalBlue Swirl2-5/+3
Only two callers of pci_create_simple/pci_register_device bothered to check the return value. Other cases were prone to crashing with spurious NULL pointer dereferences. Make QEMU exit with an error message when devfn is attempted to be duplicated, also applies to case when the bus is full. Remove checks. Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2009-11-14Do not execute shell scripts directlymalc1-1/+1
Signed-off-by: malc <av1474@comtv.ru>
2009-11-14mips malta: fix indentationAurelien Jarno1-3/+3
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2009-11-14target-mips: fix indentationAurelien Jarno2-3/+3
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2009-11-14mips-malta: fix resetAurelien Jarno1-25/+27
(broken by 45a50b1668822c23afc2a89f724654e176518bc4) Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2009-11-14mips: fix cpu_reset memory leakBlue Swirl3-56/+54
Remove cpu_mips_register() - move mmu_init(), fpu_init() and mvp_init() into cpu_mips_init() - move the other parts in cpu_mips_init() Reported-by: Blue Swirl <blauwirbel@gmail.com> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2009-11-14fix make clean targetsMagnus Damm1-2/+3
This patch fixes clean in case of missing directories and also adds code to distclean that removes the following files: qemu-monitor.texi roms/seabios/config.mak roms/vgabios/config.mak Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2009-11-14sh4 disasm fixesMagnus Damm2-1/+4
Add the sh4 target to the monitor disassembly function, and remove a duplicate "0x" printout from the sh4 dis- assembly code. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2009-11-14tcg/i386: remove duplicate sar opcodeMagnus Damm1-1/+0
Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2009-11-14pci: Fix function pci_default_write_configStefan Weil1-3/+3
Change 260c0cd3d985e51b15870ff47e17b7b930efbda1 (pci: use range helper functions) introduced a bug which made pci cirrus vga on mips malta (and maybe other pci devices) fail. Don't change addr - its original value is needed by ranges_overlap() and range_covers(). Signed-off-by: Stefan Weil <weil@mail.berlios.de> Acked-by: Ryan Harper <ryanh@us.ibm.com> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2009-11-14mips: fix CPU resetAurelien Jarno3-20/+36
Don't load the kernel twice during reset. See f2d74978764f62d832d61ac17bb5d934ade58816. Signed-off-by: Blue Swirl <blauwirbel@gmail.com> Signed-off-by: Stefan Weil <weil@mail.berlios.de> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>