aliguori [Thu, 5 Feb 2009 22:05:49 +0000 (22:05 +0000)]
Terminate emulation on memory allocation failure (Avi Kivity)
Memory allocation failures are a very rare condition on virtual-memory
hosts. They are also very difficult to handle correctly (especially in a
hardware emulation context). Because of this, it is better to gracefully
terminate emulation rather than executing untested or even unwritten recovery
code paths.
This patch changes the qemu memory allocation routines to terminate emulation
if an allocation failure is encountered.
Signed-off-by: Avi Kivity <avi@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6526
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Thu, 5 Feb 2009 21:24:02 +0000 (21:24 +0000)]
Convert IDE to use new dma helpers (Avi Kivity)
Use the new dma block helpers to perform dma disk I/O.
Signed-off-by: Avi Kivity <avi@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6525
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Thu, 5 Feb 2009 21:23:58 +0000 (21:23 +0000)]
Introduce block dma helpers (Avi Kivity)
These helpers perform read/write requests on entire scatter/gather lists,
relieving the device emulation code from mapping and unmapping physical
memory, and from looping when map resources are exhausted.
Signed-off-by: Avi Kivity <avi@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6524
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Thu, 5 Feb 2009 21:23:54 +0000 (21:23 +0000)]
Add qemu_iovec_reset() (Avi Kivity)
Add a helper to zero out an existing iovec. Removes the need to deallocate
and reallocate it.
Signed-off-by: Avi Kivity <avi@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6523
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Thu, 5 Feb 2009 21:23:50 +0000 (21:23 +0000)]
Add a scatter-gather list type and accessors (Avi Kivity)
Scatter-gather lists are used extensively in dma-capable devices; a
single data structure allows more code reuse later on.
Signed-off-by: Avi Kivity <avi@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6522
c046a42c-6fe2-441c-8c8c-
71466251a162
blueswir1 [Thu, 5 Feb 2009 20:22:07 +0000 (20:22 +0000)]
Add debug, savevm and reset support for UniNorth
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6521
c046a42c-6fe2-441c-8c8c-
71466251a162
blueswir1 [Thu, 5 Feb 2009 20:20:29 +0000 (20:20 +0000)]
Use qemu_ram_alloc
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6520
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Thu, 5 Feb 2009 13:42:57 +0000 (13:42 +0000)]
target-ppc: add vrlogefp instruction
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6519
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Thu, 5 Feb 2009 13:42:47 +0000 (13:42 +0000)]
soft-float: add float32_log2() and float64_log2()
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6518
c046a42c-6fe2-441c-8c8c-
71466251a162
malc [Wed, 4 Feb 2009 20:39:09 +0000 (20:39 +0000)]
Properly initialize len argument of sysctl and include stdio.h (perror)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6517
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Wed, 4 Feb 2009 14:08:08 +0000 (14:08 +0000)]
target-ppc: fix previous commit
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6516
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Wed, 4 Feb 2009 13:52:39 +0000 (13:52 +0000)]
target-ppc: use the new float constants
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6515
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Wed, 4 Feb 2009 13:52:27 +0000 (13:52 +0000)]
softfloat: add a 1.0 constant for float32 and float64
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6514
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Wed, 4 Feb 2009 13:52:17 +0000 (13:52 +0000)]
Add vcf{u,s}x instructions
Signed-off-by: Nathan Froyd <froydnj@codesourcery.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6513
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Wed, 4 Feb 2009 13:52:03 +0000 (13:52 +0000)]
Add vrfi{m,n,p,z} instructions
Signed-off-by: Nathan Froyd <froydnj@codesourcery.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6512
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Wed, 4 Feb 2009 09:05:53 +0000 (09:05 +0000)]
Add various NaN-handling macros
These simplify the implementation of the floating-point Altivec
instructions and reduce clutter.
Signed-off-by: Nathan Froyd <froydnj@codesourcery.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6511
c046a42c-6fe2-441c-8c8c-
71466251a162
edgar_igl [Tue, 3 Feb 2009 23:06:34 +0000 (23:06 +0000)]
Partialy fix mmap at EOF for large pagesize targets in user-mode.
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6510
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Tue, 3 Feb 2009 22:45:00 +0000 (22:45 +0000)]
Remove accidental addition of local patch.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6509
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Tue, 3 Feb 2009 19:56:09 +0000 (19:56 +0000)]
Make mtvscr use a helper
Do this so we can set float statuses once per mtvscr, rather than once
per Altivec instruction.
Signed-off-by: Nathan Froyd <froydnj@codesourcery.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6508
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Tue, 3 Feb 2009 19:55:59 +0000 (19:55 +0000)]
Add calls to initialize VSCR on appropriate machines
Signed-off-by: Nathan Froyd <froydnj@codesourcery.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6507
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Tue, 3 Feb 2009 19:55:51 +0000 (19:55 +0000)]
Rename spe_status to vec_status
Only one of Altivec and SPE will be available on a given chip.
Signed-off-by: Nathan Froyd <froydnj@codesourcery.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6506
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Tue, 3 Feb 2009 19:55:43 +0000 (19:55 +0000)]
Add f field to ppc_avr_t
Signed-off-by: Nathan Froyd <froydnj@codesourcery.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6505
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Tue, 3 Feb 2009 19:55:35 +0000 (19:55 +0000)]
SH4: Fix warning when compiling sh7750_regnames.c
This patch fixes a warning when compiling sh7750_regnames.c which is
caused by sh7750_regnames.h (which contains the prototype of regname())
not being included.
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6504
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Tue, 3 Feb 2009 19:55:26 +0000 (19:55 +0000)]
linux-user: Remove incorrect break;
Reported-By: Laurent Desnogues <laurent.desnogues@gmail.com>
Signed-off-by: Riku Voipio <riku.voipio@iki.fi>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6503
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Tue, 3 Feb 2009 19:55:13 +0000 (19:55 +0000)]
Fix compilation of PPC64 targets with DEBUG_TCGV enabled
The attached patch fixes compilation of PPC64 targets with DEBUG_TCGV
enabled.
Signed-off-by: Stuart Brady <stuart.brady@gmail.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6502
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 2 Feb 2009 17:10:57 +0000 (17:10 +0000)]
Add phenom CPU descriptor (Alexander Graf)
As part of my ongoing effort to make nested SVM useful, I started working to get
VMware ESX run inside KVM.
VMware couples itself pretty tightly to the CPUID, so it's a good idea to emulate
a machine that officially supports SVM and should thus exploit the powers of
nested virtualization.
This patch adds a Phenom CPU identifier, that resembles a real-world phenom
CPU as closely as possible.
Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6501
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 2 Feb 2009 17:10:52 +0000 (17:10 +0000)]
Implement FFXSR (Alexander Graf)
Newer AMD CPUs have the FFXSR capability. This leaves out XMM
register in FXSAVE/FXRESTORE when in CPL=0 and 64-bit mode.
This is required for Hyper-V.
Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6500
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 2 Feb 2009 15:58:54 +0000 (15:58 +0000)]
Add zlib encoding support (Alexander Graf)
This patch adds zlib encoding support for VNC. It basically runs
the raw traffic through zlib, providing a pretty good compression
ratio.
Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6499
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 2 Feb 2009 15:58:51 +0000 (15:58 +0000)]
Move the framebuffer update package out (Alexander Graf)
Currently the send_framebuffer_update_raw and send_framebuffer_update_hextile
respectively send a send_framebuffer_update packet themselves. We need to reuse
send_framebuffer_update_raw for zlib encoding though, so let's move it out.
Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6498
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 2 Feb 2009 15:58:47 +0000 (15:58 +0000)]
Move buffer functions up (Alexander Graf)
We will need to use buffer functions in code that will end up being
below the current buffer functions. In order to not introduce any
function stub defines, let's just move them up.
Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6497
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 2 Feb 2009 15:58:43 +0000 (15:58 +0000)]
Add some tight awareness to vnc.c (Alexander Graf)
This patch enables the vnc server to understand fundamental tight extensions.
It changes from a "Hextile or not" scheme when sending framebuffer updates to
a "preferred encoding", namely the last one set.
While this is not perfect, as actually a list of "preferred encodings" should
be kept, it's good enough for now.
Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6496
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 2 Feb 2009 15:58:38 +0000 (15:58 +0000)]
Fix invalid #if in vnc.c when debugging is enabled (Alexander Graf)
While running with debugging enabled, I found an #if testing for
an undefined value, not defined(value). This patch fixes that.
Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6495
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 2 Feb 2009 15:58:29 +0000 (15:58 +0000)]
Use VNC protocol defines (Alexander Graf)
Now that we have nice defines for all sorts of constants, let's
use them!
This patch also takes the "feature variables", currently called has_*
into a single feature int. This way adding new features is a lot
easier and doesn't clutter the VncState struct.
Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6494
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 2 Feb 2009 15:58:25 +0000 (15:58 +0000)]
Split VNC defines to vnc.h (Alexander Graf)
The VNC protocol contains quite some constants, some of which are
currently hardcoded in the vnc.c code. This is not exactly pretty.
Let's move all those constants out to vnc.h, so they are clearly
separated. While at it, I also included other defines that will be
used later in this patch series.
Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6493
c046a42c-6fe2-441c-8c8c-
71466251a162
malc [Sun, 1 Feb 2009 22:19:27 +0000 (22:19 +0000)]
Replace noreturn with QEMU_NORETURN
Thanks to Robert Riebisch for analysis [1]
[1] http://marc.info/?l=qemu-devel&m=
123352293319271&w=2
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6492
c046a42c-6fe2-441c-8c8c-
71466251a162
blueswir1 [Sun, 1 Feb 2009 19:26:20 +0000 (19:26 +0000)]
Add and use #defines for PCI device classes
This patch adds and uses #defines for PCI device classes and subclases,
using a new pci_config_set_class() function, similar to the recently
added pci_config_set_vendor_id() and pci_config_set_device_id().
Change since v1: fixed compilation of hw/sun4u.c
Signed-off-by: Stuart Brady <stuart.brady@gmail.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6491
c046a42c-6fe2-441c-8c8c-
71466251a162
blueswir1 [Sun, 1 Feb 2009 12:01:04 +0000 (12:01 +0000)]
Update #defines for PCI vendor and device IDs from OpenBIOS and Linux
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6490
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Fri, 30 Jan 2009 20:39:41 +0000 (20:39 +0000)]
PowerPC: IDE DB-DMA support
This patches allows powermac IDE interface to use DB-DMA.
This implementation uses only synchronous I/O.
Signed-off-by: Laurent Vivier <Laurent@lvivier.info>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6489
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Fri, 30 Jan 2009 20:39:32 +0000 (20:39 +0000)]
PowerPC: mac-io DB-DMA support
This patch adds powermac Descriptor-Based DMA.
It is used by mac-io based IDE, ethernet, sounds and serial devices.
Signed-off-by: Laurent Vivier <Laurent@lvivier.info>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6488
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Fri, 30 Jan 2009 20:15:41 +0000 (20:15 +0000)]
pl031: remove unused variable
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6487
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Fri, 30 Jan 2009 20:15:32 +0000 (20:15 +0000)]
linux-user: fix signal.c warning
This patch fixes:
linux-user/signal.c:1403: warning: no previous prototype for 'do_sigreturn_v1'
linux-user/signal.c:1473: warning: no previous prototype for 'do_sigreturn_v2'
linux-user/signal.c:1511: warning: no previous prototype for 'do_rt_sigreturn_v1'
linux-user/signal.c:1552: warning: no previous prototype for 'do_rt_sigreturn_v2'
by making the appropriate functions static.
Signed-off-by: Nathan Froyd <froydnj@codesourcery.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6486
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Fri, 30 Jan 2009 20:09:01 +0000 (20:09 +0000)]
linux-user: identify running binary in /proc/self/exe
Some applications like to test /proc/self/exe to find
out who they are. Fake the result of readlink() for
them. Use realpath() to return full path to binary
(which the links /proc/self/exe are)
Signed-off-by: Riku Voipio <riku.voipio@iki.fi>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6485
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Fri, 30 Jan 2009 19:59:17 +0000 (19:59 +0000)]
linux-user: Add generic env variable handling
Adds support for qemu to modify target process environment
variables using -E and -U commandline switches. This replaces
eventually the -drop-ld-preload flag.
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Signed-off-by: Riku Voipio <riku.voipio@iki.fi>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6484
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Fri, 30 Jan 2009 19:48:32 +0000 (19:48 +0000)]
target-ppc: Fix struct target_stat64 for 32-bit host
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6483
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Fri, 30 Jan 2009 19:48:24 +0000 (19:48 +0000)]
target-sh4: Fix struct target_stat64 for 64-bit host
Signed-off-by: Takashi YOSHII <takasi-y@ops.dti.ne.jp>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6482
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Fri, 30 Jan 2009 19:48:17 +0000 (19:48 +0000)]
linuw-user fix: read() and acct() on NULL arguments
Returning efault in these cases is not correct. Originally
proposed by Thayne Harbaugh in 2007:
http://www.mail-archive.com/qemu-devel@nongnu.org/msg14658.html
Signed-off-by: Riku Voipio <riku.voipio@iki.fi>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6481
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Fri, 30 Jan 2009 19:48:07 +0000 (19:48 +0000)]
linux-user: don't crash with null name
From Thayne Harbaugh.
path() may be called with null string, don't bother trying to
remap in that case.
Signed-off-by: Riku Voipio <riku.voipio@iki.fi>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6480
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Fri, 30 Jan 2009 19:47:57 +0000 (19:47 +0000)]
linux-user: return EINVAL on incorrect sockaddr
From: Lauro Ramos Venancio <lauro.venancio@gmail.com>
Fixes ltp test accept01
Signed-off-by: Riku Voipio <riku.voipio@iki.fi>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6479
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Fri, 30 Jan 2009 19:47:47 +0000 (19:47 +0000)]
linux-user: fix accept(2) with NULL peer
Based on scratchbox2 patch by Mika Westerberg
Signed-off-by: Riku Voipio <riku.voipio@iki.fi>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6478
c046a42c-6fe2-441c-8c8c-
71466251a162
balrog [Thu, 29 Jan 2009 23:29:52 +0000 (23:29 +0000)]
Allow usb tablet to be used with vmware-vga hwcursor.
Assume that in absolute mode the guest cursor always follows host cursor
and there's no need to move host cursor. This avoids a strange feedback
loop.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6477
c046a42c-6fe2-441c-8c8c-
71466251a162
balrog [Thu, 29 Jan 2009 23:19:20 +0000 (23:19 +0000)]
Fix absolute mode mice.
width and height were never set which means that host coordinates were
divided by -1 instead of (width - 1) / 0x7fff.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6476
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Thu, 29 Jan 2009 19:59:04 +0000 (19:59 +0000)]
check SCSI read/write requests against max LBA (Rik van Riel)
The bdrv layer uses a signed offset. Furthermore, block-raw-posix
only seeks when that offset is positive. Passing a negative offset
to block-raw-posix can result in data being written at the current
seek cursor's position.
It may be possible to exploit this to seek to the end of the disk
and extend the virtual disk by writing data to a negative sector
offset. After a reboot, this could lead to the guest having a
larger disk than it had before.
Close the hole by sanity checking the lba against the size of the
disk.
Signed-off-by: Rik van Riel <riel@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6475
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Thu, 29 Jan 2009 19:45:28 +0000 (19:45 +0000)]
Fix a typo in ext2_feature_name (Carl-Daniel Hailfinger)
Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6474
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Thu, 29 Jan 2009 17:02:21 +0000 (17:02 +0000)]
Use new logging API in reset handling (Jan Kiszka)
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@6473
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Thu, 29 Jan 2009 17:02:17 +0000 (17:02 +0000)]
MTRR support on x86, part 2 (Carl-Daniel Hailfinger)
Load and save MTRR state together with machine state.
Add support for the MTRRcap MSR which is used by the latest Bochs BIOS
and some operating systems.
Fix a typo in ext2_feature_name.
With this patch, MTRR emulation should be good enough to not trigger any
sanity checks in well behaved BIOS/kernel code.
Some corner cases for BIOS/firmware usage remain to be implemented, but
that can be deferred to another patch.
Also, MTRR accesses on hardware not supporting MTRRs should cause #GP.
That can be enforced by another patch as well.
Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6472
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Thu, 29 Jan 2009 17:02:13 +0000 (17:02 +0000)]
Don't notify virtio devices before S_DRIVER_OK (Mark McLoughlin)
Current Linux guests oops if the host notifies of a
config change before a driver has been bound to the
device.
It's pretty pointless for us to do notify of config
changes before status is S_DRIVER_OK anyway, so let's
just not do it.
Signed-off-by: Mark McLoughlin <markmc@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6471
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Thu, 29 Jan 2009 17:02:08 +0000 (17:02 +0000)]
fix raw_aio_read\write error handling (Stefano Stabellini)
Currently when qemu_paio_read or qemu_paio_write return an error we call
qemu_aio_release without removing the request from the list.
I know that in the current implementation qemu_paio_write\read don't return
any error, but still the behavior is wrong, especially considering
that the implementation of these two functions is likely to change in is
the future.
This patch fixes the problem adding a raw_aio_remove function that
removes the callback from the queue and also calls qemu_aio_release.
raw_aio_remove is called by raw_aio_read, raw_aio_write and
raw_aio_cancel.
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@6470
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Wed, 28 Jan 2009 21:58:29 +0000 (21:58 +0000)]
SCSI divide capacity by s->cluster_size (Rik van Riel)
Paul Brook pointed out that the number of sectors reported
by the SCSI read capacity commands needs to be divided by
s->cluster_size, because bdrv_get_geometry reports the number
of 512 byte sectors, while emulated CDROMs report 2048 byte
sectors back to the guest.
This has no consequences for emulated hard disks, which use
a cluster size of 1.
aliguori: fixed typo
Signed-off-by: Rik van Riel <riel@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6469
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Wed, 28 Jan 2009 21:58:25 +0000 (21:58 +0000)]
support >2TB SCSI disks (Rik van Riel)
Implement SCSI READ(16), WRITE(16) and SAI READ CAPACITY(16) commands,
so SCSI disks larger than 2TB can work with guests that support these
newer SCSI commands.
The cast to (uint64_t) is needed because otherwise gcc will use a
signed int, which gets sign extended into uint64_t lba, resulting
in bad block numbers for READ 10 and READ 16 with block numbers
larger than 2^31.
Signed-off-by: Rik van Riel <riel@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6468
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Wed, 28 Jan 2009 21:58:22 +0000 (21:58 +0000)]
fix signed/unsigned overflows in SCSI disk (Rik van Riel)
Sector numbers can overflow on a virtual scsi disk of over 1TB
in size. Qemu's bdrv_read expects an int64_t, so fix the overflow
by going to that data type.
On large disks, we clip the capacity to 2TB instead of returning
"capacity modulo 2TB".
Turn sector_count into an unsigned to prevent a signed/unsigned
overflow with SCSI transfers larger than 2TB. We're unlikely to
ever hit this bug, but fixing it is just one line.
Signed-off-by: Rik van Riel <riel@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6467
c046a42c-6fe2-441c-8c8c-
71466251a162
malc [Wed, 28 Jan 2009 17:16:56 +0000 (17:16 +0000)]
Fix qemu_malloc.
make {linux,bsd}-user qemu_realloc handle ptr == NULL correctly.
spotted by malc.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6466
c046a42c-6fe2-441c-8c8c-
71466251a162
blueswir1 [Tue, 27 Jan 2009 19:15:31 +0000 (19:15 +0000)]
Add Simba device ID
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6465
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Tue, 27 Jan 2009 14:29:15 +0000 (14:29 +0000)]
block-vpc: Fix support for images > 4 GB (Kevin Wolf)
This patch fixes the truncation of sector offsets to 32 bits.
Signed-off-by: Kevin Wolf <kwolf@suse.de>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6464
c046a42c-6fe2-441c-8c8c-
71466251a162
edgar_igl [Mon, 26 Jan 2009 22:21:30 +0000 (22:21 +0000)]
CRIS: Init the feedback shiftreg used for randomizing TLB sets.
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6463
c046a42c-6fe2-441c-8c8c-
71466251a162
edgar_igl [Mon, 26 Jan 2009 21:47:27 +0000 (21:47 +0000)]
ETRAX: Remove display-state argument from board init.
Apparently this board was forgotten in the display changes.
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6462
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 26 Jan 2009 20:32:22 +0000 (20:32 +0000)]
kvm-x86: Remove eflags conversion into emulator format (Jan Kiszka)
It seems that the conversion of the kernel-delivered eflags state into
qemu's internal split representation was once needed in an older kvm
design (register read-back may have taken place from inside cpu_exec).
Today it is plain wrong and causes incorrect cpu state reporting (gdb,
monitor) and should also corrupt its saving (savevm, migration). Drop
the related lines.
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@6461
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 26 Jan 2009 20:32:18 +0000 (20:32 +0000)]
Check if the i8254 timer is active before deactivating it (Alexander Graf)
The HPET emulation can disable the i8254 when the HPET is
in legacy mode, thus emulating the i8254's behavior.
But if it does, the i8254 doesn't have to be running, so
let's check to see if the timer works and not disable it
if it's not.
This fixes a segmentation fault when running Mac OS X as
guest os.
Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6460
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 26 Jan 2009 20:27:06 +0000 (20:27 +0000)]
block-vpc: Create images (Kevin Wolf)
Add an implementation to create VHD images.
Signed-off-by: Kevin Wolf <kwolf@suse.de>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6459
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 26 Jan 2009 20:27:02 +0000 (20:27 +0000)]
block-vpc: Write support (Kevin Wolf)
Add write support for VHD images.
Signed-off-by: Kevin Wolf <kwolf@suse.de>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6458
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 26 Jan 2009 20:26:58 +0000 (20:26 +0000)]
block-vpc: Use the qemu block layer (Kevin Wolf)
Instead of accessing the file directly, use the qemu block layer.
Signed-off-by: Kevin Wolf <kwolf@suse.de>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6457
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 26 Jan 2009 20:26:54 +0000 (20:26 +0000)]
block-vpc: Fix disk size (Kevin Wolf)
VirtualPC bases the virtual disk size on the geometry rather than on
the size stored in the header.
Signed-off-by: Kevin Wolf <kwolf@suse.de>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6456
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 26 Jan 2009 20:26:49 +0000 (20:26 +0000)]
block-vpc: Adapt header structures to official documentation (Kevin Wolf)
The current definition of the VirtualPC headers is incomplete and partly
even wrong. This patch changes the header structs according to the
official VHD specification.
Signed-off-by: Kevin Wolf <kwolf@suse.de>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6455
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 26 Jan 2009 20:26:46 +0000 (20:26 +0000)]
block-vpc: Split up struct vpc_subheader (Kevin Wolf)
struct vpc_subheader currently is a union of two completely different
data structures (the Hard Disk Footer and the Dynamic Disk Header).
That doesn't make too much sense, so split them up.
Signed-off-by: Kevin Wolf <kwolf@suse.de>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6454
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 26 Jan 2009 19:54:36 +0000 (19:54 +0000)]
x86: Issue reset on triple faults (Jan Kiszka)
As discussed a few times on this list: A triple fault causes a system
reset on x86, and some guests make use of this (e.g. 386BSD). To keep
the chance of tracing unexpected resets, log them if CPU_LOG_RESET is
set.
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@6453
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 26 Jan 2009 19:54:31 +0000 (19:54 +0000)]
Log reset events (Jan Kiszka)
Original idea&code by Kevin Wolf, split-up in two patches and added more
archs.
This patch introduces a flag to log CPU resets. Useful for tracing
unexpected resets (such as those triggered by x86 triple faults).
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@6452
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 26 Jan 2009 19:37:41 +0000 (19:37 +0000)]
Remove the advertising clause from the slirp license
According to the FSF, the 4-clause BSD license, which slirp is covered under,
is not compatible with the GPL or LGPL[1].
[1] http://www.fsf.org/licensing/licenses/index_html#GPLIncompatibleLicenses
There are three declared copyright holders in slirp that use the 4-clause
BSD license, the Regents of UC Berkley, Danny Gasparovski, and Kelly Price.
Below are the appropriate permissions to remove the advertise clause from slirp
from each party.
Special thanks go to Richard Fontana from Red Hat for contacting all of the
necessary authors to resolve this issue!
Regents of UC Berkley:
From ftp://ftp.cs.berkeley.edu/pub/4bsd/README.Impt.License.Change
July 22, 1999
To All Licensees, Distributors of Any Version of BSD:
As you know, certain of the Berkeley Software Distribution ("BSD") source
code files require that further distributions of products containing all or
portions of the software, acknowledge within their advertising materials
that such products contain software developed by UC Berkeley and its
contributors.
Specifically, the provision reads:
" * 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Berkeley and its contributors."
Effective immediately, licensees and distributors are no longer required to
include the acknowledgement within advertising materials. Accordingly, the
foregoing paragraph of those BSD Unix files containing it is hereby deleted
in its entirety.
William Hoskins
Director, Office of Technology Licensing
University of California, Berkeley
Danny Gasparovski:
Subject: RE: Slirp license
Date: Thu, 8 Jan 2009 10:51:00 +1100
From: "Gasparovski, Daniel" <Daniel.Gasparovski@ato.gov.au>
To: "Richard Fontana" <rfontana@redhat.com>
Hi Richard,
I have no objection to having Slirp code in QEMU be licensed under the
3-clause BSD license.
Thanks for taking the effort to consult me about this.
Dan ...
Kelly Price:
Date: Thu, 8 Jan 2009 19:38:56 -0500
From: "Kelly Price" <strredwolf@gmail.com>
To: "Richard Fontana" <rfontana@redhat.com>
Subject: Re: Slirp license
Thanks for contacting me, Richard. I'm glad you were able to find
Dan, as I've been "keeping the light on" for Slirp. I have no use for
it now, and I have little time for it (now holding onto Keenspot's
Comic Genesis and having a regular US state government position). If
Dan would like to return to the project, I'd love to give it back to
him.
As for copyright, I don't own all of it. Dan does, so I will defer to
him. Any of my patches I will gladly license to the 3-part BSD
license. My interest in re-licensing was because we didn't have ready
info to contact Dan. If Dan would like to port Slirp back out of
QEMU, a lot of us 64-bit users would be grateful.
Feel free to share this email address with Dan. I will be glad to
effect a transfer of the project to him and Mr. Bellard of the QEMU
project.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6451
c046a42c-6fe2-441c-8c8c-
71466251a162
malc [Mon, 26 Jan 2009 18:21:53 +0000 (18:21 +0000)]
R13 is reserved for small data area pointer by SVR4 PPC ABI
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6450
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 26 Jan 2009 17:53:04 +0000 (17:53 +0000)]
MTRR support on x86 (Carl-Daniel Hailfinger)
The current codebase ignores MTRR (Memory Type Range Register)
configuration writes and reads because Qemu does not implement caching.
All BIOS/firmware in know of for x86 do implement a mode called
Cache-as-RAM (CAR) which locks down the CPU cache lines and uses the CPU
cache like RAM before RAM is enabled. Qemu assumes RAM is accessible
from the start, but it would be nice to be able to run real
BIOS/firmware in Qemu. For that, we need CAR support and for CAR support
we have to support MTRRs.
This patch is a first step in that direction. MTRRs are MSRs supported
by all recent x86 CPUs, even old i586. Besides influencing cache, the
MTRRs can be written and read back, so discarding MTRR writes violates
the expectations of existing code out there.
An added benefit of this patch is that it fixes the following Linux
kernel error message present in recent kernels (provided the BIOS has
the recent MTRR patches applied):
------------[ cut here ]------------
WARNING: at arch/x86/kernel/cpu/mtrr/main.c:1500 mtrr_trim_uncached_memory+0x382/0x384()
WARNING: strange, CPU MTRRs all blank?
Modules linked in:
Supported: Yes
Pid: 0, comm: swapper Not tainted 2.6.27.7-9-default #1
[<
c0106570>] dump_trace+0x6b/0x249
[<
c01070a5>] show_trace+0x20/0x39
[<
c0343c02>] dump_stack+0x71/0x76
[<
c012acb2>] warn_slowpath+0x6f/0x90
[<
c0542f8f>] mtrr_trim_uncached_memory+0x382/0x384
[<
c053f24d>] setup_arch+0x40d/0x639
[<
c053a6ac>] start_kernel+0x6b/0x31f
=======================
---[ end trace
4eaa2a86a8e2da22 ]---
Handle common x86 MTRR reads and writes, but don't act on them.
Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6449
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 26 Jan 2009 17:17:52 +0000 (17:17 +0000)]
qemu iovec: keep track of total size, allow partial copies (Gerd Hoffman)
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6448
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 26 Jan 2009 17:07:46 +0000 (17:07 +0000)]
build system: Further improve quiet mode (Jan Kiszka)
Derived from Stuart Brady's patch: Show the target directory as prefix
to the current module when building in quiet mode. This helps to gain
overview of the current build progress, specifically when running
parallelized builds.
Furthermore, suppress make command echoing when entering subdirs and
replace $(subst subdir-,,$@) with $* in the related rule.
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@6447
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 26 Jan 2009 17:07:42 +0000 (17:07 +0000)]
Move definition of rgb_to_pixel_dup_table (Nathan Froyd)
This fixes the warning:
/scratch/froydnj/qemu.git/hw/vga.c:1515: warning: redundant redeclaration of 'rgb_to_pixel_dup_table'
/scratch/froydnj/qemu.git/hw/vga.c:1248: warning: previous declaration of 'rgb_to_pixel_dup_table' was here
Signed-off-by: Nathan Froyd <froydnj@codesourcery.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6446
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 26 Jan 2009 15:57:52 +0000 (15:57 +0000)]
Add reset irq state for ps2 reboot callback (Dor Laor)
Should solve 100% cpu ioport poll after reboot.
Signed-off-by: Dor Laor <dor@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6445
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 26 Jan 2009 15:37:44 +0000 (15:37 +0000)]
Handle link status in qemu_sendv_packet() (Mark McLoughlin)
If link is down, pretend that the packet has been successfully sent.
Signed-off-by: Mark McLoughlin <markmc@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6444
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 26 Jan 2009 15:37:40 +0000 (15:37 +0000)]
Enabled building of x86_64 code on Mac OS X (Alexander Graf)
Mac OS X 10.5 supports 64-bit userspace on an x86_64 kernel and
by default uses 32-bit userspace applications, so the detection for
the host architecture fails.
This patch enabled building of x86_64 code on x86_64 capable CPUS
with Mac OS X.
Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6443
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 26 Jan 2009 15:37:35 +0000 (15:37 +0000)]
Define PCI vendor and device IDs in pci.h (Stuart Brady)
This patch defines PCI vendor and device IDs in pci.h (matching those
from Linux's pci_ids.h), and uses those definitions where appropriate.
Change from v1:
Introduces pci_config_set_vendor_id() / pci_config_set_device_id()
accessors as suggested by Anthony Liguori.
Signed-off-by: Stuart Brady <stuart.brady@gmail.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6442
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 26 Jan 2009 15:37:30 +0000 (15:37 +0000)]
vnc fixes and improvements (Stefano Stabellini)
this patch fixes a bug and improves the generic pixel conversion
function in vnc.c.
The bug is that when a new vnc client connects we need to reset the flag
has_WMVi but currently we don't.
The generic pixel conversion function is vnc_convert_pixel and currently
is not very efficient since uses the division and multiplication
operators.
To make it more efficient I changed to use bit shift operators instead.
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@6441
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 26 Jan 2009 15:22:57 +0000 (15:22 +0000)]
Use the default subsystem vendor ID for virtio devices (Mark McLoughlin)
A subsystem vendor ID of zero isn't allowed, so we use our
default ID.
Gerd points out that although the PCI subsystem vendor ID is
treated by the guest as the virtio vendor ID:
/* we use the subsystem vendor/device id as the virtio vendor/device
* id. this allows us to use the same PCI vendor/device id for all
* virtio devices and to identify the particular virtio driver by
* the subsytem ids */
vp_dev->vdev.id.vendor = pci_dev->subsystem_vendor;
vp_dev->vdev.id.device = pci_dev->subsystem_device;
it looks like only the device ID is used right now:
# grep virtio modules.alias
alias virtio:d00000001v* virtio_net
alias virtio:d00000002v* virtio_blk
alias virtio:d00000003v* virtio_console
alias virtio:d00000004v* virtio-rng
alias virtio:d00000005v* virtio_balloon
alias pci:v00001AF4d*sv*sd*bc*sc*i* virtio_pci
alias virtio:d00000009v* 9pnet_virtio
so setting the subsystem vendor id to something != zero shouldn't cause
trouble.
Signed-off-by: Mark McLoughlin <markmc@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6440
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 26 Jan 2009 15:22:46 +0000 (15:22 +0000)]
Add macro for virtio-console PCI device ID (Mark McLoughlin)
Also use the existing macro for the PCI vendor ID
Signed-off-by: Mark McLoughlin <markmc@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6439
c046a42c-6fe2-441c-8c8c-
71466251a162
aliguori [Mon, 26 Jan 2009 15:22:41 +0000 (15:22 +0000)]
Use macros for virtio-net PCI vendor/device IDs (Mark McLoughlin)
Gerd added these macros a while back.
Signed-off-by: Mark McLoughlin <markmc@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6438
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Mon, 26 Jan 2009 10:22:15 +0000 (10:22 +0000)]
target-ppc: always load kernel to KERNEL_LOAD_ADDR
Linux changed its physical address location in the elf header from
0xc0000000 to 0 on 2.6.25, causing later kernels to fail booting
with the -kernel option.
This patch assures that the lowest segment in the elf binary is loaded
to KERNEL_LOAD_ADDR, which is where the firmware expects it.
Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6437
c046a42c-6fe2-441c-8c8c-
71466251a162
malc [Sun, 25 Jan 2009 10:56:51 +0000 (10:56 +0000)]
Add static qualifier to local functions
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6436
c046a42c-6fe2-441c-8c8c-
71466251a162
malc [Sun, 25 Jan 2009 10:56:48 +0000 (10:56 +0000)]
Massage PPC version of cpu_get_real_ticks a little
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6435
c046a42c-6fe2-441c-8c8c-
71466251a162
blueswir1 [Sat, 24 Jan 2009 20:19:18 +0000 (20:19 +0000)]
Fix bsd-user compile like r6412
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6434
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Sat, 24 Jan 2009 18:21:08 +0000 (18:21 +0000)]
sh4: sh_pci. Register resouces both at A7 and P4.
Add resource registration both for P4 and A7.
This is needed because of #5935 SH4: Eliminate P4 to A7 mangling.
Additionally, {reg,iop,mem}base which is no longer used are removed.
Signed-off-by: Takashi YOSHII <takasi-y@ops.dti.ne.jp>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6433
c046a42c-6fe2-441c-8c8c-
71466251a162
blueswir1 [Sat, 24 Jan 2009 18:19:25 +0000 (18:19 +0000)]
Synch code, help and docs
Rearrange code, help printout and docs so that they are in the same
(hopefully more logical) order for easier maintenance.
Add help and docs for undocumented options.
Reformat slightly for more consistent help output.
Add comments to encourage better synchronization in the future.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6432
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Sat, 24 Jan 2009 18:18:20 +0000 (18:18 +0000)]
sh4: r2d. Endian conversion for peripheral register initialization.
Add endian conversion to hw/r2d.c which lacks consideration of endian on
setting BSC registers.
Signed-off-by: Takashi YOSHII <takasi-y@ops.dti.ne.jp>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6431
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Sat, 24 Jan 2009 18:16:18 +0000 (18:16 +0000)]
Use broadcast address for slirp dhcp replies
Windows Vista drops unicast dhcp replies to its yet-unconfigured address,
so use a broadcast address. This behaviour is allowed by the RFC.
Signed-off-by: Avi Kivity <avi@redhat.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6430
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Sat, 24 Jan 2009 18:06:21 +0000 (18:06 +0000)]
Support epoch of 1980 in RTC emulation for MIPS Magnum
On the MIPS Magnum, the time that is held in the RTC's NVRAM should be
relative to midnight on 1980-01-01. This patch adds an extra parameter
to rtc_init(), allowing different epochs to be used. For the Magnum,
1980 is specified, and for all other machines, 2000 is specified.
I've not modified the handling of the century byte, as with an epoch of
1980 and a year of 2009, one could argue that it should hold either
0, 1, 19 or 20. NT 3.50 on MIPS does not read the century byte.
Signed-off-by: Stuart Brady <stuart.brady@gmail.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6429
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Sat, 24 Jan 2009 16:37:31 +0000 (16:37 +0000)]
List virtio console device in pci-ids.txt
As mentioned in:
http://lists.gnu.org/archive/html/qemu-devel/2009-01/msg00907.html
pci-ids.txt needs updating to list the the virtio-console PCI device ID.
Signed-off-by: Stuart Brady <stuart.brady@gmail.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6428
c046a42c-6fe2-441c-8c8c-
71466251a162
aurel32 [Sat, 24 Jan 2009 16:35:56 +0000 (16:35 +0000)]
kvm/powerpc: extern one function for MPC85xx code use
Signed-off-by: Liu Yu <yu.liu@freescale.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6427
c046a42c-6fe2-441c-8c8c-
71466251a162