- 14 3月, 2014 1 次提交
-
-
由 Andreas Färber 提交于
Reset them. Signed-off-by: NAndreas Färber <afaerber@suse.de>
-
- 10 3月, 2014 1 次提交
-
-
由 Peter Maydell 提交于
Implement WFE to yield our timeslice to the next CPU. This avoids slowdowns in multicore configurations caused by one core busy-waiting on a spinlock which can't possibly be unlocked until the other core has an opportunity to run. This speeds up my test case A15 dual-core boot by a factor of three (though it is still four or five times slower than a single-core boot). Signed-off-by: NPeter Maydell <peter.maydell@linaro.org> Message-id: 1393339545-22111-1-git-send-email-peter.maydell@linaro.org Reviewed-by: NRichard Henderson <rth@twiddle.net> Tested-by: NRob Herring <rob.herring@linaro.org>
-
- 07 10月, 2013 1 次提交
-
-
由 Andreas Färber 提交于
Since this is only read in cpu_copy() and linux-user has a global cpu_model, drop the field from generic code. Signed-off-by: NAndreas Färber <afaerber@suse.de>
-
- 23 7月, 2013 2 次提交
-
-
由 Andreas Färber 提交于
Prepares for changing gdb_register_coprocessor() argument to CPUState. Signed-off-by: NAndreas Färber <afaerber@suse.de>
-
由 Andreas Färber 提交于
Prepares for changing cpu_single_step() argument to CPUState. Acked-by: Michael Walle <michael@walle.cc> (for lm32) Signed-off-by: NAndreas Färber <afaerber@suse.de>
-
- 16 7月, 2013 1 次提交
-
-
由 Richard Henderson 提交于
All targets have been converted to allocating space for temporaries on the stack. No need to allocate space within the CPU_COMMON block. Signed-off-by: NRichard Henderson <rth@twiddle.net>
-
- 10 7月, 2013 1 次提交
-
-
由 Andreas Färber 提交于
Move next_cpu from CPU_COMMON to CPUState. Move first_cpu variable to qom/cpu.h. gdbstub needs to use CPUState::env_ptr for now. cpu_copy() no longer needs to save and restore cpu_next. Acked-by: NPaolo Bonzini <pbonzini@redhat.com> [AF: Rebased, simplified cpu_copy()] Signed-off-by: NAndreas Färber <afaerber@suse.de>
-
- 28 6月, 2013 1 次提交
-
-
由 Andreas Färber 提交于
While not normally needed for *-user, it can safely be used there since always based on uint64_t, to avoid ifdeffery. To avoid accidental uses, move the guards from exec/hwaddr.h to its inclusion sites. No need for them in include/hw/. Prepares for hwaddr use in qom/cpu.h. Signed-off-by: NAndreas Färber <afaerber@suse.de>
-
- 05 6月, 2013 1 次提交
-
-
由 Richard Henderson 提交于
Rather than a hand-coded version of the same thing. Reviewed-by: NAndreas Färber <afaerber@suse.de> Reviewed-by: Nliguang <lig.fnst@cn.fujitsu.com> Signed-off-by: NRichard Henderson <rth@twiddle.net>
-
- 18 4月, 2013 4 次提交
-
-
由 Paolo Bonzini 提交于
The alignment is a characteristic of the ABI, not the CPU. Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com> Signed-off-by: NEdgar E. Iglesias <edgar.iglesias@gmail.com>
-
由 Paolo Bonzini 提交于
Previously, this was done for target_long/ulong, and propagated to abi_long/ulong via a typedef. But target_long/ulong should not have any specific alignment, it is never used to access guest memory. Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com> Signed-off-by: NEdgar E. Iglesias <edgar.iglesias@gmail.com>
-
由 Paolo Bonzini 提交于
The alignment is a characteristic of the ABI, not the CPU. Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com> Signed-off-by: NEdgar E. Iglesias <edgar.iglesias@gmail.com>
-
由 Paolo Bonzini 提交于
The alignment is a characteristic of the ABI, not the CPU. Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com> Signed-off-by: NEdgar E. Iglesias <edgar.iglesias@gmail.com>
-
- 12 3月, 2013 1 次提交
-
-
由 Andreas Färber 提交于
Both fields are used in VMState, thus need to be moved together. Explicitly zero them on reset since they were located before breakpoints. Pass PowerPCCPU to kvmppc_handle_halt(). Signed-off-by: NAndreas Färber <afaerber@suse.de>
-
- 24 2月, 2013 1 次提交
-
-
由 Peter Maydell 提交于
The setjmp() function doesn't specify whether signal masks are saved and restored; on Linux they are not, but on BSD (including MacOSX) they are. We want to have consistent behaviour across platforms, so we should always use "don't save/restore signal mask" (this is also generally going to be faster). This also works around a bug in MacOSX where the signal-restoration on longjmp() affects the signal mask for a completely different thread, not just the mask for the thread which did the longjmp. The most visible effect of this was that ctrl-C was ignored on MacOSX because the CPU thread did a longjmp which resulted in its signal mask being applied to every thread, so that all threads had SIGINT and SIGTERM blocked. The POSIX-sanctioned portable way to do a jump without affecting signal masks is to siglongjmp() to a sigjmp_buf which was created by calling sigsetjmp() with a zero savemask parameter, so change all uses of setjmp()/longjmp() accordingly. [Technically POSIX allows sigsetjmp(buf, 0) to save the signal mask; however the following siglongjmp() must not restore the signal mask, so the pair can be effectively considered as "sigjmp/longjmp which don't touch the mask".] For Windows we provide a trivial sigsetjmp/siglongjmp in terms of setjmp/longjmp -- this is OK because no user will ever pass a non-zero savemask. The setjmp() uses in tests/tcg/test-i386.c and tests/tcg/linux-test.c are left untouched because these are self-contained singlethreaded test programs intended to be run under QEMU's Linux emulation, so they have neither the portability nor the multithreading issues to deal with. Signed-off-by: NPeter Maydell <peter.maydell@linaro.org> Reviewed-by: NRichard Henderson <rth@twiddle.net> Tested-by: NStefan Weil <sw@weilnetz.de> Reviewed-by: NLaszlo Ersek <lersek@redhat.com> Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
-
- 16 2月, 2013 4 次提交
-
-
由 Andreas Färber 提交于
Explictly NULL it on CPU reset since it was located before breakpoints. Change vapic_report_tpr_access() argument to CPUState. This also resolves the use of void* for cpu.h independence. Change vAPIC patch_instruction() argument to X86CPU. Signed-off-by: NAndreas Färber <afaerber@suse.de>
-
由 Andreas Färber 提交于
Since it was located before breakpoints field, it needs to be reset. Signed-off-by: NAndreas Färber <afaerber@suse.de>
-
由 Andreas Färber 提交于
Pass CPUState to cpu_exec_{start,end}() functions. Signed-off-by: NAndreas Färber <afaerber@suse.de>
-
由 Andreas Färber 提交于
Change gdbstub's cpu_index() argument to CPUState now that CPUArchState is no longer used. Signed-off-by: NAndreas Färber <afaerber@suse.de>
-
- 19 1月, 2013 1 次提交
-
-
由 Andreas Färber 提交于
Commit c64ca814 (cpu: Move queued_work_{first,last} to CPUState) moved the qemu_work_item fields away. Clean up the now unused prototype. Signed-off-by: NAndreas Färber <afaerber@suse.de> Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
-
- 15 1月, 2013 3 次提交
-
-
由 Andreas Färber 提交于
Note that target-alpha accesses this field from TCG, now using a negative offset. Therefore the field is placed last in CPUState. Pass PowerPCCPU to [kvm]ppc_fixup_cpu() to facilitate this change. Move common parts of mips cpu_state_reset() to mips_cpu_reset(). Acked-by: Richard Henderson <rth@twiddle.net> (for alpha) [AF: Rebased onto ppc CPU subclasses and openpic changes] Signed-off-by: NAndreas Färber <afaerber@suse.de>
-
由 Andreas Färber 提交于
Signed-off-by: NAndreas Färber <afaerber@suse.de>
-
由 Andreas Färber 提交于
To facilitate the field movements, pass MIPSCPU to malta_mips_config(); avoid that for mips_cpu_map_tc() since callers only access MIPS Thread Contexts, inside TCG helpers. Signed-off-by: NAndreas Färber <afaerber@suse.de>
-
- 19 12月, 2012 2 次提交
-
-
由 Paolo Bonzini 提交于
Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
-
由 Paolo Bonzini 提交于
Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
-
- 31 10月, 2012 6 次提交
-
-
由 Andreas Färber 提交于
Signed-off-by: NAndreas Färber <afaerber@suse.de>
-
由 Andreas Färber 提交于
Signed-off-by: NAndreas Färber <afaerber@suse.de>
-
由 Andreas Färber 提交于
Signed-off-by: NAndreas Färber <afaerber@suse.de>
-
由 Andreas Färber 提交于
Change its type to bool. Signed-off-by: NAndreas Färber <afaerber@suse.de>
-
由 Andreas Färber 提交于
Change its type to bool. Signed-off-by: NAndreas Färber <afaerber@suse.de>
-
由 Andreas Färber 提交于
Change its type to bool. Signed-off-by: NAndreas Färber <afaerber@suse.de>
-
- 23 10月, 2012 1 次提交
-
-
由 Avi Kivity 提交于
target_phys_addr_t is unwieldly, violates the C standard (_t suffixes are reserved) and its purpose doesn't match the name (most target_phys_addr_t addresses are not target specific). Replace it with a finger-friendly, standards conformant hwaddr. Outstanding patchsets can be fixed up with the command git rebase -i --exec 'find -name "*.[ch]" | xargs s/target_phys_addr_t/hwaddr/g' origin Signed-off-by: NAvi Kivity <avi@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
- 03 8月, 2012 3 次提交
-
-
由 Andreas Färber 提交于
Change field type to bool. Signed-off-by: NAndreas Färber <afaerber@suse.de>
-
由 Andreas Färber 提交于
Signed-off-by: NAndreas Färber <afaerber@suse.de>
-
由 Andreas Färber 提交于
CPU_COMMON_THREAD was only used for Windows, adding an hThread field to CPU_COMMON. Move the field into QOM CPUState and change its type to HANDLE, which it is assigned from. This requires Windows headers, pulled in through qemu-thread.h. Signed-off-by: NAndreas Färber <afaerber@suse.de>
-
- 16 4月, 2012 1 次提交
-
-
由 Stefan Weil 提交于
For w64, some entries need 'uintptr_t' instead of 'unsigned long'. For other host systems, both data types are identical, so nothing changes. Signed-off-by: NStefan Weil <sw@weilnetz.de>
-
- 14 4月, 2012 1 次提交
-
-
由 Blue Swirl 提交于
Use uintptr_t instead of void * or unsigned long in several op related functions, env->mem_io_pc and GETPC() macro. Reviewed-by: NStefan Weil <sw@weilnetz.de> Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
-
- 15 3月, 2012 1 次提交
-
-
由 Andreas Färber 提交于
Scripted conversion: for file in *.[hc] hw/*.[hc] hw/kvm/*.[hc] linux-user/*.[hc] linux-user/m68k/*.[hc] bsd-user/*.[hc] darwin-user/*.[hc] tcg/*/*.[hc] target-*/cpu.h; do sed -i "s/CPUState/CPUArchState/g" $file done All occurrences of CPUArchState are expected to be replaced by QOM CPUState, once all targets are QOM'ified and common fields have been extracted. Signed-off-by: NAndreas Färber <afaerber@suse.de> Reviewed-by: NAnthony Liguori <aliguori@us.ibm.com>
-
- 29 2月, 2012 1 次提交
-
-
由 Stefan Weil 提交于
HOST_LONG_SIZE is simply the size of a pointer value. There is no need for this macro. Signed-off-by: NStefan Weil <sw@weilnetz.de>
-
- 15 12月, 2011 1 次提交
-
-
由 Paolo Bonzini 提交于
On Windows, cpus.c needs access to the hThread. Add a Windows-specific function to grab it. This requires changing the CPU threads to joinable. There is no substantial change because the threads run in an infinite loop. Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-