History | View | Annotate | Download (14 kB)
Fix a make -j race
Make libuser.a depend on $(GENERATED_HEADERS) too so make -j won't startbuilding it before the headers exist. (There may be more bugs like thisbut at least this makes (g)make -j4 started from scratch on a quadcorenow always complete here again.)...
block: Convert bdrv_info() to QObject
Each block device information is stored in a QDict and thereturned QObject is a QList of all devices.
This commit should not change user output.
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
QDict: Introduce qdict_get_qlist()
A helper function to get a QList from a QDict.
Makefile: move QObject objs to their own entry
Other subsystems will need to link against them.
QDict: Introduce qdict_get_qbool()
This is a helper function that does type checking before retrievinga QBool from the dictionary.
Fix build for mingw32 on windows ($$ expansion)
Make using mingw32 on windows fails when running grep "=y$$".The command is expanded to grep "=y$ and the missing " results in an error.
I don't expect a file config-devices.mak with =y somewhere inthe middle of a line (they are always at the end of the line),...
net: move parse_macaddr() to net/util.[ch]
Signed-off-by: Mark McLoughlin <markmc@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
net: move vde code from net.c to net/vde.c
net: move socket backend code from net.c to net/socket.c
net: move dump backend code from net.c to net/dump.c
net: move slirp code from net.c to net/slirp.c
Introduce QError
QError is a high-level data type which represents an exceptionin QEMU, it stores the following error information:
- class Error class name (eg. "ServiceUnavailable")- description A detailed error description, which can contain...
Makefile: Remove unneeded prerequisites
Thanks to f527c57935e22b56952d1ed1af36070b682ecf70(fix parallel build), these prerequisitesare redundant now and can be removed.
Signed-off-by: Stefan Weil <weil@mail.berlios.de>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Makefile: Fix spelling
Replace defconfing -> defconfig
Signed-off-by: Stefan Weil <weil@mail.berlios.de>Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
DS1338 RTC
Implement MAXIM SD1338 RTC+NVRAM.
Signed-off-by: Paul Brook <paul@codesourcery.com>
Makefile dependencies for device configs
Add makefile dependencies for target specific device configs.These will copy the default config if none exists, obsoleting the oldconfigure time code. If a config already exists but is older than thedefault then print a warning....
Add linuxboot to BLOBS
We should install linuxboot.bin too, so let's add it to the to-be-installedblobs.
Signed-off-by: Alexander Graf <agraf@suse.de>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Add a QBool type
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Add a lexer for JSON
Our JSON parser is a three stage parser. The first stage tokenizes the streaminto a set of lexical tokens. Since the lexical grammar is regular, we canuse a finite state machine to model it. The state machine will emit tokensas they are identified....
Add a JSON message boundary identifier
The second stage of our JSON parser is a simple state machine that identifiesindividual JSON values by counting the levels of nesting of tokens. It doesnot perform grammar validation. We use this to emit a full JSON value to the...
Add a JSON parser
This is the third and final stage of the JSON parser. It parses lexical tokensperforming grammar validation and creating the final QObject representation. Ituses a recursive decent parser.
Add a QObject JSON wrapper
This provides a QObject interface for creating QObjects from a JSON expression.
Add a unit test for JSON support
Add a QFloat datatype
Add unit test for QFloat
Block live migration
This patch introduces block migration called during live migration. Blockare being copied to the destination in an async way. First the code willtransfer the whole disk and then transfer all dirty blocks accumulted duringthe migration....
fix make clean targets
This patch fixes clean in case of missing directories andalso adds code to distclean that removes the following files: qemu-monitor.texi roms/seabios/config.mak roms/vgabios/config.mak
Signed-off-by: Magnus Damm <damm@opensource.se>...
Makefile: Fix definition of pxe-*.bin blobs
fix parallel build
Based on a ideas of Daniel Jacobowitz + Stefan Weil
Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Makefile: Prettify logging
Replace GEN config-all-devices.makby GEN config-all-devices.mak
Like this, the logging output is column aligned.
Makefile: make qemu-img dependant on config-host.h
Since config-host.h is generated by the Makefile (1215c6e76),building (only) qemu-img fails:
[user@f12-uri qemu]$ make distclean (or git clone qemu)[user@f12-uri qemu]$ ./configure ...[user@f12-uri qemu]$ make qemu-img...
Makefile: make qemu-io dependent on config-host.h
This is needed also for qemu-io, but not for qemu-nbd.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Switch from etherboot to gPXE
etherboot is deprecated and not under active development anymore.
net: move AIX code into net/tap-aix.c
Okay, this makes the tap options available on AIX even though there'sno support, but if we want to do it right we should have not compilethe tap code at all on AIX using e.g. CONFIG_TAP.
Signed-off-by: Mark McLoughlin <markmc@redhat.com>...
net: move linux code into net/tap-linux.c
net: move tap-win32.c under net/
net: split all the tap code out into net/tap.c
net: split BSD tap_open() out into net/tap-bsd.c
net: move solaris code to net/tap-solaris.c
net: move net-queue.[ch] under net/
[v2: handle building in a separate dir]
net: move net-checksum.c under net/
Also add a new net/checksum.h header
Makefile: Change make to be quiet again when doing nothing
This patch makes make quiet again.
There is already a similar patch from Juan Quintela,but maybe this shorter form is preferred.
net: refactor packet queueing code
The packet queue code is fairly standalone, has some complex details andeasily reusable. It makes sense to split it out on its own. This patchdoesn't contain any functional changes.
Patchworks-ID: 35511Signed-off-by: Mark McLoughlin <markmc@redhat.com>...
user: fix libuser build messages
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Windows Waveform Audio driver (no ADC support yet)
Signed-off-by: malc <av1474@comtv.ru>
Introduce QList
QList is a high-level data type that can be used to store QObjectsin a singly-linked list.
The following functions are available:
- qlist_new() Create a new QList- qlist_append() Append a QObject to the list- qlist_iter() Iterate over stored QObjects...
Introduce QList unit-tests
This suite contains tests to assure that QList API works as expected.
To execute it you should have check installed and build QEMU withcheck support enabled (--enable-check-utests) and then run:
$ ./check-qlist
Patchworks-ID: 35333...
Only compile sd0323 when one target uses it
Patchworks-ID: 35217Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Only compile ads7846 when one target uses it
Patchworks-ID: 35218Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Only compile max111x when one target uses it
Patchworks-ID: 35219Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Only compile ssi-sd when one target uses it
Patchworks-ID: 35220Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Only compile ssi when one target uses it
Patchworks-ID: 35221Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Only compile tmp105 when one target uses it
Patchworks-ID: 35214Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Only compile stellaris_input when one target uses it
Patchworks-ID: 35213Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Only compile sd0303 when one target uses it
Patchworks-ID: 35216Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Only compile twl92230 when one target uses it
Patchworks-ID: 35212Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Only compile tsc2005 when one target uses it
Patchworks-ID: 35215Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Only compile lm832x when one target uses it
Patchworks-ID: 35211Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Only compile wm8750 when one target uses it
Patchworks-ID: 35209Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Only compile ptimer when one target uses it
Patchworks-ID: 35207Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Only compile sd when one target uses it
Patchworks-ID: 35208Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Only compile max7310 when one target uses it
Patchworks-ID: 35210Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Add new config-devices.mak for each target
We generate config-devices.h from there automatically.We need to do it in main Makefile, because we are going to need a mainMakefile for them.
Patchworks-ID: 35196Signed-off-by: Juan Quintela <quintela@redhat.com>...
Generate config-devices.h
Generate config-devices.h for each target and config-all-devices.h forcommon library. We don't want to name both config-devices.h to avoidpath problems
Patchworks-ID: 35195Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Move generation of config-host.h to Makefile from configure
Use timestamp based appreach to avoid not needed recompilation.Add it to rules.mak
Many thanks to Paolo Bonzini for helpding the design, and the debug.
Patchworks-ID: 35190Signed-off-by: Juan Quintela <quintela@redhat.com>...
Remove useless check for config-host.mak
If config-host.mak dont' exist, we have exited in the check atthe beginning of the file.Once here, move the bits to the else part of the test at the beginning ofthe file.
Patchworks-ID: 35191Signed-off-by: Juan Quintela <quintela@redhat.com>...
Rename config.{h, mak} config-target.{h, mak}
Add config.h file that includes config-target.h and config-host.h
Patchworks-ID: 35193Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
configure and Makefile are not generated in qemu
Just say it to make
add build-all to .PHONY rules
Include microblaze binaries in tarbin.
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
Compile some user files only once for all targets
Compile host-utils only once
See also facd2857783d58387885ad7cb1e4a8386f241738 and34005a0060c176b3025a9e7c5d064615a9f80325.
Compile TCG runtime library only once
ioports: remove unused env parameter and compile only once
The CPU state parameter is not used, remove it and adjust callers. Now wecan compile ioport.c once for all targets.
Compile qemu-config only once
Add configure option to compile user targets as PIE
Build uset targers as true PIE if user want to keep qemuself-virtualizable.
v5: - Split into to patches: drop link hack and add PIE support - do not build PIE by default and drop toolchain check
v4:...
qdev/scsi: add scsi bus support to qdev, convert drivers.
Adding scsi disks via -device works now, i.e. you can do:
-drive id=sda,if=none,......
qdev/usb: add usb bus support to qdev, convert drivers.
TODO: * make the rest of qemu aware of usb busses and kill the FIXMEs added by this patch....
Introduce QString unit-tests
This suite contains tests to assure that QString API works as expected.
$ ./check-qstring
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>...
Introduce QDict unit-tests
This suite contains tests to assure that QDict API works as expected.
$ ./check-qdict
Introduce QInt unit-tests
This suite contains tests to assure that QInt API works as expected.
$ ./check-qint
Introduce QInt
QInt is a high-level data type that can be used to represent integers,internally it stores an int64_t value.
- qint_from_int() Create a new QInt- qint_get_int() Get the stored integer
Introduce QString
QString is a high-level data type that can be used to representC strings.
- 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...
Introduce QDict
QDict is a high-level dictionary data type that can be used to store acollection of QObjects. A unique key is associated with only oneQObject.
- qdict_new() Create a new QDict- qdict_put() Add a new 'key:object' pair...
raw-posix: add Linux native AIO support
Now that do have a nicer interface to work against we can add Linux nativeAIO support. It's an extremly thing layer just setting up an iocb forthe io_submit system call in the submission path, and registering an...
add file descriptor migration
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Cc: Chris Lalancette <clalance@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
make pthreads mandatory
As requested by Anthony make pthreads mandatory. This means we will alwayshave AIO available on posix hosts, and it will also allow enabling the I/Othread unconditionally once it's ready.
Signed-off-by: Christoph Hellwig <hch@lst.de>...
Only build osdep once
We no longer need hackery to work around kqemu
Migration via unix sockets.
Implement migration via unix sockets. While you can fake this usingexec and netcat, this involves forking another process and isgenerally not very nice. By doing this directly in qemu, we can avoidthe copy through the external nc command. This is useful for...
Makefile: fixed rule TAGS
- still works if the build dir is not the src dir- use find instead of .c block/.c etc...
Signed-off-by: Alexandre Bique <alexandre.bique@citrix.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Fix breakage of alpha, mips64, ppc64 and x86_64 targets on non-amd64 host
user: compile host-utils.c only once
linux-user: compile envlist.c only once
user: compile path.c only once
Also merge bsd-user/path.c and linux-user/path.c.
CURL libs are used both by tools and softmmu
Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>Message-Id:
CONFIG_POSIX makes more sense that not CONFIG_WIN32
Add libs_tools support
Libraries used by qemu-<tools>
VDE libs are used both by tools and softmmu
AUDIO_PT is not needed
AUDIO_PT only changes LDFLAGS to include -pthread, but it change it inMakefile, and audio files are linked only on Makefile.target
Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>...
Generate CONFIG_AUDIO_PT_INT in configure