Statistics
| Branch: | Revision:

root @ 1e6eec8b

# Date Author Comment
1e6eec8b 09/05/2009 01:14 pm Blue Swirl

Fix Sparse warnings: add "static"

Signed-off-by: Blue Swirl <>

f2818f22 09/05/2009 09:24 am Artyom Tarasenko

esp: handle "select without attention"

Up to now "select without attention" was handled the same way as
"select with attention". According to

http://www.ibiblio.org/pub/historic-linux/early-ports/Sparc/NCR/NCR53C9X.txt

select without ATN sends the CDB (Command Descriptor Block) directly,...

f40d7537 09/04/2009 08:47 pm Blue Swirl

Include sys-queue.h early to override system queue definitions on BSD

Signed-off-by: Blue Swirl <>

aa43d9cc 09/04/2009 08:43 pm Blue Swirl

Shuffle lines to avoid gcc 3 warning about redundant redeclaration

Signed-off-by: Blue Swirl <>

c34ebfdc 09/04/2009 06:13 pm Anthony Liguori

Bring pcbios, seabios, and vgabios into the tree as git submodules. Right now,
they aren't integrated into the build but we can do that incrementally.

Signed-off-by: Anthony Liguori <>

5de65a07 09/04/2009 05:37 pm Luiz Capitulino

Introduce QString unit-tests

This suite contains tests to assure that QString API works as expected.

To execute it you should have check installed and build QEMU with
check support enabled (--enable-check-utests) and then run:

$ ./check-qstring

Signed-off-by: Luiz Capitulino <>...

93bd4eee 09/04/2009 05:37 pm Luiz Capitulino

Introduce QDict test data file

This file is used by the QDict stress test, it adds 5k nodes
on the dictionary and performs various operations.

My original file had 21k entries and almost 400k of size. After
some discussion with Eduardo Habkost, I decided to reduce the...

7b8c51ad 09/04/2009 05:37 pm Luiz Capitulino

Introduce QDict unit-tests

This suite contains tests to assure that QDict API works as expected.

To execute it you should have check installed and build QEMU with
check support enabled (--enable-check-utests) and then run:

$ ./check-qdict

Signed-off-by: Luiz Capitulino <>...

ae027ad3 09/04/2009 05:37 pm Stefan Weil

mips malta: Fix fdc regression and use qdev for i8042 setup

8baf73adf664e79eae201c3f618078a220a661d9 (qdev/isa: convert fdc)
breaks MIPS Malta:

Tried to create isa device isa-fdc with no isa bus present

Fix this by creating an isa bus for piix4.
This change also requires some more qdev related changes...

675ebef9 09/04/2009 05:37 pm Luiz Capitulino

monitor: fail when 'i' type is greater than 32-bit

The 'i' argument type is for 32-bit only and most handlers
will use an 'int' to store its value.

It's better to fail gracefully when the user enters a value
greater than 32-bit than to get subtle casting bugs....

fb46660e 09/04/2009 05:37 pm Luiz Capitulino

monitor: Update supported types documentation

Signed-off-by: Luiz Capitulino <>
Signed-off-by: Anthony Liguori <>

5495ed11 09/04/2009 05:37 pm Luiz Capitulino

Add check support

Check is a unit testing framework for C.

All the QObjects have unit-tests and more will be written for the
future data types.

More info about check can be found at:

http://check.sourceforge.net/

Signed-off-by: Luiz Capitulino <>...

33837ba6 09/04/2009 05:37 pm Luiz Capitulino

Introduce QInt unit-tests

This suite contains tests to assure that QInt API works as expected.

To execute it you should have check installed and build QEMU with
check support enabled (--enable-check-utests) and then run:

$ ./check-qint

Signed-off-by: Luiz Capitulino <>...

6d1cac3b 09/04/2009 05:37 pm Luiz Capitulino

monitor: Drop handler_8 and handler_9

Commit 79c4f6b08009a1d23177c2be8bd003253cf3686a added handler_8 and
handler_9 handling, but there isn't any command handler with those
number of arguments.

Just drop them.

Signed-off-by: Luiz Capitulino <>...

37b7ad48 09/04/2009 05:37 pm Luiz Capitulino

monitor: Port handler_10 to use QDict

This commit ports command handlers that receive ten arguments to use
the new monitor's dictionary.

Signed-off-by: Luiz Capitulino <>
Signed-off-by: Anthony Liguori <>

55f81d96 09/04/2009 05:37 pm Luiz Capitulino

monitor: Split monitor_handle_command()

In order to help the integration with unit-tests and having a better
design, this commit splits monitor_handle_command() into two parts.

The parsing code is moved to a function called monitor_parse_command(),
while allocating memory and calling the handler is still done by...

439bcb61 09/04/2009 05:37 pm Luiz Capitulino

monitor: Drop unused macros

GET_TLONG() and GET_TPHYSADDR() are not needed anymore, QInt can
handle such conversions.

Signed-off-by: Luiz Capitulino <>
Signed-off-by: Anthony Liguori <>

590fb3b7 09/04/2009 05:37 pm Luiz Capitulino

monitor: Drop str_allocated[]

It's not used anymore, as QDict is now used to handle string
memory allocation/deallocation.

Signed-off-by: Luiz Capitulino <>
Signed-off-by: Anthony Liguori <>

53773581 09/04/2009 05:37 pm Luiz Capitulino

monitor: Drop args[] handling code

This commit drops all the code used to handle the 'args[]' array,
as now we use a dictionary to pass arguments.

Signed-off-by: Luiz Capitulino <>
Signed-off-by: Anthony Liguori <>

d54908a5 09/04/2009 05:37 pm Luiz Capitulino

monitor: Port handler_1 to use QDict

This commit ports command handlers that receive one argument to use
the new monitor's dictionary.

Signed-off-by: Luiz Capitulino <>
Signed-off-by: Anthony Liguori <>

f18c16de 09/04/2009 05:37 pm Luiz Capitulino

monitor: Port handler_2 to use QDict

This commit ports command handlers that receive two arguments to use
the new monitor's dictionary.

Signed-off-by: Luiz Capitulino <>
Signed-off-by: Anthony Liguori <>

1d4daa91 09/04/2009 05:37 pm Luiz Capitulino

monitor: Port handler_3 to use QDict

This commit ports command handlers that receive three arguments to use
the new monitor's dictionary.

Signed-off-by: Luiz Capitulino <>
Signed-off-by: Anthony Liguori <>

afe67ef2 09/04/2009 05:37 pm Luiz Capitulino

monitor: Port handler_4 to use QDict

This commit ports command handlers that receive four arguments to use
the new monitor's dictionary.

Note that GET_TLONG() and GET_TPHYSADDR() macros are not used anymore.

Signed-off-by: Luiz Capitulino <>...

1bd1442e 09/04/2009 05:37 pm Luiz Capitulino

monitor: Port handler_5 to use QDict

This commit ports command handlers that receive five arguments to use
the new monitor's dictionary.

Note that GET_TLONG() and GET_TPHYSADDR() macros are not used anymore.

Signed-off-by: Luiz Capitulino <>...

aa93e39c 09/04/2009 05:37 pm Luiz Capitulino

monitor: Port handler_6 to use QDict

This commit ports command handlers that receive six arguments to use
the new monitor's dictionary.

Signed-off-by: Luiz Capitulino <>
Signed-off-by: Anthony Liguori <>

c1925484 09/04/2009 05:37 pm Luiz Capitulino

monitor: Port handler_7 to use QDict

This commit ports command handlers that receive seven arguments to
use the new monitor's dictionary.

Signed-off-by: Luiz Capitulino <>
Signed-off-by: Anthony Liguori <>

f7188bbe 09/04/2009 05:37 pm Luiz Capitulino

monitor: Setup a QDict with arguments to handlers

With this commit monitor_handle_command() will be able to setup a
QDict with arguments to command handlers.

However, the current 'args[]' method is still being used, next
changes will port commands to get their arguments from the dictionary....

cdb0def3 09/04/2009 05:37 pm Luiz Capitulino

monitor: Export QDict header

Command handlers will have to use QDict functions, so export
qdict.h through monitor.h.

Signed-off-by: Luiz Capitulino <>
Signed-off-by: Anthony Liguori <>

f96fc8a0 09/04/2009 05:37 pm Luiz Capitulino

monitor: Port handler_0 to use QDict

This commit ports command handlers that receive no arguments to use
the new monitor's dictionary.

It might seem no sense to do this, as the handlers have no arguments,
but at the end of this porting work all handlers will have the same...

6b8d1ece 09/04/2009 05:37 pm Luiz Capitulino

Introduce QInt

QInt is a high-level data type that can be used to represent integers,
internally it stores an int64_t value.

The following functions are available:

- qint_from_int() Create a new QInt
- qint_get_int() Get the stored integer

Signed-off-by: Luiz Capitulino <>...

66f70487 09/04/2009 05:37 pm Luiz Capitulino

Introduce QString

QString is a high-level data type that can be used to represent
C strings.

The following functions are available:

- qstring_from_str() Create a new QString
- qstring_get_str() Get a pointer to the stored string

Note that qstring_get_str() is too low-level for a data type like...

fb08dde0 09/04/2009 05:37 pm Luiz Capitulino

Introduce QDict

QDict is a high-level dictionary data type that can be used to store a
collection of QObjects. A unique key is associated with only one
QObject.

The following functions are available:

- qdict_new() Create a new QDict
- qdict_put() Add a new 'key:object' pair...

38183186 09/04/2009 05:37 pm Luiz Capitulino

Add wrappers to functions used by the Monitor

Some functions exported to be used by the Monitor as command
handlers are also called in other places as regular functions.

When those functions got ported to use the Monitor dictionary
to pass argments, the callers will have to setup a dictionary...

4d76d2ba 09/04/2009 05:37 pm Luiz Capitulino

monitor: New format for handlers argument types

Current handlers argument types, as defined in qemu-monitor.hx file,
are a sequence of chars where each one represents one argument type
of the command handler. The number of chars is also used to know how
many arguments a given handler accepts....

5a1a2356 09/04/2009 05:37 pm Luiz Capitulino

Introduce QObject

This commit introduces the qobject.h header file, it contains
basic QObject definitions and helper macros.

Signed-off-by: Luiz Capitulino <>
Signed-off-by: Anthony Liguori <>

4e2f73ce 09/04/2009 05:37 pm Glauber Costa

do not issue ioctl from within the io thread

According to Documentation/kvm/api.txt, (and well, to common sense),
we should not be calling vcpu ioctls from within the iothread.
Since vcpu initialization issues a vcpu ioctl, move it a little bit
further in time to prevent it....

9da43187 09/04/2009 05:37 pm Jan Kiszka

net: Fix send queue ordering

Ensure that packets enqueued for delayed delivery are dequeued in FIFO
order. At least one simplistic guest TCP/IP stack became unhappy due to
sporadically reordered packet streams.

At this chance, switch the send queue implementation to TAILQ....

ddd9bbd9 09/04/2009 05:37 pm Jan Kiszka

Support for multiple -monitor devices

Rebased version of Anthony's patch: Allow to specify more than one
monitor terminal via the -monitor command line switch. This is
particularly useful when libvirt or some other management tool already
occupies the primary monitor but you need another one for debugging....

f455e98c 09/04/2009 05:37 pm Gerd Hoffmann

ide: pass down DriveInfo instead of BlockDriverState

Signed-off-by: Gerd Hoffmann <>
Signed-off-by: Anthony Liguori <>

9cdd03a7 09/04/2009 05:37 pm Gerd Hoffmann

ide: move cmd+irq from IDEState to IDEBus.

These variables are per bus, not per drive. Lets move them and
cleanup things a bit. And fix the cmd migration bug for real.

Signed-off-by: Gerd Hoffmann <>
Signed-off-by: Anthony Liguori <>

d1f171bd 09/04/2009 05:37 pm Juan Quintela

piix3: use new vmstate infrastructure

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

58a04db1 09/04/2009 05:37 pm Andre Przywara

add documentation for multi-core features

extend QEMU's internal help and man page to cover the recently
added multi-core feature.

Signed-off-by: Andre Przywara <>
Signed-off-by: Anthony Liguori <>

b84a5c6f 09/04/2009 05:37 pm Amit Shah

Remove typedef for bool from eepro100.c

eepro100.c shouldn't have the need to do this in its local header file.

And I recently started getting this:

$ make -j3
...
CC x86_64-softmmu/eepro100.o
/home/amit/src/qemu/hw/eepro100.c:112: error: two or more data types...

67b3b71d 09/04/2009 05:37 pm Juan Quintela

Delay sighandler_setup()

If we are using --serial telnet:0:5555,server or similar, ^C will not
kill qemu. We need to first connect using telnet, and the the ^C takes
effect.

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

8372615d 09/04/2009 05:37 pm Juan Quintela

pci_irq_levels[] belong to PIIX3State

With previous cleanups, now it is possible to put it where it belongs

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

da64182c 09/04/2009 05:37 pm Juan Quintela

Update SaveVM versions

Now that we have all fields belonging to a PCIDevice, save each field
on the device that it belongs. This means moving pci_irq_levels
from PCII440FXState to PIIX3State.
Old formats are loaded, but we only save on the new saner format....

fa3aad24 09/04/2009 05:37 pm Juan Quintela

VMState: Fix sub-structs versioning

We can't check the version in a substruct, it is not stored anywhere

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

0c7d19e5 09/04/2009 05:37 pm Juan Quintela

i440fx: use new vmstate infrastructure

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

fd37d881 09/04/2009 05:37 pm Juan Quintela

Create PIIX3State instead of using PCIDevice for PIIX3

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

bd7dce87 09/04/2009 05:37 pm Juan Quintela

Introduce PIIX3IrqState for piix3 irq's state

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

85a750ca 09/04/2009 05:37 pm Juan Quintela

Fold piix3_init() intto i440fx_init

i440fx_init will now work properly if we don't setup piix3

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

fd83e9b9 09/04/2009 05:37 pm Juan Quintela

We can add piix3_dev now to PIIX3IrqState

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

867a0d7d 09/04/2009 05:37 pm Juan Quintela

Save irq_state into PCII440FXState

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

0a3bacf3 09/04/2009 05:37 pm Juan Quintela

Use PCII440FXState instead of generic PCIDevice

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

6c009fa4 09/04/2009 05:37 pm Juan Quintela

Move smm_enabled and isa_memory_mappings to PCII440FXState

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

5d4e84c8 09/04/2009 05:37 pm Juan Quintela

We want the argument pass to set_irq to be opaque

piix_pci want to pass more things that the pic

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

a4bf1f3e 09/04/2009 05:37 pm Juan Quintela

piix4 don't use pci_irq_levels at all

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

823e675a 09/04/2009 05:37 pm Juan Quintela

Split piix4 support from piix_pci.c

Now mips_malta uses piix4 and pc's use piix_pci definitions

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

15dc1128 09/04/2009 05:37 pm Juan Quintela

low_set_irq is not used anywhere

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

0187688f 09/04/2009 11:38 am Edgar E. Iglesias

microblaze: Trap on illegal load/store sizes.

Signed-off-by: Edgar E. Iglesias <>

329bfa77 09/04/2009 10:40 am Edgar E. Iglesias

microblaze: Correct FPU decoding masks.

Signed-off-by: Edgar E. Iglesias <>

3aa80988 09/03/2009 11:28 pm Edgar E. Iglesias

microblaze: Compute masks for alignment checks at translation time.

Thanks to Blue Swirl for reporting.
Signed-off-by: Edgar E. Iglesias <>

faed1c2a 09/03/2009 02:25 pm Edgar E. Iglesias

microblaze: Trap on bus accesses to unmapped areas.

Signed-off-by: Edgar E. Iglesias <>

3c50a71f 09/03/2009 02:04 pm Edgar E. Iglesias

microblaze: MMU shows more respect to synthesis config.

The microblaze MMU can be synthesized in different configurations.
Have the MMU model show more respect to the chosen configuration.

Signed-off-by: Edgar E. Iglesias <>

968a40f6 09/03/2009 01:59 pm Edgar E. Iglesias

microblaze: Trap on unaligned data accesses.

Untested...

Signed-off-by: Edgar E. Iglesias <>

821ebb33 09/03/2009 01:52 pm Edgar E. Iglesias

microblaze: Trap on divizions by zero.

Signed-off-by: Edgar E. Iglesias <>

ee7dbcf8 09/03/2009 12:18 pm Edgar E. Iglesias

microblaze: Correct mfs into r0.

Signed-off-by: Edgar E. Iglesias <>

1567a005 09/03/2009 12:12 pm Edgar E. Iglesias

microblaze: Catch illegal insns and privilege violations.

Raise illegal instruction exceptions when executing instructions that
require units not available on the particulare microblaze configuration.

Also trap priviliege violations made by userspace.

Signed-off-by: Edgar E. Iglesias <>

cedb936b 09/03/2009 11:25 am Edgar E. Iglesias

microblaze: Add infrastructure for supporting hw exceptions.

Signed-off-by: Edgar E. Iglesias <>

a75cf0c5 09/03/2009 11:15 am Edgar E. Iglesias

microblaze: Clear exception in dslot ESR bit if not in dslot.

Signed-off-by: Edgar E. Iglesias <>

21d20636 09/03/2009 11:13 am Edgar E. Iglesias

microblaze: Correct MMU debug log.

Signed-off-by: Edgar E. Iglesias <>

f9c7b77c 09/02/2009 03:46 pm Kirill A. Shutemov

Fix warning on x86_64

audio/esdaudio.c: In function 'qesd_thread_out':
audio/esdaudio.c:136: error: format '%d' expects type 'int', but
argument 3 has type 'ssize_t'
audio/esdaudio.c: In function 'qesd_thread_in':
audio/esdaudio.c:366: error: format '%d' expects type 'int', but...

9902571d 08/31/2009 10:30 pm Blue Swirl

Sparc32: port sun4c interrupt controller to VMState design

Signed-off-by: Blue Swirl <>

f4b19cd0 08/31/2009 10:30 pm Blue Swirl

Sparc32: port timers to VMState design

Signed-off-by: Blue Swirl <>

9ebec28b 08/31/2009 10:30 pm Blue Swirl

Sparc32: timer field is never NULL

Signed-off-by: Blue Swirl <>

55a6e51f 08/31/2009 10:30 pm Blue Swirl

Add VMState support for ptimers

Signed-off-by: Blue Swirl <>

4e2a68c1 08/31/2009 08:12 pm Artyom Tarasenko

esp (sparc32) Extra scsi data.

ESP: Message Accepted (12)
ESP: Transfer status (sense=0)
ESP: read reg5: 0x20
ESP: read reg4: 0x07
ESP: read reg7: 0x02
Extra scsi data. Fatal error.

It looks like "Message Accepted" shouldn't write a response. At least...

9e3a95ef 08/31/2009 06:41 pm Stefan Weil

Fix compiler warnings

Starting with commit df7a86ed735eafefbd046c8cad7134652fe3f600,
mingw32 builds result in a compiler warning for dns_addr:

CC    slirp/slirp.o
/home/stefan/src/qemu/savannah/qemu/slirp/slirp.c:50: warning: missing braces around initializer...
528e93a9 08/31/2009 06:14 pm Blue Swirl

Fix breakage due to __thread

Thread-local storage is not supported on all hosts.

Signed-off-by: Blue Swirl <>

757506d2 08/29/2009 04:37 pm Blue Swirl

Fix gcc 3 warning: comparison is always true due to limited range of data type

Signed-off-by: Blue Swirl <>

2000cbc5 08/29/2009 04:37 pm Blue Swirl

Fix gcc 3 warning about uninitialized variable

If nb_sectors is 0, cluster_offset will not be initialized.

Signed-off-by: Blue Swirl <>

d37adb09 08/29/2009 04:37 pm Blue Swirl

Sparc32: port Slavio misc devices to VMState design

Signed-off-by: Blue Swirl <>

c21011a9 08/29/2009 04:36 pm Blue Swirl

Sparc32: port ECC memory controller to VMState design

Signed-off-by: Blue Swirl <>

db3c9e08 08/28/2009 11:46 pm Blue Swirl

Sparc32: port IOMMU to VMState design

Signed-off-by: Blue Swirl <>

75c497dc 08/28/2009 11:46 pm Blue Swirl

Sparc32: port DMA controller to VMState design

Signed-off-by: Blue Swirl <>

c0c41a4b 08/28/2009 11:43 pm Blue Swirl

Sparc32: port TCX to VMState design

Signed-off-by: Blue Swirl <>

c9e95029 08/28/2009 11:22 pm Blue Swirl

Sparc32: port interrupt controller to VMState design

Signed-off-by: Blue Swirl <>

7130a422 08/28/2009 10:47 pm Blue Swirl

Update OpenBIOS images to r569

Signed-off-by: Blue Swirl <>

73538c31 08/28/2009 10:12 pm Blue Swirl

Suppress kraxelisms

Signed-off-by: Blue Swirl <>

1387fe4a 08/28/2009 10:04 pm Blue Swirl

Fix Sparc64 breakage: add dummy ISA irqs

Signed-off-by: Blue Swirl <>

bdae2298 08/28/2009 09:30 pm Blue Swirl

Fix merge of 59f2a78793b6d17634f39646d604e84af51e0919

Signed-off-by: Blue Swirl <>

e44bd6fc 08/28/2009 04:57 pm Stefan Weil

Don't compile aio code if CONFIG_LINUX_AIO is undefined

This patch fixes linker errors when building QEMU without Linux AIO support.

It is based on suggestions from malc and Kevin Wolf.

Signed-off-by: Stefan Weil <>
Signed-off-by: Anthony Liguori <>

f8274971 08/28/2009 01:34 pm malc

Fix sb16 breakage due to unassigned s->irq

Signed-off-by: malc <>

660cfb6b 08/28/2009 01:34 pm malc

Fix formatting

Signed-off-by: malc <>

3737c054 08/28/2009 04:55 am Anthony Liguori

Merge commit 'linux-user/linux-user-for-upstream' into staging

7d9e52bd 08/28/2009 04:47 am Juan Quintela

e1000 cleanup

Remove un needed casts from void *.
Use DO_UPCAST() instead of blind casts

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

4617e593 08/28/2009 04:47 am Anthony Liguori

Relax pthreads check to avoid win32

Signed-off-by: Anthony Liguori <>

1f235a73 08/28/2009 04:47 am Juan Quintela

pcnet: Change casts to DO_UPCAST() for PCIPCNetState

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

9fdab57b 08/28/2009 04:47 am Juan Quintela

pcnet: remove useless casts This are casts to the very type of the function

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

0abaa7c1 08/28/2009 04:47 am Juan Quintela

pcnet: Add pci_pcnet_{save/load} functions, then remove PCNetState pci_dev field

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>