qemu
15 years agoqemu: create helper for event notification (Marcelo Tosatti)
aliguori [Fri, 24 Apr 2009 18:03:11 +0000 (18:03 +0000)]
qemu: create helper for event notification (Marcelo Tosatti)

Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>

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

15 years agoFix typo, thanks to Andreas Faerber for spotting
blueswir1 [Thu, 23 Apr 2009 18:42:30 +0000 (18:42 +0000)]
Fix typo, thanks to Andreas Faerber for spotting

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

15 years agoUse a more natural order
blueswir1 [Thu, 23 Apr 2009 18:29:47 +0000 (18:29 +0000)]
Use a more natural order

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

15 years agoFix i386-linux-user build (Laurent Desnogues)
aliguori [Thu, 23 Apr 2009 13:16:56 +0000 (13:16 +0000)]
Fix i386-linux-user build (Laurent Desnogues)

This broke due to r7230.

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@7233 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agomonitor: Fix warning in do_info_numa (Jan Kiszka)
aliguori [Wed, 22 Apr 2009 20:20:29 +0000 (20:20 +0000)]
monitor: Fix warning in do_info_numa (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@7232 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoChange RTC time drift IRQ re-injection (Gleb Natapov)
aliguori [Wed, 22 Apr 2009 20:20:22 +0000 (20:20 +0000)]
Change RTC time drift IRQ re-injection (Gleb Natapov)

Currently IRQ are reinjected as soon as they are acknowledged to
the RTC, but Windows sometimes do acknowledgement in a loop with
global interrupt disabled waiting for interrupt to be cleared and
it does not mask RTC vector in PIC/APIC while doing this. In such
situation interrupt injection always fails and RTC interrupt is never
cleared.

Instead of reinjecting coalesced IRQs on acknowledgement the patch below
reinjects them by accelerating RTC clock a bit. This way RTC interrupt
is not constantly raced after coalesced interrupt.

Signed-off-by: Gleb Natapov <gleb@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>

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

15 years agoput valid data into exit_int_info if needed (Gleb Natapov)
aliguori [Wed, 22 Apr 2009 20:20:07 +0000 (20:20 +0000)]
put valid data into exit_int_info if needed (Gleb Natapov)

If fault happened during event delivery exit_int_info should contain
valid info about the event on vm exit.

Signed-off-by: Gleb Natapov <gleb@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>

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

15 years agoimplement qemu_blockalign (Stefano Stabellini)
aliguori [Wed, 22 Apr 2009 20:20:00 +0000 (20:20 +0000)]
implement qemu_blockalign (Stefano Stabellini)

this patch adds a buffer_alignment field to BlockDriverState and
implements a qemu_blockalign function that uses that field to allocate a
memory aligned buffer to be used by the block driver.
buffer_alignment is initialized to 512 but each block driver can set
a different value (at the moment none of them do).
This patch modifies ide.c, block-qcow.c, block-qcow2.c and block.c to
use qemu_blockalign instead of qemu_memalign.
There is only one place left that still uses qemu_memalign to allocate
buffers used by block drivers that is posix-aio-compat:handle_aiocb_rw
because it is not possible to get the BlockDriverState from that
function. However I think it is not important because posix-aio-compat
already deals with driver specific code so it is supposed to know its
own needs.

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@7229 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoxen: add -vga xenfb option, configure xenfb (Gerd Hoffmann)
aliguori [Wed, 22 Apr 2009 15:19:53 +0000 (15:19 +0000)]
xen: add -vga xenfb option, configure xenfb (Gerd Hoffmann)

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@7228 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agosimplify vga selection (Gerd Hoffmann)
aliguori [Wed, 22 Apr 2009 15:19:48 +0000 (15:19 +0000)]
simplify vga selection (Gerd Hoffmann)

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@7227 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoxen: pv domain builder. (Gerd Hoffmann)
aliguori [Wed, 22 Apr 2009 15:19:44 +0000 (15:19 +0000)]
xen: pv domain builder. (Gerd Hoffmann)

This adds domain building support for paravirtual domains to qemu.
This allows booting xen guests directly with qemu, without Xend
and the management stack.

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@7226 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoxen: blk & nic configuration via cmd line. (Gerd Hoffmann)
aliguori [Wed, 22 Apr 2009 15:19:39 +0000 (15:19 +0000)]
xen: blk & nic configuration via cmd line. (Gerd Hoffmann)

This patch makes qemu create backend and frontend device entries in
xenstore for devices configured on the command line.  It will use
qdisk and qnic backend names, so the qemu internal backends will
be used.

Disks can be created using -drive if=xen,file=...
Nics can be created using -net nic,macaddr=...

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@7225 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoxen: add net backend driver. (Gerd Hoffmann)
aliguori [Wed, 22 Apr 2009 15:19:35 +0000 (15:19 +0000)]
xen: add net backend driver. (Gerd Hoffmann)

This patch adds a network interface backend driver to qemu.  It is a pure
userspace implemention using the gntdev interface.  It uses "qnet" as
backend name in xenstore so it doesn't interfere with the netback
backend (aka "vnif").

The network backend is hooked into the corrosponding qemu vlan, i.e.
vif 0 is hooked into vlan 0.  To make the packages actually arrive
somewhere you additionally have to link the vlan to the outside world
using the usual qemu command line options such as "-net tap,...".

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@7224 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoxen: add block device backend driver. (Gerd Hoffmann)
aliguori [Wed, 22 Apr 2009 15:19:30 +0000 (15:19 +0000)]
xen: add block device backend driver. (Gerd Hoffmann)

This patch adds a block device backend driver to qemu.  It is a pure
userspace implemention using the gntdev interface.  It uses "qdisk" as
backend name in xenstore so it doesn't interfere with the other existing
backends (blkback aka "vbd" and tapdisk aka "tap").

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@7223 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoxen: add framebuffer backend driver (Gerd Hoffmann)
aliguori [Wed, 22 Apr 2009 15:19:25 +0000 (15:19 +0000)]
xen: add framebuffer backend driver (Gerd Hoffmann)

This patch adds a frsamebuffer (and kbd+mouse) backend driver.  It
it based on current xen-unstable code.  It has been changed to make
use of the common backend driver code.  It also has been changed to
compile with xen headers older than release 3.3

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@7222 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoxen: add console backend driver. (Gerd Hoffmann)
aliguori [Wed, 22 Apr 2009 15:19:19 +0000 (15:19 +0000)]
xen: add console backend driver. (Gerd Hoffmann)

This patch adds a xenconsole backend driver.  It it based on current
xen-unstable code.  It has been changed to make use of the common
backend driver code.

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@7221 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoxen: backend driver core (Gerd Hoffmann)
aliguori [Wed, 22 Apr 2009 15:19:15 +0000 (15:19 +0000)]
xen: backend driver core (Gerd Hoffmann)

This patch adds infrastructure for xen backend drivers living in qemu,
so drivers don't need to implement common stuff on their own.  It's
mostly xenbus management stuff: some functions to access xentore,
setting up xenstore watches, callbacks on device discovery and state
changes, handle event channel, ...

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@7220 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoxen: groundwork for xen support (Gerd Hoffmann)
aliguori [Wed, 22 Apr 2009 15:19:10 +0000 (15:19 +0000)]
xen: groundwork for xen support (Gerd Hoffmann)

- configure script and build system changes.
- wind up new machine type.
- add -xen-* command line options.

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@7219 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoupdate .gitignore: add qemu-io (Gerd Hoffmann)
aliguori [Wed, 22 Apr 2009 13:05:35 +0000 (13:05 +0000)]
update .gitignore: add qemu-io (Gerd Hoffmann)

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>

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

15 years agoqcow2: Add plausibility check for L1/L2 entries (Kevin Wolf)
aliguori [Tue, 21 Apr 2009 23:12:02 +0000 (23:12 +0000)]
qcow2: Add plausibility check for L1/L2 entries (Kevin Wolf)

From: Kevin Wolf <kwolf@redhat.com>

All L1 and L2 entries must point at the start of a cluster. If there is some
offset into the cluster, the entry is corrupted.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>

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

15 years agoqcow2: Refcount checking code cleanup (Kevin Wolf)
aliguori [Tue, 21 Apr 2009 23:11:58 +0000 (23:11 +0000)]
qcow2: Refcount checking code cleanup (Kevin Wolf)

This is purely cosmetical changes to make the code easier to read. Move L2
table processing from a deeply nested block to its own function, add some
comments.

Patch v2: Fix misplaced bracket causing false positives

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>

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

15 years agoIntroduce qemu-img check subcommand (Kevin Wolf)
aliguori [Tue, 21 Apr 2009 23:11:53 +0000 (23:11 +0000)]
Introduce qemu-img check subcommand (Kevin Wolf)

From: Kevin Wolf <kwolf@redhat.com>

Now that block drivers can provide check functions, expose them through
qemu-img.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>

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

15 years agoIntroduce bdrv_check (Kevin Wolf)
aliguori [Tue, 21 Apr 2009 23:11:50 +0000 (23:11 +0000)]
Introduce bdrv_check (Kevin Wolf)

From: Kevin Wolf <kwolf@redhat.com>

Introduce a new bdrv_check function pointer for block drivers. Modify qcow2 to
return an error status in check_refcounts(), so it can implement bdrv_check.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>

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

15 years agoqcow2: Fix warnings in check_refcount() (Kevin Wolf)
aliguori [Tue, 21 Apr 2009 23:11:45 +0000 (23:11 +0000)]
qcow2: Fix warnings in check_refcount() (Kevin Wolf)

From: Kevin Wolf <kwolf@redhat.com>

This code is currently only compiled when DEBUG_ALLOC is defined, so you
usually don't see compiler warnings on it. This patch series wants to enable
the code, so fix the format string warnings first.

While we're at it, let's print error messages to stderr.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>

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

15 years agosending NUMA topology to BIOS (Andre Przywara)
aliguori [Tue, 21 Apr 2009 22:31:41 +0000 (22:31 +0000)]
sending NUMA topology to BIOS (Andre Przywara)

uses the QEMU firmware configuration interfacce to send the NUMA
topology to the BIOS, which has to setup the tables. Only one firmware
configuration channel is used.

Signed-off-by: Andre Przywara <andre.przywara@amd.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>

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

15 years agoadd info numa command to monitor (Andre Przywara)
aliguori [Tue, 21 Apr 2009 22:30:47 +0000 (22:30 +0000)]
add info numa command to monitor (Andre Przywara)

adds an "info numa" command to the monitor to output the current
topology. Since NUMA is advertised via static ACPI tables, no changes are
possible during runtime.

Signed-off-by: Andre Przywara <andre.przywara@amd.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>

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

15 years agoadded -numa cmdline parameter parser (Andre Przywara)
aliguori [Tue, 21 Apr 2009 22:30:27 +0000 (22:30 +0000)]
added -numa cmdline parameter parser (Andre Przywara)

adds a -numa command line parameter and sets a QEMU global array with
the memory sizes. The CPU-to-node assignemnt is written into the
CPUState. If no specific values for memory and CPUs are given,
all resources will be split equally across all nodes.
This code currently support only up to 64 virtual CPUs.

Signed-off-by: Andre Przywara <andre.przywara@amd.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>

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

15 years agoSafety net for the cases where disassembler/translator disagree over instruction...
malc [Tue, 21 Apr 2009 22:26:22 +0000 (22:26 +0000)]
Safety net for the cases where disassembler/translator disagree over instruction decoding

Noticed by Mark Karpeles.

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

15 years agonet: Prevent multiple slirp instances (Jan Kiszka)
aliguori [Tue, 21 Apr 2009 20:49:11 +0000 (20:49 +0000)]
net: Prevent multiple slirp instances (Jan Kiszka)

The slirp stack is full of global variables which prevents instantiating
it more than once. Catch this during net_slirp_init to prevent more harm
later on.

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@7208 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoslirp: Enhance host-guest redirection setup (Jan Kiszka)
aliguori [Tue, 21 Apr 2009 19:56:44 +0000 (19:56 +0000)]
slirp: Enhance host-guest redirection setup (Jan Kiszka)

Allow to establish a TCP/UDP connection redirection also via a monitor
command 'host_net_redir'. Moreover, assume TCP as connection type if
that parameter is omitted.

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@7204 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agonet: Untangle nested qemu_send_packet (Jan Kiszka)
aliguori [Tue, 21 Apr 2009 19:56:41 +0000 (19:56 +0000)]
net: Untangle nested qemu_send_packet (Jan Kiszka)

Queue packets that are send during an ongoing packet delivery. This
ensures that packets will always arrive in their logical order at each
client of a VLAN. Currently, slirp generates such immediate relies, and
e.g. packet-sniffing clients on the same VLAN may get confused.

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@7203 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agomonitor: Allow host_net_add/remove for all targets (Jan Kiszka)
aliguori [Tue, 21 Apr 2009 19:56:36 +0000 (19:56 +0000)]
monitor: Allow host_net_add/remove for all targets (Jan Kiszka)

There is nothing x86-specific in host_net_add/remove, so allow them for
all targets.

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@7202 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agomonitor: Improve host_net_add (Jan Kiszka)
aliguori [Tue, 21 Apr 2009 19:56:32 +0000 (19:56 +0000)]
monitor: Improve host_net_add (Jan Kiszka)

Fix the documentation of the host_net_add monitor command and allow the
user to pass no options at all. Moreover, inform the user on the
monitor terminal if a request failed.

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@7201 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agonet: Add support for capturing VLANs (Jan Kiszka)
aliguori [Tue, 21 Apr 2009 19:56:28 +0000 (19:56 +0000)]
net: Add support for capturing VLANs (Jan Kiszka)

This patch is derived from Tristan Gingold's patch. It adds a new VLAN
client type that writes all traffic on the VLAN it is attached to into a
pcap file. Such a file can then be analyzed offline with Wireshark or
tcpdump.

Besides rebasing and some minor cleanups, the major differences to the
original version are:
 - support for enabling/disabling via the monitor (host_net_add/remove)
 - no special ordering of VLAN client list, qemu_send_packet now takes
   care of properly ordered packets
 - 64k default capturing limit (I hate tcpdump's default)

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@7200 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoAllow empty params for check_params (Jan Kiszka)
aliguori [Tue, 21 Apr 2009 19:56:23 +0000 (19:56 +0000)]
Allow empty params for check_params (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@7199 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoslirp: Handle DHCP requests for specific IP (Jan Kiszka)
aliguori [Tue, 21 Apr 2009 19:56:20 +0000 (19:56 +0000)]
slirp: Handle DHCP requests for specific IP (Jan Kiszka)

This adds proper handling of the ciaddr field as well as the "Requested
IP Address" option to slirp's DHCP server. If the client requests an
invalid or used IP, a NAK reply is sent, if it requests a specific but
valid IP, this is now respected.

NAK'ing invalid IPs is specifically useful when changing the slirp IP
range via '-net user,ip=...' while the client saved its previously used
address and tries to reacquire it. Now this will be NAK'ed and the
client will start a new discovery round.

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@7198 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agonet: Add parameter checks for VLAN clients (Jan Kiszka)
aliguori [Tue, 21 Apr 2009 19:56:15 +0000 (19:56 +0000)]
net: Add parameter checks for VLAN clients (Jan Kiszka)

This aims at helping the user to find typos or other mistakes in
parameter lists passed for VLAN client initialization. The existing
parsing infrastructure does not allow a leaner approach, but this is
better than nothing IMHO.

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@7197 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agonet: Fix -net socket,listen (Jan Kiszka)
aliguori [Tue, 21 Apr 2009 19:56:11 +0000 (19:56 +0000)]
net: Fix -net socket,listen (Jan Kiszka)

In case no symbolic name is provided when requesting VLAN connection via
listening TCP socket ('-net socket,listen=...'), qemu crashes. This
fixes the cause.

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@7196 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agonet: Check device passed to host_net_remove (Jan Kiszka)
aliguori [Tue, 21 Apr 2009 19:56:08 +0000 (19:56 +0000)]
net: Check device passed to host_net_remove (Jan Kiszka)

Make sure that we do not delete guest NICs via host_net_remove.

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@7195 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agofix omap_dss for upstream merge
Juha Riihimäki [Tue, 21 Apr 2009 10:08:22 +0000 (13:08 +0300)]
fix omap_dss for upstream merge

15 years agoMIPS signal handling fixes.
pbrook [Tue, 21 Apr 2009 01:41:10 +0000 (01:41 +0000)]
MIPS signal handling fixes.

Also fixes a register corruption bug in do_sigreturn. When "returning"
from sigreturn we are actually restoring the virtual cpu state from the
signal frame.  This is actually surprisingly hard to observe in practice.

Typically an thread be blocked in a FUTEX_WAIT call when the signal arrives,
so the effect is a spurious syscall success and the introduction of a
subtle race condition.

On x86/arm a syscall modifies a single word sized register, so
do_sigreturn can just return that value.  On MIPS a syscall clobbers
multiple registers, so we need additional smarts.  My solution is to
invent a magic errno value that means "don't touch CPU state".

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

15 years agoMIPS: Raise SIGSEGV, not SIGILL when an access faults.
pbrook [Tue, 21 Apr 2009 01:03:10 +0000 (01:03 +0000)]
MIPS: Raise SIGSEGV, not SIGILL when an access faults.

Signed-off-by: Paul Brook <paul@codesourcery.com>

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

15 years agoFix target_siginfo ordering for MIPS.
pbrook [Tue, 21 Apr 2009 00:59:40 +0000 (00:59 +0000)]
Fix target_siginfo ordering for MIPS.

Signed-off-by: Paul Brook <paul@codesourcery.com>

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

15 years agoEnable access to SYNCI_Step register in usermode emulation.
pbrook [Mon, 20 Apr 2009 23:55:57 +0000 (23:55 +0000)]
Enable access to SYNCI_Step register in usermode emulation.

Signed-off-by: Paul Brook <paul@codesourcery.com>

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

15 years agomerge fallout
Riku Voipio [Mon, 20 Apr 2009 14:41:08 +0000 (17:41 +0300)]
merge fallout

15 years agoMerge branch 'linux-user-for-upstream' into master-merge2
Riku Voipio [Mon, 20 Apr 2009 14:35:29 +0000 (17:35 +0300)]
Merge branch 'linux-user-for-upstream' into master-merge2

Conflicts:

linux-user/main.c

15 years agoRevert "Fix and cleanup IPCOP_shm* ipc calls handling"
Riku Voipio [Mon, 20 Apr 2009 14:31:58 +0000 (17:31 +0300)]
Revert "Fix and cleanup IPCOP_shm* ipc calls handling"

This reverts commit 58dfbf5143162fe32ca2b797828cce7b8ff89b53.

Conflicts:

linux-user/syscall.c

15 years agoRevert "Implement shm* syscalls"
Riku Voipio [Mon, 20 Apr 2009 14:29:52 +0000 (17:29 +0300)]
Revert "Implement shm* syscalls"

This reverts commit e26c5cda9be8993bd375819b30969a6ea61bfc6c.

15 years agoMerge branch 'upstream' into master-test
Riku Voipio [Mon, 20 Apr 2009 14:27:28 +0000 (17:27 +0300)]
Merge branch 'upstream' into master-test

Big, bad, merge

Conflicts:

hw/smc91c111.c
hw/usb-ohci.c
linux-user/main.c
linux-user/syscall.c

15 years agoRevert "Fix and cleanup IPCOP_sem* ipc calls handling"
Riku Voipio [Mon, 20 Apr 2009 14:18:33 +0000 (17:18 +0300)]
Revert "Fix and cleanup IPCOP_sem* ipc calls handling"

This reverts commit fc83fe5d8b1be1d9216ecdccaea1734c6def194c.

15 years agoRevert "Implement sem* syscalls"
Riku Voipio [Mon, 20 Apr 2009 14:18:26 +0000 (17:18 +0300)]
Revert "Implement sem* syscalls"

This reverts commit 3c4348ceb09a514552062e77abfea8a6f92059c1.

15 years agoRevert "Added posix message queue syscalls except mq_notify"
Riku Voipio [Mon, 20 Apr 2009 14:17:59 +0000 (17:17 +0300)]
Revert "Added posix message queue syscalls except mq_notify"

This reverts commit 2a1300c5bccb658f621096dc1615473de7ef449b.

15 years agoRevert "Format mq_open strace arguments"
Riku Voipio [Mon, 20 Apr 2009 14:17:52 +0000 (17:17 +0300)]
Revert "Format mq_open strace arguments"

This reverts commit 05b5a02bf74b782c43a2bb796a75391bcd9f9fb9.

15 years agoRevert "More strace formatting for posix message queues syscalls"
Riku Voipio [Mon, 20 Apr 2009 14:17:41 +0000 (17:17 +0300)]
Revert "More strace formatting for posix message queues syscalls"

This reverts commit 7625e83747e42aa50f231f5f96aa3c58bf8f0803.

15 years agoRevert "atfile wrapper support for sb2"
Riku Voipio [Mon, 20 Apr 2009 14:16:23 +0000 (17:16 +0300)]
Revert "atfile wrapper support for sb2"

This reverts commit d5b6bc55090bcd2c46d9c960db8428057da16168.

Conflicts:

configure
linux-user/syscall.c

15 years agoRevert "linux-user: unix sockets - fix running dbus"
Riku Voipio [Mon, 20 Apr 2009 14:13:03 +0000 (17:13 +0300)]
Revert "linux-user: unix sockets - fix running dbus"

This reverts commit 7479ae68f8e5bea85885faca651b8d9096f106c3.

15 years agoRevert "Revived GUEST_BASE support for usermode emulation targets."
Riku Voipio [Mon, 20 Apr 2009 14:11:51 +0000 (17:11 +0300)]
Revert "Revived GUEST_BASE support for usermode emulation targets."

This reverts commit 2d2bfb213eb1baabb111e64b0a6d936d5909faa7.

Conflicts:

configure
debian/changelog
linux-user/main.c

15 years agoRevert "Strace is now working again with GUEST_BASE support."
Riku Voipio [Mon, 20 Apr 2009 14:09:57 +0000 (17:09 +0300)]
Revert "Strace is now working again with GUEST_BASE support."

This reverts commit 4866cf6bfb937b0052eb3de4f7a9978afeb25bcf.

15 years agoRevert "linux-user: added ELF coredump support for ARM target"
Riku Voipio [Mon, 20 Apr 2009 14:09:30 +0000 (17:09 +0300)]
Revert "linux-user: added ELF coredump support for ARM target"

This reverts commit df9fc8189f1f7a1e510db98d89af1491feb5cb56.

15 years agoRevert "linux-user: Added ELF coredump support for x86 and x86_64 targets"
Riku Voipio [Mon, 20 Apr 2009 14:09:22 +0000 (17:09 +0300)]
Revert "linux-user: Added ELF coredump support for x86 and x86_64 targets"

This reverts commit a1947ff31251f29b188bf2eb936c5c7a50aadca6.

15 years agoRevert "Fix compilation in etch"
Riku Voipio [Mon, 20 Apr 2009 14:09:13 +0000 (17:09 +0300)]
Revert "Fix compilation in etch"

This reverts commit 5801bdf0cc35ea8d6e6428a6f540182e94bf1646.

15 years agoRevert "Fix getcwd syscall return value"
Riku Voipio [Mon, 20 Apr 2009 14:08:20 +0000 (17:08 +0300)]
Revert "Fix getcwd syscall return value"

This reverts commit 20f37bde068184789fdfe81664dbff815652e636.

15 years agofix fcntl
Riku Voipio [Mon, 20 Apr 2009 13:04:15 +0000 (16:04 +0300)]
fix fcntl

15 years agofix termios
Riku Voipio [Mon, 20 Apr 2009 13:03:53 +0000 (16:03 +0300)]
fix termios

15 years agoRevived GUEST_BASE support for usermode emulation targets.
Riku Voipio [Sun, 29 Mar 2009 18:46:34 +0000 (21:46 +0300)]
Revived GUEST_BASE support for usermode emulation targets.

From: Mika Westerberg <mika.westerberg@iki.fi>

- Now GUEST_BASE is dynamic and can be set from command line.
- Qemu checks /proc/sys/vm/mmap_min_addr and sets GUEST_BASE
  if needed.
- Code generation supports GUEST_BASE for i386 and x86_64 hosts.

15 years agolinux-user: strace now handles guest strings correctly
Mika Westerberg [Tue, 7 Apr 2009 13:57:29 +0000 (16:57 +0300)]
linux-user: strace now handles guest strings correctly

- to not to break strace with GUEST_BASE is set:
- Strace now can load and print guest strings correctly.
- Added printing support for commonly used flags in some syscalls
  (e.g open, creat, mmap etc.)

15 years agolinux-user: added x86 and x86_64 support for ELF coredump
Mika Westerberg [Tue, 7 Apr 2009 06:57:59 +0000 (09:57 +0300)]
linux-user: added x86 and x86_64 support for ELF coredump

15 years agolinux-user: implemented ELF coredump support for ARM target
Mika Westerberg [Tue, 7 Apr 2009 06:57:11 +0000 (09:57 +0300)]
linux-user: implemented ELF coredump support for ARM target

When target process is killed with signal (such signal that
should dump core) a coredump file is created.  This file is
similar than coredump generated by Linux (there are few exceptions
though).

Riku Voipio: added support for rlimit

15 years agoImplement shm* syscalls and fix 64/32bit errors
Riku Voipio [Fri, 3 Apr 2009 07:42:00 +0000 (10:42 +0300)]
Implement shm* syscalls and fix 64/32bit errors

Verified with ltp shm* tests. Following test still
fails

shmt09      3  FAIL

No regressions were observed on either 64bit or 32bit
IA hosts.

Patch based on original patches by:
  Kirill A. Shutemov <kirill@shutemov.name>
  - Implement shm* syscalls
  - Fix and cleanup IPCOP_shm* ipc calls handling

Depends on "Rewrite mmap_find_vma()" patch.

Various whitespace uglifications applied to minimize
patch size.

15 years agoRewrite mmap_find_vma() to work fine on 64-bit hosts with 32-bit targets
Kirill A. Shutemov [Mon, 13 Oct 2008 07:54:58 +0000 (10:54 +0300)]
Rewrite mmap_find_vma() to work fine on 64-bit hosts with 32-bit targets

qemu's page table can be incomple if /proc/self/maps is unavailable or
host allocating a memory with mmap(), so we can't use it to find free
memory area.

New version mmap_find_vma() uses mmap() without MAP_FIXED to find free
memory.

Signed-off-by: Kirill A. Shutemov <kirill@shutemov.name>
Signed-off-by: Riku Voipio <riku.voipio@iki.fi>

15 years agorelease w16 0.10.0-0sb6
Riku Voipio [Mon, 20 Apr 2009 11:41:49 +0000 (14:41 +0300)]
release w16

15 years agoBuild system: Fix dependency of qemu.1
blueswir1 [Sun, 19 Apr 2009 10:25:05 +0000 (10:25 +0000)]
Build system: Fix dependency of qemu.1

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>

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

15 years agokqemu: merge CONFIG_KQEMU and USE_KQEMU
blueswir1 [Sun, 19 Apr 2009 10:18:01 +0000 (10:18 +0000)]
kqemu: merge CONFIG_KQEMU and USE_KQEMU

Basically a recursive ":%s/USE_KQEMU/CONFIG_KQEMU/g".

Signed-off-by: Paul Bolle <pebolle@tiscali.nl>

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

15 years agoAdds SM501 usb host emulation feature.
aurel32 [Sun, 19 Apr 2009 09:15:50 +0000 (09:15 +0000)]
Adds SM501 usb host emulation feature.
It makes usb keyboard available for sh4/r2d system emulation.

The changes for "hw/usb-ohci.c" are as follows.
 - 'localmem_base' is introduced as OHCIState struct member.
   SM501 has a local memory, and it is used to pass and receive data with
   OHCI driver.  OHCI driver accesses it with SH4 physical memory address,
   and SM501 accesses it with SM501 local address.  'localmem_base' holds
   where the SM501 local memory is mapped into SH4 physical address space.
 - Memory access functions modified to adjust address with 'localmem_base'.
   The functions are, ohci_read_*(), ohci_put_*(), and ohci_copy_*().
 - ohci_read_hcca() and ohci_put_hcca() are introduced for more consistent
   implementation.

For other source files, it does,
 - introduces usb_ohci_init_sm501().
 - adds irq argument for SM501 initialization, to emulate USB interrupts.

Signed-off-by: Shin-ichiro KAWASAKI <kawasaki@juno.dti.ne.jp>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>

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

15 years agolinux-user: Linux kernel's fchmodat and faccessat have three args (no 4th arg)
aurel32 [Sun, 19 Apr 2009 08:52:17 +0000 (08:52 +0000)]
linux-user: Linux kernel's fchmodat and faccessat have three args (no 4th arg)

In Linux kernel, fchmodat() and faccessat() take tree args.
4th value <int flags> is only processed by libc.

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@7187 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoFix indices in Menelaus save/load.
balrog [Sun, 19 Apr 2009 00:26:31 +0000 (00:26 +0000)]
Fix indices in Menelaus save/load.

Version increase won't be helpful here.  Spotted by Sergei Steshenko / Blau
Wirbel.

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

15 years agokqemu: only compile kqemu.o if actually needed
blueswir1 [Sat, 18 Apr 2009 19:25:43 +0000 (19:25 +0000)]
kqemu: only compile kqemu.o if actually needed

kqemu.o is compiled even if kqemu support is disabled. This is useless
(kqemu.o should provide nothing that is actually used in that case) and
slightly confusing. So introduce CONFIG_KQEMU for optionally compiling
kqemu.o.

Signed-off-by: Paul Bolle <pebolle@tiscali.nl>

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

15 years agolinux-user: fix IPCOP_sem* and implement sem*
aurel32 [Sat, 18 Apr 2009 16:16:12 +0000 (16:16 +0000)]
linux-user: fix IPCOP_sem* and implement sem*

Fix and cleanup IPCOP_sem* ipc calls handling and
implement sem* syscalls.

Riku:

1) Uglify whitespace so that diff gets smaller and easier
to review

2) use __get_user in target_to_host_sembuf

Signed-off-by: Kirill A. Shutemov <kirill@shutemov.name>
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@7184 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoqemu-io: Verify read data by patterns (Kevin Wolf)
aliguori [Sat, 18 Apr 2009 15:36:23 +0000 (15:36 +0000)]
qemu-io: Verify read data by patterns (Kevin Wolf)

This patch adds a -P option to read and readv which allows to compare the read
data to a given pattern. This can be used to verify data written by write -P.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>

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

15 years agoqemu-io: Fix handling of bdrv_is_allocated() return value (Kevin Wolf)
aliguori [Sat, 18 Apr 2009 15:36:19 +0000 (15:36 +0000)]
qemu-io: Fix handling of bdrv_is_allocated() return value (Kevin Wolf)

bdrv_is_allocated() returns a boolean which indicates if the offset is
allocated, not 0 on success and everything else is an error.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>

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

15 years agomonitor: Update command help (Jan Kiszka)
aliguori [Sat, 18 Apr 2009 15:36:15 +0000 (15:36 +0000)]
monitor: Update command help (Jan Kiszka)

Align some monitor help texts to the related command parameter
definitions. host_net_add is skipped intentionally, will be slightly
reworked in a separate patch later.

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@7180 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agox86: Enhanced dump of segment registers (Jan Kiszka)
aliguori [Sat, 18 Apr 2009 15:36:11 +0000 (15:36 +0000)]
x86: Enhanced dump of segment registers (Jan Kiszka)

Parse the descriptor flags that segment registers refer to and show the
result in a more human-friendly format. The output of info registers eg.
then looks like this:

[...]
ES =007b 00000000 ffffffff 00cff300 DPL=3 DS   [-WA]
CS =0060 00000000 ffffffff 00c09b00 DPL=0 CS32 [-RA]
SS =0068 00000000 ffffffff 00c09300 DPL=0 DS   [-WA]
DS =007b 00000000 ffffffff 00cff300 DPL=3 DS   [-WA]
FS =0000 00000000 00000000 00000000
GS =0033 b7dd66c0 ffffffff b7dff3dd DPL=3 DS   [-WA]
LDT=0000 00000000 00000000 00008200 DPL=0 LDT
TR =0080 c06da700 0000206b 00008900 DPL=0 TSS32-avl
[...]

Changes in this version:
 - refactoring so that only a single helper is used for dumping the
   segment descriptor cache
 - tiny typo fixed that broke 64-bit segment type names

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@7179 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoa couple of qemu-io fixes (Christoph Hellwig)
aliguori [Sat, 18 Apr 2009 15:36:06 +0000 (15:36 +0000)]
a couple of qemu-io fixes (Christoph Hellwig)

Fix two stupid bugs that I forgot to push out:

 - qiov->size already is in bytes, no need to shift it
 - actually use the supplied patter in the writev command

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>

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

15 years agobuildsytem: consistently use install (Christoph Egger)
aliguori [Sat, 18 Apr 2009 15:36:02 +0000 (15:36 +0000)]
buildsytem: consistently use install (Christoph Egger)

attached patch makes qemu use install consistently.

Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>

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

15 years agoUse ANSI prototypes to please sparse
blueswir1 [Sat, 18 Apr 2009 07:32:41 +0000 (07:32 +0000)]
Use ANSI prototypes to please sparse

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

15 years agoAdd 'static' to avoid a sparse warning
blueswir1 [Sat, 18 Apr 2009 07:29:59 +0000 (07:29 +0000)]
Add 'static' to avoid a sparse warning

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

15 years agoMove bootp_filename to avoid a sparse warning
blueswir1 [Sat, 18 Apr 2009 07:29:30 +0000 (07:29 +0000)]
Move bootp_filename to avoid a sparse warning

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

15 years agoFix non-ACPI Timer Interrupt Routing (Beth Kon)
aliguori [Fri, 17 Apr 2009 21:01:11 +0000 (21:01 +0000)]
Fix non-ACPI Timer Interrupt Routing (Beth Kon)

Replicate ACPI irq0->inti2 override in mp table for non-acpi case.

v1 -> v2 adds comment suggested by Ryan.

Signed-off-by: Beth Kon <eak@us.ibm.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>

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

15 years agohpet: Fix emulation of HPET_TN_SETVAL (Jan Kiszka)
aliguori [Fri, 17 Apr 2009 20:50:58 +0000 (20:50 +0000)]
hpet: Fix emulation of HPET_TN_SETVAL (Jan Kiszka)

While Intel's spec is not that clear here, latest changes to Linux' HPET
code (commit c23e253e67c9d8a91a0ffa33c1f571a17f0a2403, "x86: hpet: stop
HPET_COUNTER when programming periodic mode") strongly suggest that
HPET_TN_SETVAL rather means: Set _both_ the comparator value and
register.

With this patch applied, I'm again able to boot 2.6.30-rc kernels as
they no longer panic like this (which was due to the comparator
register remaining 0):

ENABLING IO-APIC IRQs
..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1
..MP-BIOS bug: 8254 timer not connected to IO-APIC
...trying to set up timer (IRQ0) through the 8259A ...
..... (found apic 0 pin 2) ...
....... failed.
...trying to set up timer as Virtual Wire IRQ...
..... failed.
...trying to set up timer as ExtINT IRQ...
..... failed :(.
Kernel panic - not syncing: IO-APIC + timer doesn't work! [...]

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@7168 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agokvm: Fix cpuid initialization (Jan Kiszka)
aliguori [Fri, 17 Apr 2009 20:50:54 +0000 (20:50 +0000)]
kvm: Fix cpuid initialization (Jan Kiszka)

Fix (more or less) spurious guest boot failures due to corrupted cpuid
states. The reason was insufficient initialization of cpuid entries
before passing them to the kernel.

At this chance also fix improper entry pointer progression and simplify
the code a bit.

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@7167 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoqcow2 corruption: Fix alloc_cluster_link_l2 (Kevin Wolf)
aliguori [Fri, 17 Apr 2009 20:44:06 +0000 (20:44 +0000)]
qcow2 corruption: Fix alloc_cluster_link_l2 (Kevin Wolf)

This patch fixes a qcow2 corruption bug introduced in SVN Rev 5861. L2 tables
are big endian, so entries must be converted before being passed to functions.

This bug is easy to trigger. The following script will create and destroy a
qcow2 image (the header is gone after three loop iterations):

    #!/bin/bash
    qemu-img create -f qcow2 test.qcow 1M
    for i in $(seq 1 10); do
    qemu-system-x86_64 -hda test.qcow -monitor stdio > /dev/null 2>&1 <<EOF
    savevm test-$i
    quit
    EOF
    done

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>

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

15 years agoMake the sed script also work with OpenBSD and OpenSolaris seds
blueswir1 [Fri, 17 Apr 2009 20:01:12 +0000 (20:01 +0000)]
Make the sed script also work with OpenBSD and OpenSolaris seds

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

15 years agoqemu: Add support for SMBIOS command line otions (Alex Williamson)
aliguori [Fri, 17 Apr 2009 18:59:56 +0000 (18:59 +0000)]
qemu: Add support for SMBIOS command line otions (Alex Williamson)

Create a new -smbios option (x86-only) to allow binary SMBIOS entries
to be passed through to the BIOS or modify the default values of
individual fields of type 0 and 1 entries on the command line.

Binary SMBIOS entries can be generated as follows:

dmidecode -t 1 -u | grep $'^\t\t[^"]' | xargs -n1 | \
        perl -lne 'printf "%c", hex($_)' > smbios_type_1.bin

These can then be passed to the BIOS using this switch:

 -smbios file=smbios_type_1.bin

Command line generation supports the following syntax:

 -smbios type=0[,vendor=str][,version=str][,date=str][,release=%d.%d]
 -smbios type=1[,manufacturer=str][,product=str][,version=str][,serial=str]
              [,uuid=$(uuidgen)][,sku=str][,family=str]

For instance, to add a serial number to the type 1 table:

 -smbios type=1,serial=0123456789

Interface is extensible to support more fields/tables as needed.

aliguori: remove texi formatting from help output

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@7163 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoqemu: Add prototype and make qemu_uuid_parse() non-static (Alex Williamson)
aliguori [Fri, 17 Apr 2009 18:58:14 +0000 (18:58 +0000)]
qemu: Add prototype and make qemu_uuid_parse() non-static (Alex Williamson)

SMBIOS parameters can also provide a UUID outside of vl.c.

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@7162 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoFree VLANClientState using qemu_free() (Mark McLoughlin)
aliguori [Fri, 17 Apr 2009 17:11:12 +0000 (17:11 +0000)]
Free VLANClientState using qemu_free() (Mark McLoughlin)

It's allocated using qemu_mallocz(), so ...

The name and model strings are strdup() allocated, so free()
is still appropriate for them.

Reported-by: Jan Kiszka <jan.kiszka@siemens.com>
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@7151 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoIntroduce VLANClientState::cleanup() (Mark McLoughlin)
aliguori [Fri, 17 Apr 2009 17:11:08 +0000 (17:11 +0000)]
Introduce VLANClientState::cleanup() (Mark McLoughlin)

We're currently leaking memory and file descriptors on device
hot-unplug.

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@7150 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoUse NICInfo::model for eepro100 savevm ID string (Mark McLoughlin)
aliguori [Fri, 17 Apr 2009 17:11:03 +0000 (17:11 +0000)]
Use NICInfo::model for eepro100 savevm ID string (Mark McLoughlin)

NICInfo::model will always be identical to the device name strings
we're currently passing to nic_init(). Just re-use NICInfo::model.

This makes it clear why we use vc->model for unregister_savevm()
in a subsequent patch.

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@7149 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoAdd unregister_savevm() (Mark McLoughlin)
aliguori [Fri, 17 Apr 2009 17:10:59 +0000 (17:10 +0000)]
Add unregister_savevm() (Mark McLoughlin)

Currently there's no way to unregister a savevm callback, so
e.g. if a NIC is hot-unplugged and a savevm is issued, we'll
segfault.

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@7148 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoRemove NICInfo from e1000 and mipsnet state (Mark McLoughlin)
aliguori [Fri, 17 Apr 2009 17:10:56 +0000 (17:10 +0000)]
Remove NICInfo from e1000 and mipsnet state (Mark McLoughlin)

NICInfo isn't used after initialization, so remove it from the driver
state structures.

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@7147 c046a42c-6fe2-441c-8c8c-71466251a162

15 years agoRemove some useless malloc() checking (Mark McLoughlin)
aliguori [Fri, 17 Apr 2009 17:10:51 +0000 (17:10 +0000)]
Remove some useless malloc() checking (Mark McLoughlin)

Now that we abort() on malloc, neither qemu_find_vlan() nor
net_tap_fd_init() can fail.

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@7146 c046a42c-6fe2-441c-8c8c-71466251a162