aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2010-10-27msi: simplify range checksMichael S. Tsirkin1-25/+20
config write handlers should be idempotent. So no need for complex range checks: a simple one checking that we are touching the relevant capability will do. Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2010-10-27pci: improve w1c mask handlingMichael S. Tsirkin1-2/+4
- save/restore must not check w1c bits since they are in fact guest controlled - clear w1c bits on reset Note: for express there are different kinds of reset, some leave part of config space alone. We will likely need a sticky bit mask to implement this. Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2010-10-27pcie: clean up hot plug notificationMichael S. Tsirkin4-71/+62
Simplify logic for hotplug notification, by tracking state of the logical interrupt condition. We then simply use this variable to make the interrupt decision, according to spec. API is made cleaner as we no longer force users to pass in old slot control value. Includes fixes by Isaku Yamahata. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
2010-10-27pcie: simplify range checkMichael S. Tsirkin1-49/+59
Simplify code slighly by reversing the polarity for the range check Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
2010-10-27Introduce range.hBlue Swirl3-0/+3
Extract range functions from pci.h. These will be used by later patches by non-PCI devices. Adjust current users. Signed-off-by: Blue Swirl <blauwirbel@gmail.com> (cherry picked from commit bf1b00712375bea65f2254dea8281fa646eebbd5)
2010-10-27qemu-options.def: add to generated header listMichael S. Tsirkin2-9/+5
All files include qemu-options.h which pulls in qemu-options.def from the root directory. Thus generating qemu-options.def from Makefile.objs under the target directory is not effective. Further, people expect .def file to get cleaned with make clean: it does not have state so no reason to defer removing it until distclean. Also add a rule to remove old files that might be around. This fixes the error: ‘QEMU_OPTION_spice’ undeclared (first use in this function) error that some people reported which is really down to an out of date .def file. Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2010-10-27net: properly handle illegal fd/vhostfd from command lineJason Wang1-5/+11
When hanlding fd/vhostfd form command line through net_handle_fd_param(), we need to check mon and return value of strtol() otherwise we could get segmentation fault or invalid fd when user type an illegal fd/vhostfd. This patch is based on the suggestions from Luiz Capitulino <lcapitulino@redhat.com>. Signed-off-by: Jason Wang <jasowang@redhat.com> Reviewed-by: Luiz Capitulino <lcapitulino@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2010-10-27virtio: sanity-check available indexMichael S. Tsirkin1-0/+11
Checking available index upon load instead of only when vm is running makes is easier to debug failures. Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2010-10-27migration: don't segfault on invalid inputMichael S. Tsirkin1-0/+3
host_from_stream_offset returns NULL on error, return error instead of trying to use that address, to avoid segfault on invalid stream. Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2010-10-26Merge remote branch 'qmp/for-anthony' into stagingAnthony Liguori4-8/+15
2010-10-26Merge remote branch 'kwolf/for-anthony' into stagingAnthony Liguori15-212/+264
2010-10-25seabios: Update to 0.6.1Anthony Liguori2-0/+0
- 0ff9051 Update version to 0.6.1 - 9c000e6 Support Samsung SE-S084 USB DVD drive (and probably many others) - eebe949 pciinit: remove unused variable, old_addr, in pci_set_io_region_addr(). - 06644f4 Minor - indentation change to jpeg.c. - 2dcd9fa Enhance tools/readserial.py to support reading from a pipe. - 7ce09ae Make tools/transdump.py more resilient to unknown input. - 6039fc5 Update qemu_cfg_read to use "rep insb". - 9a01a9c Only show bootsplash during boot menu. - 5feb83c add write support to virtio-blk - 22f6378 Don't try to talk to APIC on 486 - e2074bf Add ACPI SSDT/DSDT support for CPU hotplug. - eb6dc78 Add additional debug status messages to bootsplash code. - c8e4e88 Allow qemu to use bootsplash code via fwcfg interface. - 597040d Add tools/trandump.py tool for converting hexdump() output. - 48f5f8b Default bootsplash on (for coreboot users). - 8d85eb1 Autodetect video mode based on bootsplash jpeg dimensions. - b2b9d4a Rename "decdata" to "jpeg" in bootsplash - to be consistent with jpeg.c. - bbc4722 Breakup jpeg_decode into parsing and displaying phases. - 2976dd4 Avoid using BSS variables in jpeg.c. - cc9e1bf Add FUNC16() helper macro for converting a 16bit func to a segoff_s. - b4525a0 Handle unaligned sizes in iomemcpy(). - 0e27e19 Cleanup bootsplash vesa signature detection. - cadaf0e Be sure to disable bootsplash on all BIOS boot cases. - 2641186 Add call16_int10 helper to bootsplash.c. - 6dc76f4 Don't do "double buffering" in bootsplash code. - 227dc3e Check that malloc succeeds in bootsplash code. - a576c9c Bootsplash fixes and cleanups. - 9fd4851 Minor - clarify bit logic in mptable.c. - abf31d3 Fix integer truncating bug in calc_future_timer(). - 1d5c333 seabios: pciinit: fix 64bit bar initilization. - ae6924d Minor - introduce GDT_GRANLIMIT macro. - 0f78889 Avoid code addresses >64K in big real mode. - aec19c9 seabios: smm: move out piix4 specific smram logic to dev-i440fx.c - 08328e7 seabios: shadow: make device finding more generic. - 4c67f90 seabios: acpi: clean up of finding pm device. - fe54a53 seabios: acpi: split out piix4 pm logic. - d06afb4 seabios: acpi: move acpi definitions to acpi.h from acpi.c - 2f54bb4 seabios: acpi: move out endian conversion helper function. - 23173ac seabios: pci: introduce helper function to find device from table and initialize it. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2010-10-23qemu-timer: move commonly used timer code to qemu-timer-commonBlue Swirl11-124/+150
Move timer init functions to a new file, qemu-timer-common.c. Make other critical timer functions inlined to preserve performance in qemu-timer.c, also move muldiv64() (used by the inline functions) to qemu-timer.h. Adjust block/raw-posix.c and simpletrace.c to use get_clock() directly. Remove a similar/duplicate definition in qemu-tool.c. Adjust hw/omap_clk.c to include qemu-timer.h because muldiv64() is used there. After this change, tracing can be used also for user code and simpletrace on Win32. Cc: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Acked-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2010-10-23rewrite i386 tests MakefilePaolo Bonzini3-42/+91
1) compute path to i386 compiler from configure. If it is found, run the i386 tests. I use macros so that this approach could be applied for other arches as well. 2) provide an easily extensible way to add tests Most tests fail, but at least "make test" does something meaningful. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2010-10-23fix test_pathPaolo Bonzini2-3/+12
path.c grew quite a few new dependencies (mostly via cutils.c), include them. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2010-10-23make runcom compile on recent distributionsPaolo Bonzini1-7/+4
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2010-10-23disable test_enter on i386, it is brokenPaolo Bonzini1-0/+5
Many other tests fail, but this has an infinite loop with both qemu-i386 and native execution (albeit on x86_64), so there is something more going on. I'm not going to debug it now, so just disable the test. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2010-10-23unbreak "make" from vpath-built tests directoryPaolo Bonzini1-0/+1
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2010-10-23unbreak "make" from tests directoryPaolo Bonzini1-0/+1
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2010-10-22mips_fulong2e: fix ram allocationBlue Swirl1-1/+1
RAM registration used incorrect offset. Fix by using the offset obtained previously for this purpose. Spotted by GCC 4.6.0 20100925 warning, which is also avoided. Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2010-10-22Replace remaining gcc format attributes by macro GCC_FMT_ATTR (format checking)Stefan Weil2-3/+2
Replace the remaining format attribute printf by macro GCC_FMT_ATTR which uses gnu_printf (if supported). v2 * Removal of dyngen specific code is now done in a separate patch. * Handle attribute in new ui/spice-display.c, too. Cc: Blue Swirl <blauwirbel@gmail.com> Signed-off-by: Stefan Weil <weil@mail.berlios.de> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2010-10-22Remove special handling of system include files (no longer needed)Stefan Weil4-35/+2
The formerly used dyngen code did not work with system include files like stdio.h. Tests with Linux, OSX and Win32 show that this restriction is no longer needed. So we hopefully can remove that special piece of code. This results in cleaner code and allows better use of the new GCC_FMT_ATTR macro. Cc: Blue Swirl <blauwirbel@gmail.com> Signed-off-by: Stefan Weil <weil@mail.berlios.de> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2010-10-22Merge remote branch 'qemu-kvm/uq/master' into stagingAnthony Liguori1-33/+99
2010-10-22virtio-blk: Respect werror option for flushesKevin Wolf1-1/+7
The werror option now affects not only write requests, but also flush requests. Previously, it was not possible to stop a VM on a failed flush. Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2010-10-22ide: Handle flush failureKevin Wolf2-2/+11
Instead of always assuming success for bdrv_aio_flush, actually do something with the error. This respects the werror option and accordingly ignores the error, reports it to the guest or stops the VM and retries after cont. Ignoring the error is trivial, obviously. For stopping the VM and retrying later old code can be reused, but we need to introduce a new status for "retry a flush". For reporting to the guest, fortunately the same action is required as for a failed read/write (status = DRDY | ERR, error = ABRT), so this code can be reused as well. Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2010-10-22ide: Factor ide_flush_cache outKevin Wolf1-4/+10
The next patch reuses this code, so put it in its own function. Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2010-10-22qemu-img: Fix qemu-img convert -obacking_fileKevin Wolf1-0/+7
The old -B option caused a backing file to be used for the converted image and to avoid copying clusters from the old backing file. When replaced with -obacking_file, qemu-img convert does assign the backing file to the new image, but it doesn't realize that it should avoid copying clusters from the backing file. This patch checks the -o options for a backing_file and applies the same logic as for -B in this case. Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2010-10-22block: Use GCC_FMT_ATTR and fix a format errorStefan Weil1-2/+3
Adding the gcc format attribute detects a format bug which is fixed here. v2: Don't use type cast. BDRV_SECTOR_SIZE is unsigned long long, so %lld should be the correct format specifier. Cc: Blue Swirl <blauwirbel@gmail.com> Cc: Kevin Wolf <kwolf@redhat.com> Signed-off-by: Stefan Weil <weil@mail.berlios.de> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2010-10-22qemu-io: New command mapKevin Wolf1-0/+39
The new map command in qemu-io lists all allocated/unallocated areas in an image file. Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2010-10-22Copy snapshots out of QCOW2 diskedison9-5/+75
In order to backup snapshots, created from QCOW2 iamge, we want to copy snapshots out of QCOW2 disk to a seperate storage. The following patch adds a new option in "qemu-img": qemu-img convert -f qcow2 -O qcow2 -s snapshot_name src_img bck_img. Right now, it only supports to copy the full snapshot, delta snapshot is on the way. Changes from V1: all the comments from Kevin are addressed: Add read-only checking Fix coding style Change the name from bdrv_snapshot_load to bdrv_snapshot_load_tmp Signed-off-by: Disheng Su <edison@cloud.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2010-10-22ide: set WCACHE supported in IDENTIFY dataChristoph Hellwig1-2/+2
ATA does not only have the WCACHE enabled bit in identify word 85, but also a WCACHE supported bit in word 82. While the Linux kernel is fine with the latter at least hdparm also needs the former before correctly displaying the cache settings. There's also a non-zero chance other operating systems are more picky in their volatile write cache detection. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2010-10-22qcow2: Remove old image creation functionKevin Wolf1-224/+0
They have been #ifdef'd out by the previous patch. Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2010-10-22qcow2: Simplify image creationKevin Wolf1-1/+132
Instead of doing lots of magic for setting up initial refcount blocks and stuff create a minimal (inconsistent) image, open it and initialize the rest with regular qcow2 functions. This is a complete rewrite of the image creation function. The old implementating is #ifdef'd out and will be removed by the next patch (removing it here would have made the diff unreadable because diff tries to find similarities when it's really a rewrite) Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2010-10-22qcow2: Support exact L1 table growthStefan Hajnoczi4-12/+19
The L1 table grow operation includes a size calculation that bumps up the new L1 table size in order to anticipate the size needs of vmstate data. This helps reduce the number of times that the L1 table has to be grown when vmstate data is appended. This size overhead is not necessary during image creation, bdrv_truncate(), or snapshot goto operations. In fact, existing qemu-iotests that exercise table growth are no longer able to trigger it because image creation preallocates an L1 table that is too large after changes to qcow_create2(). This patch keeps the size calculation but also adds exact growth for callers that do not want to inflate the L1 table size unnecessarily. Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2010-10-22monitor: Ignore "." and ".." when completing file name.Kusanagi Kouichi1-0/+5
Signed-off-by: Kusanagi Kouichi <slash@ac.auone-net.jp> Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2010-10-22Fix test suite build with tracing enabledJan Kiszka1-6/+6
qemu_malloc instrumentations require linking against the trace objects. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Acked-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2010-10-22Silence compiler warning in json test caseJan Kiszka1-1/+3
This avoids error: zero-length gnu_printf format string Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2010-10-22Trivial fix for QMP/qmp-events.txtHidetoshi Seto1-1/+1
Fix example of STOP event that was just copy-and-pasted. Signed-off-by: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com> Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2010-10-21curses: Fix control-{@[\]^_} and ESCSamuel Thibault2-3/+7
control-{@[\]^_} shouldn't get the 'a' - 'A' offset for correct translation. ESC is better simulated as escape key. Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org> Signed-off-by: Andrew Zaborowski <balrogg@gmail.com>
2010-10-21kvm: save/restore x86-64 MSRs on x86-64 kernelsMarcelo Tosatti1-10/+20
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
2010-10-21kvm: writeback SMP TSCs on migration onlyMarcelo Tosatti1-1/+9
commit 6389c45441269baa2873e6feafebd17105ddeaf6 Author: Jan Kiszka <jan.kiszka@siemens.com> Date: Mon Mar 1 18:17:26 2010 +0100 qemu-kvm: Cleanup/fix TSC and PV clock writeback Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
2010-10-21kvm: factor out kvm_has_msr_starMarcelo Tosatti1-11/+30
And add kvm_has_msr_hsave_pa(), to avoid warnings on older kernels without support. Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
2010-10-21kvm: add save/restore of MSR_VM_HSAVE_PAMarcelo Tosatti1-0/+5
commit 2bba4446746add456ceeb0e8359a43032a2ea333 Author: Alexander Graf <agraf@suse.de> Date: Thu Dec 18 15:38:32 2008 +0100 Enable nested SVM support in userspace Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
2010-10-21Fix build on !KVM_CAP_MCEHidetoshi Seto1-2/+3
This patch removes following warnings: target-i386/kvm.c: In function 'kvm_put_msrs': target-i386/kvm.c:782: error: unused variable 'i' target-i386/kvm.c: In function 'kvm_get_msrs': target-i386/kvm.c:1083: error: label at end of compound statement Signed-off-by: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com> Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
2010-10-21x86, mce: broadcast mce depending on the cpu versionHidetoshi Seto1-5/+24
There is no reason why SRAO event received by the main thread is the only one that being broadcasted. According to the x86 ASDM vol.3A 15.10.4.1, MCE signal is broadcast on processor version 06H_EH or later. This change is required to handle SRAR in smp guests. Signed-off-by: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com> Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
2010-10-21x86, mce: ignore SRAO only when MCG_SER_P is availableHidetoshi Seto1-6/+10
And restruct this block to call kvm_mce_in_exception() only when it is required. Signed-off-by: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com> Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
2010-10-20Fix pci hotplug to generate level triggered interrupt.Gleb Natapov1-11/+17
SCI is level triggered. pci hotplug should behave appropriately. Signed-off-by: Gleb Natapov <gleb@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2010-10-20Use defines instead of numbers for pci hotplug sts bitGleb Natapov1-2/+4
Signed-off-by: Gleb Natapov <gleb@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2010-10-20Fix memory leak in register save load due to xsave supportMarcelo Tosatti1-3/+8
From: Avi Kivity <avi@redhat.com> Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
2010-10-20Add savevm/loadvm support for MCEMarcelo Tosatti1-1/+38
Port qemu-kvm's commit 1bab5d11545d8de5facf46c28630085a2f9651ae Author: Huang Ying <ying.huang@intel.com> Date: Wed Mar 3 16:52:46 2010 +0800 Add savevm/loadvm support for MCE MCE registers are saved/load into/from CPUState in kvm_arch_save/load_regs. To simulate the MCG_STATUS clearing upon reset, MSR_MCG_STATUS is set to 0 for KVM_PUT_RESET_STATE. Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com> Signed-off-by: Avi Kivity <avi@redhat.com>