sdk/emulator/qemu.git
15 years agoFix pmovsx* / pmovzx* SSE instructions (original fix by Frank Mehnert).
balrog [Mon, 1 Dec 2008 01:52:37 +0000 (01:52 +0000)]
Fix pmovsx* / pmovzx* SSE instructions (original fix by Frank Mehnert).

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5841 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoDon't try to select on an invalid VNC socket when init fails.
balrog [Mon, 1 Dec 2008 01:48:36 +0000 (01:48 +0000)]
Don't try to select on an invalid VNC socket when init fails.

Otherwise we get a segfault.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5840 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoqemu-img: open files with cache=writeback
aurel32 [Sun, 30 Nov 2008 19:12:49 +0000 (19:12 +0000)]
qemu-img: open files with cache=writeback

Data integrity is not important in qemu-img, so open the files with
cache=writeback. This fixes the performance regression seen with qemu-img
since revision 5485, and most particularly with the qcow2 format.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5839 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-ppc: remove unused file op_mem_access.h
aurel32 [Sun, 30 Nov 2008 17:54:28 +0000 (17:54 +0000)]
target-ppc: remove unused file op_mem_access.h

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5838 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-ppc: use ldl/ldub/stl/stub for load/store in op_helper.c
aurel32 [Sun, 30 Nov 2008 17:54:21 +0000 (17:54 +0000)]
target-ppc: use ldl/ldub/stl/stub for load/store in op_helper.c

Should not give any performance penality given cpu_mmu_index() is
an inline function returning a value from env.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5837 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-ppc: convert PPC 440 instructions to TCG
aurel32 [Sun, 30 Nov 2008 17:26:29 +0000 (17:26 +0000)]
target-ppc: convert PPC 440 instructions to TCG

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5836 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoSpelling and grammar fixes
aurel32 [Sun, 30 Nov 2008 16:25:37 +0000 (16:25 +0000)]
Spelling and grammar fixes

Minor fixes of spelling and grammar in comments and documentation

Signed-off-by: Stefan Weil <weil@mail.berlios.de>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5835 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoFix warning from sparse (wrong declaration)
aurel32 [Sun, 30 Nov 2008 16:25:17 +0000 (16:25 +0000)]
Fix warning from sparse (wrong declaration)

Fix data type (this fixes a warning from sparse)

Signed-off-by: Stefan Weil <weil@mail.berlios.de>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5834 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoFix warning from sparse
aurel32 [Sun, 30 Nov 2008 16:25:05 +0000 (16:25 +0000)]
Fix warning from sparse

Remove unnecessary declaration for errno (this fixes a warning from sparse)

Signed-off-by: Stefan Weil <weil@mail.berlios.de>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5833 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-ppc: convert return from interrupt instructions to TCG
aurel32 [Sun, 30 Nov 2008 16:24:55 +0000 (16:24 +0000)]
target-ppc: convert return from interrupt instructions to TCG

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5832 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-ppc: convert external load/store instructions to TCG
aurel32 [Sun, 30 Nov 2008 16:24:47 +0000 (16:24 +0000)]
target-ppc: convert external load/store instructions to TCG

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5831 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-ppc: convert load/store with reservation instructions to TCG
aurel32 [Sun, 30 Nov 2008 16:24:39 +0000 (16:24 +0000)]
target-ppc: convert load/store with reservation instructions to TCG

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5830 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-ppc: convert lscbx instruction to TCG
aurel32 [Sun, 30 Nov 2008 16:24:30 +0000 (16:24 +0000)]
target-ppc: convert lscbx instruction to TCG

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5829 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-ppc: convert load/store string instructions to TCG
aurel32 [Sun, 30 Nov 2008 16:24:21 +0000 (16:24 +0000)]
target-ppc: convert load/store string instructions to TCG

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5828 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-ppc: convert icbi instruction to TCG
aurel32 [Sun, 30 Nov 2008 16:24:13 +0000 (16:24 +0000)]
target-ppc: convert icbi instruction to TCG

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5827 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-ppc: convert dcbz instruction to TCG
aurel32 [Sun, 30 Nov 2008 16:24:05 +0000 (16:24 +0000)]
target-ppc: convert dcbz instruction to TCG

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5826 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-ppc: convert load/store multiple instructions to TCG
aurel32 [Sun, 30 Nov 2008 16:23:56 +0000 (16:23 +0000)]
target-ppc: convert load/store multiple instructions to TCG

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5825 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-ppc: convert wait instruction to TCG
aurel32 [Sun, 30 Nov 2008 16:23:46 +0000 (16:23 +0000)]
target-ppc: convert wait instruction to TCG

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5824 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-ppc: convert mfrom instruction to TCG
aurel32 [Sun, 30 Nov 2008 16:23:35 +0000 (16:23 +0000)]
target-ppc: convert mfrom instruction to TCG

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5823 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-ppc: remove dead code from op.c
aurel32 [Sun, 30 Nov 2008 16:23:25 +0000 (16:23 +0000)]
target-ppc: remove dead code from op.c

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5822 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agogdbstub: Fix access to PPC FPRs
aurel32 [Sun, 30 Nov 2008 16:23:18 +0000 (16:23 +0000)]
gdbstub: Fix access to PPC FPRs

Obviously, someone forgot to rebase the index before accessing one of
the 32 FPRs.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5821 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoCommon cpu_loop_exit prototype
aurel32 [Sun, 30 Nov 2008 16:23:09 +0000 (16:23 +0000)]
Common cpu_loop_exit prototype

All archs use the same cpu_loop_exit, so move the prototype in a common
header. i386 was carrying a __hidden attribute, but that was empty for
this arch anyway.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5820 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-ppc: convert software TLB instructions to TCG
aurel32 [Sun, 30 Nov 2008 16:22:56 +0000 (16:22 +0000)]
target-ppc: convert software TLB instructions to TCG

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5819 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoFix ICCS command (Herve Poussineau)
blueswir1 [Sun, 30 Nov 2008 10:24:13 +0000 (10:24 +0000)]
Fix ICCS command (Herve Poussineau)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5818 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoHandle SDL log just like other temporary files
malc [Sat, 29 Nov 2008 22:04:31 +0000 (22:04 +0000)]
Handle SDL log just like other temporary files

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5817 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoUse trap shell builtin to remove temporary files
malc [Sat, 29 Nov 2008 20:09:56 +0000 (20:09 +0000)]
Use trap shell builtin to remove temporary files

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5816 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoFix alignment of 64bit args
malc [Sat, 29 Nov 2008 19:55:15 +0000 (19:55 +0000)]
Fix alignment of 64bit args

Unbreaks sparc and mips64el. (Reported by Thiemo Seufer)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5815 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoFix 'enable selection' command (esp_4_ensel.diff)
blueswir1 [Sat, 29 Nov 2008 16:51:42 +0000 (16:51 +0000)]
Fix 'enable selection' command (esp_4_ensel.diff)
Indicate success after 'enable selection' command

Signed-off-by: Herve Poussineau <hpoussin@reactos.org>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5814 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoFix command len detection (esp_3_cmdlen.diff)
blueswir1 [Sat, 29 Nov 2008 16:51:02 +0000 (16:51 +0000)]
Fix command len detection (esp_3_cmdlen.diff)
When command is not DMA, TCMID and TCLO registers are not filled. Use command buffer len instead

Signed-off-by: Herve Poussineau <hpoussin@reactos.org>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5813 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoFix configuration 2 register (esp_2_cfg2.diff):
blueswir1 [Sat, 29 Nov 2008 16:48:29 +0000 (16:48 +0000)]
Fix configuration 2 register (esp_2_cfg2.diff):
According to http://www.ibiblio.org/pub/historic-linux/early-ports/Sparc/NCR/NCR53C9X.txt,
"Any bit pattern written to this register may be read back and should be identical"

Signed-off-by: Herve Poussineau <hpoussin@reactos.org>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5812 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoMisc fixes (Herve Poussineau)
blueswir1 [Sat, 29 Nov 2008 16:45:28 +0000 (16:45 +0000)]
Misc fixes (Herve Poussineau)
- Fix internal fifo size (16 bytes), according to http://www.ibiblio.org/pub/historic-linux/early-ports/Sparc/NCR/NCR53C9X.txt
- Fix values of STAT_MI and STAT_MO
- Give a scsi ID to adapter, and prevent this ID to be used by devices
- Prevent fifo overrun in esp_mem_writeb
- Add a ESP_ERROR macro, and use it where appropriate

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5811 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoDon't rely on the fact that MAX_FD is 2 (Herve Poussineau)
blueswir1 [Sat, 29 Nov 2008 16:42:40 +0000 (16:42 +0000)]
Don't rely on the fact that MAX_FD is 2 (Herve Poussineau)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5810 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoPrepare for handling different BSD mmap() flags
blueswir1 [Sat, 29 Nov 2008 14:05:16 +0000 (14:05 +0000)]
Prepare for handling different BSD mmap() flags

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5809 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoFix comment typo.
pbrook [Sat, 29 Nov 2008 13:33:23 +0000 (13:33 +0000)]
Fix comment typo.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5808 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoqemu-doc.texi: rewrite the documentation for the -net option
aurel32 [Fri, 28 Nov 2008 11:17:43 +0000 (11:17 +0000)]
qemu-doc.texi: rewrite the documentation for the -net option

Addresses comments from Jamie Lokier.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5807 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoqemu-doc.texi: document downscript network option
aurel32 [Fri, 28 Nov 2008 10:11:17 +0000 (10:11 +0000)]
qemu-doc.texi: document downscript network option

From Guido Günther, through the Debian BTS.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5806 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-ppc: convert POWER2 load/store instructions to TCG
aurel32 [Thu, 27 Nov 2008 19:30:56 +0000 (19:30 +0000)]
target-ppc: convert POWER2 load/store instructions to TCG

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5805 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-ppc: convert SPE load/store to TCG
aurel32 [Thu, 27 Nov 2008 19:30:47 +0000 (19:30 +0000)]
target-ppc: convert SPE load/store to TCG

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5804 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-ppc: simplify evsplati and evsplatfi
aurel32 [Thu, 27 Nov 2008 19:30:38 +0000 (19:30 +0000)]
target-ppc: simplify evsplati and evsplatfi

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5803 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agolinux-user: Add support for STOP/CONT signals.
ths [Thu, 27 Nov 2008 15:47:15 +0000 (15:47 +0000)]
linux-user: Add support for STOP/CONT signals.

Signed-off-by: Riku Voipio <riku.voipio@iki.fi>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5802 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agolinux-user: sig is target signal.
ths [Thu, 27 Nov 2008 15:46:25 +0000 (15:46 +0000)]
linux-user: sig is target signal.

Signed-off-by: Riku Voipio <riku.voipio@iki.fi>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5801 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoMake installing bios files optional.
ths [Thu, 27 Nov 2008 15:45:16 +0000 (15:45 +0000)]
Make installing bios files optional.

Signed-off-by: Riku Voipio <riku.voipio@iki.fi>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5800 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoUse sys-queue.h for break/watchpoint managment (Jan Kiszka)
aliguori [Tue, 25 Nov 2008 22:13:57 +0000 (22:13 +0000)]
Use sys-queue.h for break/watchpoint managment (Jan Kiszka)

This switches cpu_break/watchpoint_* to TAILQ wrappers, simplifying the
code and also fixing a use after release issue in
cpu_break/watchpoint_remove_all.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5799 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoAdd TAILQ_FOREACH_SAFE (Jan Kiszka)
aliguori [Tue, 25 Nov 2008 22:05:37 +0000 (22:05 +0000)]
Add TAILQ_FOREACH_SAFE (Jan Kiszka)

Add TAILQ iterator that allows to safely remove elements while walking
the list.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5798 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoAbstract out geometry detection code from IDE for reuse
aliguori [Tue, 25 Nov 2008 21:50:24 +0000 (21:50 +0000)]
Abstract out geometry detection code from IDE for reuse

Virtio will want to use the geometry detection code.  It doesn't belong
in ide.c anyway.

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5797 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoRevert r5636 to fix icount on hosts w/o high-res clocks
aliguori [Tue, 25 Nov 2008 17:26:09 +0000 (17:26 +0000)]
Revert r5636 to fix icount on hosts w/o high-res clocks

Changeset r5636 changed the timers to run in the alarm callback.  The
alarm callback can only be called as frequently as the host alarm timer
fires.  For older Linux hosts and possibly non-Linux hosts, this can be
as high as a 1ms granularity.

icount calculates the select timeout based on the next deadline and
select is usually capable of sleeping for a short period of time than
alarm timer granularity.  This means that changing the timer callbacks
to be based on alarm firing caused timers to fire much later than they
ought to when using icount.

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5796 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoi386: remove unused function prototypes (Laurent Desnogues)
aliguori [Tue, 25 Nov 2008 17:19:45 +0000 (17:19 +0000)]
i386: remove unused function prototypes (Laurent Desnogues)

This patch removes two unused prototypes from i386 target exec.h file.

Signed-off-by: Laurent Desnogues <laurent.desnogues@gmail.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5795 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoFix usb-stub compilation
blueswir1 [Tue, 25 Nov 2008 16:49:33 +0000 (16:49 +0000)]
Fix usb-stub compilation

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5794 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agovga optimization (Glauber Costa)
aliguori [Mon, 24 Nov 2008 20:21:41 +0000 (20:21 +0000)]
vga optimization (Glauber Costa)

Hypervisors like KVM perform badly while doing mmio on
a loop, because it'll generate an exit on each access.
This is the case with VGA, which results in very bad
performance.

In this patch, we map the linear frame buffer as RAM,
make sure it has dirty region tracking enabled, and then
just let the region to be written.

Cleanups suggestions by:
  Stefano Stabellini <stefano.stabellini@eu.citrix.com>

Signed-off-by: Glauber Costa <glommer@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5793 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agokvm: Introduce kvm logging interface (Glauber Costa)
aliguori [Mon, 24 Nov 2008 19:36:26 +0000 (19:36 +0000)]
kvm: Introduce kvm logging interface (Glauber Costa)

Introduce functions to control logging of memory regions.
We select regions based on its start address, a
guest_physical_addr (target_phys_addr_t, in qemu nomenclature).

The main user of this interface right now is VGA optimization
(a way of reducing the number of mmio exits).

Signed-off-by: Glauber Costa <glommer@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5792 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agomove vga_io_address to VGA State (Glauber Costa)
aliguori [Mon, 24 Nov 2008 19:35:16 +0000 (19:35 +0000)]
move vga_io_address to VGA State (Glauber Costa)

It'll be reused later by the vga optimization.

Signed-off-by: Glauber Costa <glommer@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5791 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agobetter type checking for vga (Glauber Costa)
aliguori [Mon, 24 Nov 2008 19:33:59 +0000 (19:33 +0000)]
better type checking for vga (Glauber Costa)

unsigned long is too bad of a type. Use ram_addr_t instead.

aligurori: fixed a compile warning in this patch

Signed-off-by: Glauber Costa <glommer@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5790 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoIntroduce accessors for DisplayState (Stefano Stabellini)
aliguori [Mon, 24 Nov 2008 19:29:13 +0000 (19:29 +0000)]
Introduce accessors for DisplayState (Stefano Stabellini)

Introducing some accessors:

ds_get_linesize
ds_get_bits_per_pixel
ds_get_width
ds_get_height
ds_get_data

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5789 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-ppc: convert trap instructions to TCG
aurel32 [Mon, 24 Nov 2008 11:28:19 +0000 (11:28 +0000)]
target-ppc: convert trap instructions to TCG

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5788 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-ppc: convert altivec load/store to TCG
aurel32 [Mon, 24 Nov 2008 08:47:21 +0000 (08:47 +0000)]
target-ppc: convert altivec load/store to TCG

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5787 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-ppc: convert FPU load/store to TCG
aurel32 [Sun, 23 Nov 2008 16:30:50 +0000 (16:30 +0000)]
target-ppc: convert FPU load/store to TCG

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5786 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-ppc: fix access_type usage
aurel32 [Sun, 23 Nov 2008 16:30:40 +0000 (16:30 +0000)]
target-ppc: fix access_type usage

Write env->access_type before a load/store operation instead of relying
on the name of the dyngen operation.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5785 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-ppc: include the instruction name in load/store handlers name
aurel32 [Sun, 23 Nov 2008 16:30:28 +0000 (16:30 +0000)]
target-ppc: include the instruction name in load/store handlers name

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5784 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-ppc: convert SPE FP ops to TCG
aurel32 [Sun, 23 Nov 2008 10:54:04 +0000 (10:54 +0000)]
target-ppc: convert SPE FP ops to TCG

Including a few bug fixes:
- Don't clear high part for instruction with 32-bit destination
- Fix efscmp* and etstcmp* return value

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5783 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoFix typo reported by Thiemo Seufer
blueswir1 [Sun, 23 Nov 2008 07:27:59 +0000 (07:27 +0000)]
Fix typo reported by Thiemo Seufer

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5782 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-ppc: remove declaration of removed function from op_helper.h
aurel32 [Sat, 22 Nov 2008 21:27:36 +0000 (21:27 +0000)]
target-ppc: remove declaration of removed function from op_helper.h

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5781 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoNative BSD host USB support (Juergen Lock, Lonnie Mendez)
blueswir1 [Sat, 22 Nov 2008 21:03:55 +0000 (21:03 +0000)]
Native BSD host USB support (Juergen Lock, Lonnie Mendez)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5780 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoNative FreeBSD parallel port (Juergen Lock)
blueswir1 [Sat, 22 Nov 2008 20:49:12 +0000 (20:49 +0000)]
Native FreeBSD parallel port (Juergen Lock)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5779 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoUse MAP_ANON also for FreeBSD (Juergen Lock)
blueswir1 [Sat, 22 Nov 2008 20:43:01 +0000 (20:43 +0000)]
Use MAP_ANON also for FreeBSD (Juergen Lock)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5778 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoFix BSD user compilation on other than OpenBSD
blueswir1 [Sat, 22 Nov 2008 20:34:45 +0000 (20:34 +0000)]
Fix BSD user compilation on other than OpenBSD

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5777 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoFix some compile and linking issues on NetBSD.
blueswir1 [Sat, 22 Nov 2008 20:24:29 +0000 (20:24 +0000)]
Fix some compile and linking issues on NetBSD.

- adapt configure to link against -lrt to fix aio linking errors
- adapt configure to link against -lossaudio to fix oss linking errors

Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5776 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoAdd native softfloat fpu functions (Christoph Egger)
blueswir1 [Sat, 22 Nov 2008 20:17:37 +0000 (20:17 +0000)]
Add native softfloat fpu functions (Christoph Egger)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5775 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoUse qemu_isfoobar and qemu_towombat versions, based on patch by Christoph Egger
blueswir1 [Sat, 22 Nov 2008 20:04:24 +0000 (20:04 +0000)]
Use qemu_isfoobar and qemu_towombat versions, based on patch by Christoph Egger

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5774 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-sh4: fix 64-bit fmov to/from memory
aurel32 [Sat, 22 Nov 2008 10:09:27 +0000 (10:09 +0000)]
target-sh4: fix 64-bit fmov to/from memory

When loading/storing a register pair, the even-numbered register
always maps to the low 32 bits of memory independently of target
endian configuration.

Signed-off-by: Mans Rullgard <mans@mansr.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5773 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-ppc: convert exceptions generation to TCG
aurel32 [Sat, 22 Nov 2008 10:09:17 +0000 (10:09 +0000)]
target-ppc: convert exceptions generation to TCG

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5772 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-alpha: use CPU_Float/CPU_Double instead of ugly casts
aurel32 [Fri, 21 Nov 2008 23:49:40 +0000 (23:49 +0000)]
target-alpha: use CPU_Float/CPU_Double instead of ugly casts

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5771 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-sh4: fix TLB/MMU emulation
aurel32 [Fri, 21 Nov 2008 22:33:15 +0000 (22:33 +0000)]
target-sh4: fix TLB/MMU emulation

Based on a patch from Vladimir Prus and comments from Shin-ichiro KAWASAKI.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5770 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoSH4: Switch serial emulation to qemu_irq
aurel32 [Fri, 21 Nov 2008 21:06:51 +0000 (21:06 +0000)]
SH4: Switch serial emulation to qemu_irq

This patches makes SH serial emulation use qemu_irq in its interface.

        * hw/sh.h (sh_serial_init): Take qemu_irq, not intc_source.
        * hw/sh7750.c (sh7750_init): Adjust.
        * hw/sh_intc.c (sh_intc_set_irq): Don't assert or deassert
        irq more than once.
        * hw/sh_serial.c (sh_serial_state): Use qemu_irq, not intc_source.
        (sh_serial_clear_fifo, sh_serial_ioport_write)
        (sh_serial_receive_byte): Adjust.
        (sh_serial_init): Take qemu_irq, not intc_source.

(Vladimir Prus)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5769 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoSH4: Use qemu_irq in timer emulation.
aurel32 [Fri, 21 Nov 2008 21:06:42 +0000 (21:06 +0000)]
SH4: Use qemu_irq in timer emulation.

        * hw/sh.h (tmu012_init): Accept qemu_irq, not intc_source.
        * hw/sh7750.c (sh7750_init): Pass qemu_irq to tmu012_init.
        * hw/sh_intc.c (sh_intc_set_irq): New.
        (sh_intc_init): Allocate irqs.
        * hw/sh_intc.h (struct intc_desc): New field irqs.
        * hw/sh_timer.c (sh_timer_state): Use qemu_irq, not intc_source.
        (sh_timer_update): Use qemu_set_irq, not sh_intc_toggle_source.
        (sh_timer_init, tmu012_init): Adjust.

(Vladimir Prus)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5768 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoCRIS: remove unused op_template.h.
edgar_igl [Fri, 21 Nov 2008 17:26:23 +0000 (17:26 +0000)]
CRIS: remove unused op_template.h.

Remove unused file, reported by Laurent Desnogues.

Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5767 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoe1000 VLAN offload emulation (Alex Williamson)
aliguori [Fri, 21 Nov 2008 16:25:17 +0000 (16:25 +0000)]
e1000 VLAN offload emulation (Alex Williamson)

We're currently ignoring the e1000 VLAN tagging, stripping and filtering
features in the e1000 emulation.  This patch adds backing for the
relevant registers and provides a software implementation of the
acceleration, such that a guest can make use of VLANs.

This is mostly (only?) useful for a guest on a bridge (not user mode
networking).  The only caveat beyond that is that you need to make sure
the host NIC isn't doing it's own tagging, stripping, or filtering.
This generally means the host NIC on the bridge should not be part of a
VLAN.

Signed-off-by: Alex Williamson <alex.williamson@hp.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5766 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agouImage: only try to load 'kernel' images (Hollis Blanchard)
aliguori [Thu, 20 Nov 2008 22:15:46 +0000 (22:15 +0000)]
uImage: only try to load 'kernel' images (Hollis Blanchard)

Loading other image types (e.g. IH_TYPE_MULTI, IH_TYPE_FLATDT) is not
implemented.

IH_TYPE_STANDALONE images could be loaded, but would unexpectedly fail if they
tried to use any uboot services.

Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5765 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agouImage: rename load_uboot() to load_uimage() (Hollis Blanchard)
aliguori [Thu, 20 Nov 2008 22:14:40 +0000 (22:14 +0000)]
uImage: rename load_uboot() to load_uimage() (Hollis Blanchard)

u-boot is a firmware. uImage is an executable file format.

Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5764 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agouImage: return base load address (Hollis Blanchard)
aliguori [Thu, 20 Nov 2008 22:11:52 +0000 (22:11 +0000)]
uImage: return base load address (Hollis Blanchard)

Return the base address at which the image was loaded so that callers may keep
track of currently occupied guest memory.

This will be required by the PPC 440 embedded code to avoid hard coding a
device model/initrd location.  Other users of this function could make use of
this parameter to avoid hard coding these locations in the future too.

Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5763 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agouImage: implement gzip support (Hollis Blanchard)
aliguori [Thu, 20 Nov 2008 22:04:01 +0000 (22:04 +0000)]
uImage: implement gzip support (Hollis Blanchard)

Based on gzip uImage loading code from u-boot.

Signed-off-by: Jerone Young <jyoung5@us.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5762 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agouImage: don't leak file data or file descriptor (Hollis Blanchard)
aliguori [Thu, 20 Nov 2008 22:02:56 +0000 (22:02 +0000)]
uImage: don't leak file data or file descriptor (Hollis Blanchard)

Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5761 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoFix typo when using TARGET_FMT_plx and LSI_DEBUG (Ryan Harper)
aliguori [Thu, 20 Nov 2008 16:46:21 +0000 (16:46 +0000)]
Fix typo when using TARGET_FMT_plx and LSI_DEBUG (Ryan Harper)

TARGET_FMT_plx includes a % for you.  This fixes the following warning when
compiling with LSI_DEBUG enabled.

Signed-off-by: Ryan Harper <ryanh@us.ibm.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5760 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-sh4: fix fldi0/fldi1
aurel32 [Thu, 20 Nov 2008 06:41:29 +0000 (06:41 +0000)]
target-sh4: fix fldi0/fldi1

fldi0/fldi1 should be executed as a nop if FPSCR.FR is set instead of
generating an exception. Reported by Laurent Desnogues.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5759 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-sh4: map FP registers as TCG variables
aurel32 [Wed, 19 Nov 2008 18:00:47 +0000 (18:00 +0000)]
target-sh4: map FP registers as TCG variables

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5758 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-sh4: use CPU_Float/CPU_Double instead of ugly casts
aurel32 [Wed, 19 Nov 2008 18:00:39 +0000 (18:00 +0000)]
target-sh4: use CPU_Float/CPU_Double instead of ugly casts

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5757 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-ppc: fix TCG type errors introduced in r5754
aurel32 [Wed, 19 Nov 2008 17:54:49 +0000 (17:54 +0000)]
target-ppc: fix TCG type errors introduced in r5754

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5756 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoMake KVMSlot a real structure
aliguori [Wed, 19 Nov 2008 17:41:58 +0000 (17:41 +0000)]
Make KVMSlot a real structure

struct kvm_userspace_memory_region does not use QEMU friendly types to
define memory slots.  This results in lots of ugly casting with warnings
on 32-bit platforms.

This patch introduces a proper KVMSlot structure that uses QEMU types to
describe memory slots.  This eliminates many of the casts and isolates
the type conversions to one spot.

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5755 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agotarget-ppc: convert fp ops to TCG
aurel32 [Wed, 19 Nov 2008 16:10:23 +0000 (16:10 +0000)]
target-ppc: convert fp ops to TCG

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5754 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agokvm: de-register mem region for MMIO (Glauber Costa)
aliguori [Wed, 19 Nov 2008 15:09:54 +0000 (15:09 +0000)]
kvm: de-register mem region for MMIO (Glauber Costa)

Besides unassigned memory, we also don't care about MMIO.
So if we're giving an MMIO area that is already registered,
wipe it out.

Signed-off-by: Glauber Costa <glommer@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5753 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoFix media detection on emulated CDROM (Gary Grebus)
aliguori [Wed, 19 Nov 2008 15:03:36 +0000 (15:03 +0000)]
Fix media detection on emulated CDROM (Gary Grebus)

This patch tweaks the ATAPI CDROM emulation to fix an annoyance seen
when running a variety of Linux guests: the desktop GUI shows a CDROM
device as present, but is unable to automount the media and display its
contents.

The patch adds the PLAY_AUDIO capability bit to the data returned by
MODE_SENSE commands.  That convinces the guest kernel to determine what
kind of media is present.

Arguably Linux could be smarter about this, but it's my guess there are
few (if any) hardware CDROM drives that don't set the bit, and there are
a large number of Linux distros that exhibit this problem.

Signed-off-by: Gary Grebus <ggrebus@virtualiron.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5752 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoOnly force inlining when optimizing.
pbrook [Wed, 19 Nov 2008 01:31:52 +0000 (01:31 +0000)]
Only force inlining when optimizing.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5751 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoAdd 40-bit DMA support to LSI scsi emulation (Ryan Harper)
aliguori [Tue, 18 Nov 2008 22:00:43 +0000 (22:00 +0000)]
Add 40-bit DMA support to LSI scsi emulation (Ryan Harper)

This patch fixes Linux machines configured with > 4G of ram and using a
SCSI device.

Signed-off-by: Ryan Harper <ryanh@us.ibm.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5750 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoFix Windows build
aliguori [Tue, 18 Nov 2008 21:52:54 +0000 (21:52 +0000)]
Fix Windows build

ENOBUFS is not defined on Win32.  Use ENOMEM instead which is more portable.

This was reported by Hervé Poussineau.

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5749 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agox86: Dump debug registers (Jan Kiszka)
aliguori [Tue, 18 Nov 2008 21:09:47 +0000 (21:09 +0000)]
x86: Dump debug registers (Jan Kiszka)

As the debug registers are no longer dummies, let's include their
current state into the 'info registers' output and other register dumps.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5748 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agox86: Debug register emulation (Jan Kiszka)
aliguori [Tue, 18 Nov 2008 21:08:15 +0000 (21:08 +0000)]
x86: Debug register emulation (Jan Kiszka)

Built on top of previously enhanced breakpoint/watchpoint support, this
patch adds full debug register emulation for the x86 architecture.

Many corner cases were considered, and the result was successfully
tested inside a Linux guest with gdb, but I won't be surprised if one
or two scenarios still behave differently in reality.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5747 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoIntroduce BP_CPU as a breakpoint type (Jan Kiszka)
aliguori [Tue, 18 Nov 2008 20:56:59 +0000 (20:56 +0000)]
Introduce BP_CPU as a breakpoint type (Jan Kiszka)

Add another breakpoint/watchpoint type to BP_GDB: BP_CPU. This type is
intended for hardware-assisted break/watchpoint emulations like the x86
architecture requires.

To keep the highest priority for BP_GDB breakpoints, this type is
always inserted at the head of break/watchpoint lists, thus is found
first when looking up the origin of a debug interruption.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5746 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoAdd debug exception hook (Jan Kiszka)
aliguori [Tue, 18 Nov 2008 20:50:36 +0000 (20:50 +0000)]
Add debug exception hook (Jan Kiszka)

This patch allows to hook into the delivery of EXCP_DEBUG so that other
use beyond guest debugging becomes possible.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5745 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoIntroduce BP_WATCHPOINT_HIT flag (Jan Kiszka)
aliguori [Tue, 18 Nov 2008 20:37:55 +0000 (20:37 +0000)]
Introduce BP_WATCHPOINT_HIT flag (Jan Kiszka)

When one watchpoint is hit, others might have triggered as well. To
support users of the watchpoint API which need to detect such cases,
the BP_WATCHPOINT_HIT flag is introduced and maintained.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5744 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agogdbstub: manage CPUs as threads (Jan Kiszka)
aliguori [Tue, 18 Nov 2008 20:30:24 +0000 (20:30 +0000)]
gdbstub: manage CPUs as threads (Jan Kiszka)

This patch enhances QEMU's built-in debugger for SMP guest debugging.
Using the thread support of the gdb remote protocol, each VCPU is mapped
on a pseudo thread and exposed to the gdb frontend. This way you can
easy switch the focus of gdb between the VCPUs and observe their states.
On breakpoint hit, the focus is automatically adjusted just as for
normal multi-threaded application under gdb control.

Furthermore, the patch propagates breakpoint and watchpoint insertions
or removals to all CPUs, not just the current one as it was the case so
far. Without this, SMP guest debugging was practically unfeasible.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5743 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoRemove premature memop TB terminations (Jan Kiszka)
aliguori [Tue, 18 Nov 2008 20:26:41 +0000 (20:26 +0000)]
Remove premature memop TB terminations (Jan Kiszka)

Now that we can properly restore the pc on watchpoint hits, there is no
more need for prematurely terminating TBs if watchpoints are present.
Remove all related bits.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5742 c046a42c-6fe2-441c-8c8c-71466251a162