Peter Maydell
a0def59428
Merge remote-tracking branch 'remotes/bonzini/tags/for-upstream' into staging
...
* SCSI max_transfer support for scsi-generic (Eric)
* x86 SMI broadcast (Laszlo)
* Character device QOMification (Marc-André)
* Record/replay improvements (Pavel)
* iscsi fixes (Peter L.)
* "info mtree -f" command (Peter Xu)
* TSC clock rate reporting (Phil)
* DEVICE_CATEGORY_CPU (Thomas)
* Memory sign-extension fix (Ladi)
# gpg: Signature made Fri 27 Jan 2017 17:08:51 GMT
# gpg: using RSA key 0xBFFBD25F78C7AE83
# gpg: Good signature from "Paolo Bonzini <bonzini@gnu.org >"
# gpg: aka "Paolo Bonzini <pbonzini@redhat.com >"
# Primary key fingerprint: 46F5 9FBD 57D6 12E7 BFD4 E2F7 7E15 100C CD36 69B1
# Subkey fingerprint: F133 3857 4B66 2389 866C 7682 BFFB D25F 78C7 AE83
* remotes/bonzini/tags/for-upstream: (41 commits)
memory: don't sign-extend 32-bit writes
chardev: qom-ify
vc: use a common prefix for chr callbacks
baum: use a common prefix for chr callbacks
gtk: overwrite the console.c char driver
char: use error_report()
spice-char: improve error reporting
char: rename TCPChardev and NetChardev
char: rename CharDriverState Chardev
bt: use qemu_chr_alloc()
char: allocate CharDriverState as a single object
char: use a feature bit for replay
char: introduce generic qemu_chr_get_kind()
char: fold single-user functions in caller
char: move callbacks in CharDriver
char: use a static array for backends
char: use a const CharDriver
doc: fix spelling
char: add qemu_chr_fe_add_watch() Returns description
qemu-options: stdio is available on win32
...
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2017-01-30 10:23:20 +00:00
Marc-André Lureau
0ec7b3e7f2
char: rename CharDriverState Chardev
...
Pick a uniform chardev type name.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com >
Reviewed-by: Eric Blake <eblake@redhat.com >
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com >
2017-01-27 18:07:59 +01:00
Peter Maydell
e62694a078
hw/char/exynos4210_uart: Drop unused local variable frame_size
...
The frame_size local variable in exynos4210_uart_update_parameters()
is calculated but never used (and has been this way since the
device was introduced in commit e5a4914efc
). The qemu_chr_fe_ioctl()
doesn't need this information (if it really wanted it it could
calculate it from the parity/data_bits/stop_bits), so just drop
the variable entirely.
Fixes: https://bugs.launchpad.net/bugs/1655702
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
Message-id: 1484589515-26353-1-git-send-email-peter.maydell@linaro.org
2017-01-27 15:29:08 +00:00
xiaoqiang zhao
5b982482c1
hw/char: QOM'ify exynos4210_uart.c
...
Drop the old Sysbus init and use instance_init and
DeviceClass::realize instead
Signed-off-by: xiaoqiang zhao <zxq_yx_007@163.com >
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2017-01-09 11:40:21 +00:00
Marc-André Lureau
39ab61c6d0
char: remove explicit_fe_open, use a set_handlers argument
...
No need to keep explicit_fe_open around if it affects only a
qemu_chr_fe_set_handlers(). Use an additional argument instead.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com >
Message-Id: <20161022095318.17775-24-marcandre.lureau@redhat.com >
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com >
2016-10-24 15:46:10 +02:00
Marc-André Lureau
5345fdb446
char: use qemu_chr_fe* functions with CharBackend argument
...
This also switches from qemu_chr_add_handlers() to
qemu_chr_fe_set_handlers(). Note that qemu_chr_fe_set_handlers() now
takes the focus when fe_open (qemu_chr_add_handlers() did take the
focus)
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com >
Message-Id: <20161022095318.17775-16-marcandre.lureau@redhat.com >
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com >
2016-10-24 15:27:21 +02:00
Marc-André Lureau
becdfa00cf
char: replace PROP_CHR with CharBackend
...
Store the property in a CharBackend instead of CharDriverState*. This
also replace systematically chr by chr.chr to access the
CharDriverState*. The following patches will replace it with calls to
qemu_chr_fe CharBackend functions.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com >
Message-Id: <20161022095318.17775-12-marcandre.lureau@redhat.com >
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com >
2016-10-24 15:27:20 +02:00
Marc-André Lureau
b4948be93e
char: remove init callback
...
The CharDriverState.init() callback is no longer set since commit
a61ae7f88c
and thus unused. The only user, the malta FGPA display has
been converted to use an event "opened" callback instead.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com >
Message-Id: <20161022095318.17775-7-marcandre.lureau@redhat.com >
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com >
2016-10-24 15:27:20 +02:00
Daniel P. Berrange
6ab3fc32ea
hw: replace most use of qemu_chr_fe_write with qemu_chr_fe_write_all
...
The qemu_chr_fe_write method will return -1 on EAGAIN if the
chardev backend write would block. Almost no callers of the
qemu_chr_fe_write() method check the return value, instead
blindly assuming data was successfully sent. In most cases
this will lead to silent data loss on interactive consoles,
but in some cases (eg RNG EGD) it'll just cause corruption
of the protocol being spoken.
We unfortunately can't fix the virtio-console code, due to
a bug in the Linux guest drivers, which would cause the
entire Linux kernel to hang if we delay processing of the
incoming data in any way. Fixing this requires first fixing
the guest driver to not hold spinlocks while writing to the
hvc device backend.
Fixes bug: https://bugs.launchpad.net/qemu/+bug/1586756
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-Id: <1473170165-540-4-git-send-email-berrange@redhat.com >
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com >
2016-09-13 19:09:42 +02:00
Peter Maydell
8ef94f0bc9
arm: Clean up includes
...
Clean up includes so that osdep.h is included first and headers
which it implies are not included manually.
This commit was created with scripts/clean-includes.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
Message-id: 1453832250-766-13-git-send-email-peter.maydell@linaro.org
2016-01-29 15:07:23 +00:00
Markus Armbruster
c525436e69
hw: Don't use hw_error() for machine initialization errors
...
Printing CPU registers is not helpful during machine initialization.
Moreover, these are straightforward configuration or "can get
resources" errors, so dumping core isn't appropriate either. Replace
hw_error() by error_report(); exit(1). Matches how we report these
errors in other machine initializations.
Cc: Richard Henderson <rth@twiddle.net >
Cc: qemu-arm@nongnu.org
Cc: qemu-ppc@nongnu.org
Cc: Guan Xuetao <gxt@mprc.pku.edu.cn >
Signed-off-by: Markus Armbruster <armbru@pond.sub.org >
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Reviewed-by: Thomas Huth <thuth@redhat.com >
Message-Id: <1450370121-5768-2-git-send-email-armbru@redhat.com >
Reviewed-by: Richard Henderson <rth@twiddle.net >
2016-01-13 11:58:58 +01:00
Markus Armbruster
012aef0734
maint: avoid useless "if (foo) free(foo)" pattern
...
My Coccinelle semantic patch finds a few more, because it also fixes up
the equally pointless conditional
if (foo) {
free(foo);
foo = NULL;
}
Result (feel free to squash it into your patch):
Signed-off-by: Markus Armbruster <armbru@redhat.com >
Reviewed-by: Eric Blake <eblake@redhat.com >
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru >
2015-09-11 10:21:38 +03:00
Juan Quintela
8f1e884b38
savevm: Remove all the unneeded version_minimum_id_old (arm)
...
After commit 767adce2d
, they are redundant. This way we don't assign them
except when needed. Once there, there were lots of cases where the ".fields"
indentation was wrong:
.fields = (VMStateField []) {
and
.fields = (VMStateField []) {
Change all the combinations to:
.fields = (VMStateField[]){
The biggest problem (apart from aesthetics) was that checkpatch complained
when we copy&pasted the code from one place to another.
Signed-off-by: Juan Quintela <quintela@redhat.com >
[PMM: fixed minor conflict, corrected commit message typos]
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2014-05-13 16:09:35 +01:00
Stefan Weil
c46b07f0d7
exynos4210: Use macro ARRAY_SIZE where possible
...
This improves readability and simplifies the code.
Cc: Dmitry Solodkiy <d.solodkiy@samsung.com >
Cc: Evgeny Voevodin <e.voevodin@samsung.com >
Cc: Igor Mitsyanko <i.mitsyanko@gmail.com >
Cc: Maksim Kozlov <m.kozlov@samsung.com >
Signed-off-by: Stefan Weil <sw@weilnetz.de >
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru >
2013-12-23 16:02:19 +04:00
Andreas Färber
61149ff687
exynos4210_uart: QOM cast cleanup
...
Signed-off-by: Andreas Färber <afaerber@suse.de >
2013-07-29 21:06:27 +02:00
Paolo Bonzini
300b1fc68c
hw/c*: pass owner to memory_region_init* functions
...
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com >
2013-07-04 17:42:47 +02:00
Paolo Bonzini
2c9b15cab1
memory: add owner argument to initialization functions
...
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com >
2013-07-04 17:42:44 +02:00
Paolo Bonzini
dccfcd0e5f
sysemu: avoid proliferation of include/ subdirectories
...
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com >
2013-04-15 18:19:25 +02:00
Paolo Bonzini
9944d32001
hw: move char devices to hw/char/, configure via default-configs/
...
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com >
2013-04-08 18:13:14 +02:00