Peter Xu
8b5ed7dffa
intel_iommu: add support for split irqchip
...
In split irqchip mode, IOAPIC is working in user space, only update
kernel irq routes when entry changed. When IR is enabled, we directly
update the kernel with translated messages. It works just like a kernel
cache for the remapping entries.
Since KVM irqfd is using kernel gsi routes to deliver interrupts, as
long as we can support split irqchip, we will support irqfd as
well. Also, since kernel gsi routes will cache translated interrupts,
irqfd delivery will not suffer from any performance impact due to IR.
And, since we supported irqfd, vhost devices will be able to work
seamlessly with IR now. Logically this should contain both vhost-net and
vhost-user case.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com >
[move trace-events lines into target-i386/trace-events]
Signed-off-by: Peter Xu <peterx@redhat.com >
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com >
Reviewed-by: Michael S. Tsirkin <mst@redhat.com >
Signed-off-by: Michael S. Tsirkin <mst@redhat.com >
2016-07-21 20:43:49 +03:00
Daniel P. Berrange
f52347d5b0
trace: split out trace events for linux-user/ directory
...
Move all trace-events for files in the linux-user/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Reviewed-by: Laurent Vivier <laurent@vivier.eu >
Message-id: 1466066426-16657-41-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:17 +01:00
Daniel P. Berrange
38b1eedcdc
trace: split out trace events for qom/ directory
...
Move all trace-events for files in the qom/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-40-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:17 +01:00
Daniel P. Berrange
6dfba0ef6e
trace: split out trace events for target-ppc/ directory
...
Move all trace-events for files in the target-ppc/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Reviewed-by: Thomas Huth <thuth@redhat.com >
Message-id: 1466066426-16657-39-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:17 +01:00
Daniel P. Berrange
a4e21b3e35
trace: split out trace events for target-s390x/ directory
...
Move all trace-events for files in the target-s390x/ directory to
their own file.
[Added missing newline in target-s390x/trace-events as suggested by
Cornelia Huck <cornelia.huck@de.ibm.com >.
--Stefan]
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Acked-by: Cornelia Huck <cornelia.huck@de.ibm.com >
Message-id: 1466066426-16657-38-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:17 +01:00
Daniel P. Berrange
1cba9b2942
trace: split out trace events for target-sparc/ directory
...
Move all trace-events for files in the target-sparc/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-37-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:17 +01:00
Daniel P. Berrange
f3b0163b18
trace: split out trace events for net/ directory
...
Move all trace-events for files in the net/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-36-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:17 +01:00
Daniel P. Berrange
66d7a36d75
trace: split out trace events for audio/ directory
...
Move all trace-events for files in the audio/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-35-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:17 +01:00
Daniel P. Berrange
357ac7f318
trace: split out trace events for ui/ directory
...
Move all trace-events for files in the ui/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-34-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:17 +01:00
Daniel P. Berrange
4f92ce1376
trace: split out trace events for hw/alpha/ directory
...
Move all trace-events for files in the hw/alpha/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-33-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:17 +01:00
Daniel P. Berrange
0b8276d644
trace: split out trace events for hw/arm/ directory
...
Move all trace-events for files in the hw/arm/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-32-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:16 +01:00
Daniel P. Berrange
65b5bd3be5
trace: split out trace events for hw/acpi/ directory
...
Move all trace-events for files in the hw/acpi/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-31-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:16 +01:00
Daniel P. Berrange
1cf6ebc73f
trace: split out trace events for hw/vfio/ directory
...
Move all trace-events for files in the hw/vfio/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-30-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:16 +01:00
Daniel P. Berrange
80aa71e98d
trace: split out trace events for hw/s390x/ directory
...
Move all trace-events for files in the hw/s390x/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Acked-by: Cornelia Huck <cornelia.huck@de.ibm.com >
Message-id: 1466066426-16657-29-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:16 +01:00
Daniel P. Berrange
fec28134e5
trace: split out trace events for hw/pci/ directory
...
Move all trace-events for files in the hw/pci/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-28-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:16 +01:00
Daniel P. Berrange
3054fba87b
trace: split out trace events for hw/ppc/ directory
...
Move all trace-events for files in the hw/ppc/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Reviewed-by: Thomas Huth <thuth@redhat.com >
Message-id: 1466066426-16657-27-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:16 +01:00
Daniel P. Berrange
d018a2e931
trace: split out trace events for hw/9pfs/ directory
...
Move all trace-events for files in the hw/9pfs/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-26-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:16 +01:00
Daniel P. Berrange
5eb76e480b
trace: split out trace events for hw/i386/ directory
...
Move all trace-events for files in the hw/i386/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-25-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:16 +01:00
Daniel P. Berrange
2b785e3cbf
trace: split out trace events for hw/isa/ directory
...
Move all trace-events for files in the hw/isa/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-24-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:16 +01:00
Daniel P. Berrange
1374aecc7c
trace: split out trace events for hw/sd/ directory
...
Move all trace-events for files in the hw/sd/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-23-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:16 +01:00
Daniel P. Berrange
f0b9e35687
trace: split out trace events for hw/sparc/ directory
...
Move all trace-events for files in the hw/sparc/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-22-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:16 +01:00
Daniel P. Berrange
8101345076
trace: split out trace events for hw/dma/ directory
...
Move all trace-events for files in the hw/dma/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-21-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:16 +01:00
Daniel P. Berrange
c3e203f30d
trace: split out trace events for hw/timer/ directory
...
Move all trace-events for files in the hw/timer/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-20-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:16 +01:00
Daniel P. Berrange
d1d5119864
trace: split out trace events for hw/input/ directory
...
Move all trace-events for files in the hw/input/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-19-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:15 +01:00
Daniel P. Berrange
14750ef1b5
trace: split out trace events for hw/display/ directory
...
Move all trace-events for files in the hw/display/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-18-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:15 +01:00
Daniel P. Berrange
ddc63e4556
trace: split out trace events for hw/nvram/ directory
...
Move all trace-events for files in the hw/nvram/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-17-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:15 +01:00
Daniel P. Berrange
de4291ca4a
trace: split out trace events for hw/scsi/ directory
...
Move all trace-events for files in the hw/scsi/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-16-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:15 +01:00
Daniel P. Berrange
7da2981e59
trace: split out trace events for hw/usb/ directory
...
Move all trace-events for files in the hw/usb/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-15-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:15 +01:00
Daniel P. Berrange
6b5bacf6af
trace: split out trace events for hw/misc/ directory
...
Move all trace-events for files in the hw/misc/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-14-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:15 +01:00
Daniel P. Berrange
92fe6aff87
trace: split out trace events for hw/audio/ directory
...
Move all trace-events for files in the hw/audio/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-13-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:15 +01:00
Daniel P. Berrange
270ab88f7c
trace: split out trace events for hw/virtio/ directory
...
Move all trace-events for files in the hw/virtio/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-12-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:15 +01:00
Daniel P. Berrange
cd8c2fe77b
trace: split out trace events for hw/net/ directory
...
Move all trace-events for files in the hw/net/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-11-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:15 +01:00
Daniel P. Berrange
aebd4d17dc
trace: split out trace events for hw/intc/ directory
...
Move all trace-events for files in the hw/intc/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-10-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:15 +01:00
Daniel P. Berrange
732d83145e
trace: split out trace events for hw/char/ directory
...
Move all trace-events for files in the hw/char/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-9-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:15 +01:00
Daniel P. Berrange
92d3265212
trace: split out trace events for hw/block/ directory
...
Move all trace-events for files in the hw/block/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-8-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:15 +01:00
Daniel P. Berrange
b54ca48e40
trace: split out trace events for block/ directory
...
Move all trace-events for files in the block/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-7-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:14 +01:00
Daniel P. Berrange
521d47c6dc
trace: split out trace events for migration/ directory
...
Move all trace-events for files in the migration/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-6-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:14 +01:00
Daniel P. Berrange
892bd32ea3
trace: split out trace events for io/ directory
...
Move all trace-events for files in the io/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-5-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:14 +01:00
Daniel P. Berrange
8451f2f28d
trace: split out trace events for crypto/ directory
...
Move all trace-events for files in the crypto/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-4-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:14 +01:00
Daniel P. Berrange
492bb2dd65
trace: split out trace events for util/ directory
...
Move all trace-events for files in the util/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-3-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:14 +01:00
Daniel P. Berrange
1412cf58be
trace: add build framework for merging trace-events files
...
Switch make rules over to use trace-events-all as the
master trace events input file. Add rule that will
construct trace-events-all from $(trace-events-y).
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-2-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:14 +01:00
Markus Armbruster
17b74b9867
migration: Move qjson.[ch] to migration/
...
Type QJSON lets you build JSON text. Its interface mirrors (a subset
of) abstract JSON syntax.
QAPI output visitors also produce JSON text. They assert their
preconditions and invariants, and therefore abort on incorrect use.
Contrastingly, QJSON does *not* detect incorrect use. It happily
produces invalid JSON then. This is what migration wants.
QJSON was designed for migration, and migration is its only user.
Move it to migration/ for proper coverage by MAINTAINERS, and to deter
accidental use outside migration.
[Pointed out by Eric: QJSON was added in commits 0457d07..b174257
-- Amit]
Signed-off-by: Markus Armbruster <armbru@redhat.com >
Reviewed-by: Eric Blake <eblake@redhat.com >
Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com >
Message-Id: <1462380558-2030-2-git-send-email-armbru@redhat.com >
Signed-off-by: Amit Shah <amit.shah@redhat.com >
2016-05-23 14:16:09 +05:30
Daniel P. Berrange
b917da4cbd
crypto: add cryptographic random byte source
...
There are three backend impls provided. The preferred
is gnutls, which is backed by nettle in modern distros.
The gcrypt impl is provided for cases where QEMU build
against gnutls is disabled, but crypto is still desired.
No nettle impl is provided, since it is non-trivial to
use the nettle APIs for random numbers. Users of nettle
should ensure gnutls is enabled for QEMU.
Reviewed-by: Fam Zheng <famz@redhat.com >
Reviewed-by: Eric Blake <eblake@redhat.com >
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
2016-03-17 09:49:01 +00:00
Denis V. Lunev
d890d50d18
log: move qemu-log.c into util/ directory
...
log will become common facility with tracepoints support in next step.
Signed-off-by: Denis V. Lunev <den@openvz.org >
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com >
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com >
Message-id: 1452174932-28657-9-git-send-email-den@openvz.org
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-02-03 09:19:10 +00:00
Fam Zheng
798bfe0006
nbd: Split nbd.c
...
We have NBD server code and client code, all mixed in a file. Now split
them into separate files under nbd/, and update MAINTAINERS.
filter_nbd for iotest 083 is updated to keep the log filtered out.
Signed-off-by: Fam Zheng <famz@redhat.com >
Message-Id: <1452760863-25350-3-git-send-email-famz@redhat.com >
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com >
2016-01-15 18:58:02 +01:00
Daniel P. Berrange
666a3af9c8
io: add abstract QIOChannel classes
...
Start the new generic I/O channel framework by defining a
QIOChannel abstract base class. This is designed to feel
similar to GLib's GIOChannel, but with the addition of
support for using iovecs, qemu error reporting, file
descriptor passing, coroutine integration and use of
the QOM framework for easier sub-classing.
The intention is that anywhere in QEMU that almost
anywhere that deals with sockets will use this new I/O
infrastructure, so that it becomes trivial to then layer
in support for TLS encryption. This will at least include
the VNC server, char device backend and migration code.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
2015-12-18 12:18:05 +00:00
Pavel Dovgalyuk
d73abd6dcc
replay: global variables and function stubs
...
This patch adds global variables, defines, function declarations,
and function stubs for deterministic VM replay used by external modules.
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com >
Reviewed-by: Eric Blake <eblake@redhat.com >
Signed-off-by: Pavel Dovgalyuk <pavel.dovgaluk@ispras.ru >
Message-Id: <20150917162337.8676.41538.stgit@PASHA-ISP.def.inno >
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com >
2015-11-05 12:19:08 +01:00
David Marchand
a75eb03b9f
contrib: add ivshmem client and server
...
When using ivshmem devices, notifications between guests can be sent as
interrupts using a ivshmem-server (typical use described in documentation).
The client is provided as a debug tool.
Signed-off-by: Olivier Matz <olivier.matz@6wind.com >
Signed-off-by: David Marchand <david.marchand@6wind.com >
[fix a valgrind warning, option and server_close() segvs, extra server
headers includes, getopt() return type, out-of-tree build, use qemu
event_notifier instead of eventfd, fix x86/osx warnings - Marc-André]
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com >
2015-10-24 18:03:16 +02:00
Daniel P. Berrange
10817bf09d
coroutine: move into libqemuutil.a library
...
The coroutine files are currently referenced by the block-obj-y
variable. The coroutine functionality though is already used by
more than just the block code. eg migration code uses coroutine
yield. In the future the I/O channel code will also use the
coroutine yield functionality. Since the coroutine code is nicely
self-contained it can be easily built as part of the libqemuutil.a
library, making it widely available.
The headers are also moved into include/qemu, instead of the
include/block directory, since they are now part of the util
codebase, and the impl was never in the block/ directory
either.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
2015-10-20 14:59:04 +01:00
Marc-André Lureau
7b02f5447c
libcacard: use the standalone project
...
libcacard is now a standalone project hosted with the Spice project (see
the 2.5.0 release announcement), remove it from qemu tree.
Use the library if found during configure or if --enable-smartcard.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com >
Reviewed-by: Michael Tokarev <mjt@tls.msk.ru >
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com >
Tested-by: Paolo Bonzini <pbonzini@redhat.com >
2015-09-23 23:34:17 +02:00