aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2011-06-03target-s390x: Add missing tcg_temp_free_i32()Stefan Weil
Signed-off-by: Stefan Weil <weil@mail.berlios.de> Signed-off-by: Alexander Graf <agraf@suse.de>
2011-06-03target-s390x: Add missing tcg_temp_free_i64() in disas_s390_insn(), opc == 0x90Stefan Weil
Signed-off-by: Stefan Weil <weil@mail.berlios.de> Signed-off-by: Alexander Graf <agraf@suse.de>
2011-06-03target-s390x: Add missing tcg_temp_free_i64() in disas_s390_insn(), opc == 0x8eStefan Weil
Signed-off-by: Stefan Weil <weil@mail.berlios.de> Signed-off-by: Alexander Graf <agraf@suse.de>
2011-06-03target-s390x: Add missing tcg_temp_free_i64() in disas_b2()Stefan Weil
Signed-off-by: Stefan Weil <weil@mail.berlios.de> Signed-off-by: Alexander Graf <agraf@suse.de>
2011-06-03target-s390x: Add missing tcg_temp_free_i64() in do_mh()Stefan Weil
Signed-off-by: Stefan Weil <weil@mail.berlios.de> Signed-off-by: Alexander Graf <agraf@suse.de>
2011-06-03target-s390x: Add missing tcg_temp_free_i64() in gen_jcc()Stefan Weil
Signed-off-by: Stefan Weil <weil@mail.berlios.de> Signed-off-by: Alexander Graf <agraf@suse.de>
2011-06-03target-s390x: Fix duplicate call of tcg_temp_new_i64Stefan Weil
tmp2 = tcg_temp_new_i64() is already executed unconditionally, so there is no need to call it a second time for 64 bit hosts. Signed-off-by: Stefan Weil <weil@mail.berlios.de> Signed-off-by: Alexander Graf <agraf@suse.de>
2011-06-03target-s390x: Fix wrong argument in call of tcg_gen_shl_i64()Stefan Weil
tcg_gen_shl_i64 needs a 3rd argument of type TCGv_i64. Set tmp4 so it can be used here. v2: Don't call tcg_const_i64() inside of the loop because it creates additional code. Signed-off-by: Stefan Weil <weil@mail.berlios.de> Signed-off-by: Alexander Graf <agraf@suse.de>
2011-06-03target-s390x: Fix build for non-linux hostsStefan Weil
linux/kvm.h is not always available for compilation. Neither linux/kvm.h nor kvm.h are needed, so remove both which also fixes the build problem for non-linux hosts. Cc: Alexander Graf <agraf@suse.de> Signed-off-by: Stefan Weil <weil@mail.berlios.de> Signed-off-by: Alexander Graf <agraf@suse.de>
2011-06-03s390x: update zipl romAlexander Graf
The zipl bootloader rom we have has seen some dramatic speedups upstream, so let's update it to improve the experience when booting a guest image. This binary is based on commit id 9a0842dd9823d529f721b418d554f17c72e009e3. Signed-off-by: Alexander Graf <agraf@suse.de>
2011-06-03PPC: fix mpc8544ds pci default devicesAlexander Graf
After the Qdev'ification of the MPC8544DS board and PCI bus, the internal PCI bus name changed from "pci" to "pci.0". Reflect this change in the search for that bus. This patch enables networking on e500 guests again. Signed-off-by: Alexander Graf <agraf@suse.de>
2011-06-03Fix segfault on screendump with -nographicAlexander Graf
When running -nographic and calling "screendump" on the monitor, qemu segfaults. Fix the invalid pointer dereference by checking for NULL. Signed-off-by: Alexander Graf <agraf@suse.de>
2011-06-03PPC: install mpc8544ds.dtbAlexander Graf
We don't install mpc8544ds.dtb, which means that -M mpc8544ds doesn't work when installed. Fix it by installing the file. Signed-off-by: Alexander Graf <agraf@suse.de>
2011-06-03PPC: fix sregs usage on bookeAlexander Graf
When compiling qemu with kvm support on BookE PPC machines, I get the following error: cc1: warnings being treated as errors /tmp/qemu/target-ppc/kvm.c: In function 'kvm_arch_get_registers': /tmp/qemu/target-ppc/kvm.c:188: error: unused variable 'sregs' This is due to overly ambitious #ifdef'ery introduced in 90dc88. Fix it by keeping code that doesn't depend on new headers alive for the compiler, but never executed due to failing capability checks. CC: Scott Wood <scottwood@freescale.com> Signed-off-by: Alexander Graf <agraf@suse.de>
2011-06-03ppc: Fix compilation for ppc64-softmmuStefan Weil
When QEMU was configured with --enable-debug-tcg, compilation fails in spr_write_booke206_mmucsr0() and in spr_write_booke_pid(). Similar changes are also needed in conditional code which is normally unused. Cc: Alexander Graf <agraf@suse.de> Signed-off-by: Stefan Weil <weil@mail.berlios.de> Signed-off-by: Alexander Graf <agraf@suse.de>
2011-06-01hw/9pfs: Don't crash when we get a request with not supported 9p operationAneesh Kumar K.V
Return EOPNOTSUPP as error Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com> Signed-off-by: Venkateswararao Jujjuri (JV) <jvrao@linux.vnet.ibm.com>
2011-06-01[virtio-9p] Make rpath thread safeVenkateswararao Jujjuri (JV)
Current rpath inline function is heavily used in all system calls. This function has a static buffer making it a non-thread safe function. This patch introduces new thread-safe routine and makes use of it. Signed-off-by: Venkateswararao Jujjuri "<jvrao@linux.vnet.ibm.com>
2011-06-01virtio-9p: Use relative includes for files in hwStefan Weil
Commit 353ac78d495ef976242abd868f68d78420861c2c moved the files without fixing the include paths. It used a modified CFLAGS to add hw to the include search path, but this breaks builds where the user wants to set special CFLAGS. Long include paths also increase compilation time. Therefore this patch removes the special CFLAGS for virtio and fixes the include statements by using relative include paths. v2: Remove special CFLAGS. v3: Update needed for latest QEMU. Signed-off-by: Stefan Weil <weil@mail.berlios.de> Signed-off-by: Venkateswararao Jujjuri (JV) <jvrao@linux.vnet.ibm.com>
2011-06-01virtio-9p: Move device specific code to virtio-9p-deviceAneesh Kumar K.V
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com> Signed-off-by: Venkateswararao Jujjuri (JV) <jvrao@linux.vnet.ibm.com>
2011-06-01virtio-9p: Move 9p device registration into virtio-9p.cAneesh Kumar K.V
This patch move the 9p device registration into its own file Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com> Signed-off-by: Venkateswararao Jujjuri (JV) <jvrao@linux.vnet.ibm.com>
2011-06-01virtio-9p: Don't link to 9p if virtio is not enabledAneesh Kumar K.V
If virtio is not enabled then we should not pull in virtfs files Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com> Signed-off-by: Venkateswararao Jujjuri (JV) <jvrao@linux.vnet.ibm.com>
2011-06-01[virtio-9p] Stop renaming files with similar name!Malahal Naineni
v9fs_complete_rename() mistakenly renames files with similar name as we don't check if the matched name is really an offspring. Signed-off-by: Malahal Naineni <malahal@us.ibm.com> Signed-off-by: Venkateswararao Jujjuri (JV) <jvrao@linux.vnet.ibm.com>
2011-06-01QMP: add server mode to QEMUMonitorProtocolStefan Hajnoczi
QEMU supports socket chardevs that establish connections like a server or a client. The QEMUMonitorProtocol class only supports connecting as a client. It is not possible to connect race-free when launching QEMU since trying to connect before QEMU has bound and is listening on the socket results in failure. Add the QEMUMonitorProtocol(server=True) argument to bind and listen on the socket. The QEMU process can then be launched and connects to the already existing QMP socket without a race condition: qmp = qmp.QEMUMonitorProtocol(monitor_path, server=True) popen = subprocess.Popen(args) qmp.accept() Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2011-06-01QMP: add get_events(wait=True) optionStefan Hajnoczi
The get_events() function polls for new QMP events and then returns. It can be useful to wait for the next QMP event so add the boolean 'wait' keyword argument. Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2011-06-01HMP: Use QMP inject nmi implementationLuiz Capitulino
This **CHANGES** the human monitor "nmi" command behavior. Currently it accepts an CPU argument which, when provided, will send the NMI to the specified CPU. This feature is of discussable value though and HMP shouldn't have more features than QMP, so let's use QMP's instead (it's also simpler). Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2011-06-01QMP: add inject-nmi qmp commandLai Jiangshan
inject-nmi command injects an NMI on all CPUs of guest. It is only supported for x86 guest currently, it will returns "Unsupported" error for non-x86 guest. Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2011-06-01QMP: QError: New QERR_UNSUPPORTEDLai Jiangshan
New QERR_UNSUPPORTED for unsupported commands or requests. Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2011-06-01kvm: Enable CPU SMEP featureYang, Wei Y
This patchset enables a new CPU feature SMEP (Supervisor Mode Execution Protection) in QEMU-KVM. SMEP prevents kernel from executing code in application. Updated Intel SDM describes this CPU feature. The document will be published soon. SMEP is identified by CPUID leaf 7 EBX[7], which is 0 before. Get the right value by query KVM kernel module, so that guest can get SMEP through CPUID. Signed-off-by: Yang, Wei <wei.y.yang@intel.com> Singed-off-by: Shan, Haitao <haitao.shan@intel.com> Singed-off-by: Li, Xin <xin.li@intel.com> Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
2011-06-01kvm: Add CPUID support for VIA CPUbrillywu@viatech.com.cn
When KVM is running on VIA CPU with host cpu's model, the feautures of VIA CPU will be passed into kvm guest by calling the CPUID instruction for Centaur. Signed-off-by: BrillyWu<brillywu@viatech.com.cn> Signed-off-by: KaryJin<karyjin@viatech.com.cn> Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
2011-06-01audio: fix integer overflow expressionJuha Riihim?ki
Fix an integer overflow that can happen for signed 32 bit types when using FLOAT_MIXENG. (Note that at the moment this is only true when using the MacOSX coreaudio audio driver.) Signed-off-by: Juha Riihim?ki <juha.riihimaki@nokia.com> [Peter Maydell: Removed unnecessary casts] Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: malc <av1474@comtv.ru>
2011-05-31target-alpha: Implement TLB flush primitives.Richard Henderson
Expose these via MTPR, more or less like the real HW does. Signed-off-by: Richard Henderson <rth@twiddle.net>
2011-05-31target-alpha: Use a fixed frequency for the RPCC in system mode.Richard Henderson
Also include the PCC_OFS in the return value. For user mode we can pretend the PCC_OFS value is always zero. Signed-off-by: Richard Henderson <rth@twiddle.net>
2011-05-31target-alpha: Trap for unassigned and unaligned addresses.Richard Henderson
Signed-off-by: Richard Henderson <rth@twiddle.net>
2011-05-31target-alpha: Remap PIO space for 43-bit KSEG for EV6.Richard Henderson
Signed-off-by: Richard Henderson <rth@twiddle.net>
2011-05-31target-alpha: Implement cpu_alpha_handle_mmu_fault for system mode.Richard Henderson
Reads the page table how PALcode would, except that the virtual page table base register is not used. Signed-off-by: Richard Henderson <rth@twiddle.net>
2011-05-31target-alpha: Implement more CALL_PAL values inline.Richard Henderson
In particular, SWPIPL is used quite a lot by the Linux kernel. Doing this inline makes it significantly easier to step through without the debugger getting confused by the mode switch. Signed-off-by: Richard Henderson <rth@twiddle.net>
2011-05-31target-alpha: Disable interrupts properly.Richard Henderson
Interrupts are disabled in PALmode, and when the PS IL is high enough. Signed-off-by: Richard Henderson <rth@twiddle.net>
2011-05-31target-alpha: All ISA checks to use TB->FLAGS.Richard Henderson
We had two different methods in use, both of which referenced ENV, and neither of which indicated to the generic code when different compilation modes are not compatible. Signed-off-by: Richard Henderson <rth@twiddle.net>
2011-05-31target-alpha: Swap shadow registers moving to/from PALmode.Richard Henderson
Signed-off-by: Richard Henderson <rth@twiddle.net>
2011-05-31target-alpha: Implement do_interrupt for system mode.Richard Henderson
Signed-off-by: Richard Henderson <rth@twiddle.net>
2011-05-31target-alpha: Add IPRs to be used by the emulation PALcode.Richard Henderson
These aren't actually used yet, but we can at least access them via the HW_MFPR and HW_MTPR instructions. Signed-off-by: Richard Henderson <rth@twiddle.net>
2011-05-31target-alpha: Use kernel mmu_idx for pal_mode.Richard Henderson
Signed-off-by: Richard Henderson <rth@twiddle.net>
2011-05-31target-alpha: Add various symbolic constants.Richard Henderson
The EXC_M_* constants were being set for the EV6, not as set for the Unix kernel entry point. Use PS_USER_MODE instead of hard-coding access to the PS register. Signed-off-by: Richard Henderson <rth@twiddle.net>
2011-05-31target-alpha: Use do_restore_state for arithmetic exceptions.Richard Henderson
This gets the PC right after an arithmetic exception. Also tidies the code in the TLB fault handlers to use common code. Signed-off-by: Richard Henderson <rth@twiddle.net>
2011-05-31target-alpha: Tidy up arithmetic exceptions.Richard Henderson
Introduce and use arith_excp, filling in the trap_arg[01] IPRs. Signed-off-by: Richard Henderson <rth@twiddle.net>
2011-05-31target-alpha: Tidy exception constants.Richard Henderson
There's no need to attempt to match EXCP_* values with PALcode entry point offsets. Instead, compress all the values to make for more efficient switch statements within QEMU. We will be doing TLB fill within QEMU proper, not within the PALcode, so all of the ITB/DTB miss, double fault, and access exceptions can be compressed to EXCP_MMFAULT. Compress all of the EXCP_CALL_PAL exceptions into one. Use env->error_code to store the specific entry point. Signed-off-by: Richard Henderson <rth@twiddle.net>
2011-05-31target-alpha: Enable the alpha-softmmu target.Richard Henderson
With all of the pre-existing code that would not compile gone, this is the earliest point at which the target can be enabled. There is no machine defined yet, so this will crash on startup. Enable the target anyway, to make sure that further compilation problems do not creep back in. Signed-off-by: Richard Henderson <rth@twiddle.net>
2011-05-31target-alpha: Rationalize internal processor registers.Richard Henderson
Delete all the code that tried to emulate the real IPRs of some unnamed CPU. Replace those with just 3 slots that we can use to communicate trap information between the helper functions that signal exceptions and the OS trap handler. Signed-off-by: Richard Henderson <rth@twiddle.net>
2011-05-31target-alpha: Merge HW_REI and HW_RET implementations.Richard Henderson
Signed-off-by: Richard Henderson <rth@twiddle.net>
2011-05-31target-alpha: Cleanup MMU modes.Richard Henderson
Don't bother including executive and supervisor modes. Signed-off-by: Richard Henderson <rth@twiddle.net>