On Tue, Jul 28, 2015 at 08:02:54PM +0200, Marc-André Lureau wrote:
> Hi
>
> On Tue, Jul 28, 2015 at 9:33 AM, Andrew Jones wrote:
> > On Tue, Jul 28, 2015 at 02:32:45AM +0200, Marc-André Lureau wrote:
> >> +
> >> +return fs.f_bsize;
> >> +}
> >> +
> >> +
> >> +
> > few extra lines here
>
> cu
Am 28.07.2015 um 11:54 schrieb Artyom Tarasenko:
>anything i can do to speedup the emulation?
Maybe try the fresh tcg optimizer improvements from Aurelien:
https://lists.gnu.org/archive/html/qemu-devel/2015-07/msg05133.html
it don't seems to target sparc (or isn't ready) many x86/x64 only etc.
On 07/29/2015 06:57 AM, Samuel Thibault wrote:
> Before this patch, if sosendto fails, udp_input is executed as if the
> packet was sent, recording the packet for icmp errors, which does not
> makes sense since the packet was not actually sent, errors would be
> related to a previous packet.
>
> T
At Wed, 29 Jul 2015 12:02:35 +0800,
Liu Yuan wrote:
>
> From: Liu Yuan
>
> Current sheepdog driver use a range update_inode(min_idx, max_idx) for
> batching
> the updates. But there is subtle problem by determining min_idx and max_idx:
>
> for a single create request, min_idx == max_idx, so ac
seem to come from this commit:
http://git.qemu.org/?p=qemu.git;a=commit;h=eabc977973103527bbb8fed69c91cfaa6691f8ab
"AioContext: fix broken ctx->dispatching optimization"
- Mail original -
De: "aderumier"
À: "qemu-devel"
Envoyé: Mercredi 29 Juillet 2015 06:15:48
Objet: [Qemu-devel] qemu
Just a manual search and replace. No semantic change here.
Signed-off-by: Fam Zheng
---
block.c | 2 +-
block/curl.c | 2 +-
block/io.c| 18 +-
block/nfs.c | 2 +-
block/qed-table.c | 8
blockjob.c| 2 +-
qemu-img.c| 2 +
So that external events are not processed in nested event loops.
Signed-off-by: Fam Zheng
---
block/io.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/block/io.c b/block/io.c
index 3d255e0..84047fe 100644
--- a/block/io.c
+++ b/block/io.c
@@ -2613,6 +2613,8 @@ bool bdrv_aio_poll(AioConte
This call is introduced simply as a wrapper of aio_poll, but it makes it
is easy to change the polled client types.
Signed-off-by: Fam Zheng
---
block/io.c| 8
include/block/aio.h | 2 +-
include/block/block.h | 2 ++
3 files changed, 11 insertions(+), 1 deletion(-)
diff
Signed-off-by: Fam Zheng
---
hw/block/dataplane/virtio-blk.c | 4 ++--
hw/scsi/virtio-scsi-dataplane.c | 16
include/block/aio.h | 1 +
3 files changed, 11 insertions(+), 10 deletions(-)
diff --git a/hw/block/dataplane/virtio-blk.c b/hw/block/dataplane/virtio-blk.c
Signed-off-by: Fam Zheng
---
aio-win32.c | 17 -
1 file changed, 16 insertions(+), 1 deletion(-)
diff --git a/aio-win32.c b/aio-win32.c
index f5ecf57..1f6a3f0 100644
--- a/aio-win32.c
+++ b/aio-win32.c
@@ -28,6 +28,7 @@ struct AioHandler {
GPollFD pfd;
int deleted;
So we could distinguish it from "protocol" to avoid handling in nested aio
polls.
Signed-off-by: Fam Zheng
---
include/block/aio.h | 1 +
nbd.c | 4 ++--
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/include/block/aio.h b/include/block/aio.h
index d02ddfa..8b15105
So it can be used by aio_poll later.
Signed-off-by: Fam Zheng
---
aio-posix.c | 2 ++
aio-win32.c | 3 +++
2 files changed, 5 insertions(+)
diff --git a/aio-posix.c b/aio-posix.c
index 56f2bce..d25fcfc 100644
--- a/aio-posix.c
+++ b/aio-posix.c
@@ -25,6 +25,7 @@ struct AioHandler
IOHandler
The "protocol" type includes all the fd handlers and event notifiers used by
block layer, especially those that should be polled in a nested event loop.
Signed-off-by: Fam Zheng
---
block/curl.c| 8
block/iscsi.c | 4 ++--
block/linux-aio.c | 4 ++--
block/nbd-client.
Signed-off-by: Fam Zheng
---
aio-posix.c | 17 -
include/block/aio.h | 24
2 files changed, 40 insertions(+), 1 deletion(-)
diff --git a/aio-posix.c b/aio-posix.c
index d25fcfc..840b769 100644
--- a/aio-posix.c
+++ b/aio-posix.c
@@ -26,6 +26,7 @@
The parameter is added but not used.
The callers are converted with following coccinelle semantic patch:
@@
expression E1, E2, E3, E4, E5;
@@
(
-aio_set_event_notifier(E1, E2, E3)
+aio_set_event_notifier(E1, E2, AIO_CLIENT_UNSPECIFIED, E3)
|
-aio_set_fd_handler(E1,
v2: Switch to disable/enable model. [Paolo]
Most existing nested aio_poll()'s in block layer are inconsiderate of
dispatching potential new r/w requests from ioeventfds and nbd exports, which
might result in responsiveness issues (e.g. bdrv_drain_all will not return when
new requests keep coming),
It is important to include this for any blocking poll, on the other hand it is
also OK to exclude it otherwise.
Signed-off-by: Fam Zheng
---
async.c | 4 ++--
include/block/aio.h | 1 +
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/async.c b/async.c
index 43f9425..0b
Hi,
since qemu 2.4rc2, when I'm using iothreads, the vm is hanging, qmp queries are
not working, vnc not working. (qemu process don't crash).
qemu 2.4 rc1 works fine. (don't have bisect it yet)
qemu command line:
qemu -chardev socket,id=qmp,path=/var/run/qemu-server/150.qmp,server,nowait
-mo
From: Liu Yuan
Current sheepdog driver use a range update_inode(min_idx, max_idx) for batching
the updates. But there is subtle problem by determining min_idx and max_idx:
for a single create request, min_idx == max_idx, so actually we just update one
one bit as expected.
Suppose we have 2 crea
On 07/29/2015 12:14 AM, Paolo Bonzini wrote:
>
>
> On 28/07/2015 15:29, Wen Congyang wrote:
>>>
>>> If you call it just once, you have the same problem as before. In fact,
>>> it's worse because instead of having an overflow every 2^31 periods, you
>>> have one every 2 periods. Instead, by
Oh, just noticed, this is missing "v4" in the subject line.
On 07/20/2015 05:46 PM, Alexey Kardashevskiy wrote:
Yet another try, reworked the whole patchset.
Here are few patches to prepare an existing listener for handling memory
preregistration for SPAPR guests running on POWER8.
This used
On 07/01/2015 02:22 PM, Markus Armbruster wrote:
> To eliminate the temptation for clients to look up types by name
> (which are not ABI), replace all type names by meaningless strings.
>
> Reduces output of query-schema by 9 out of 80KiB.
Among other things, it replaced all instances of 'str' wi
This patch adds the functions needed to handle IPv6 packets. ICMPv6 and
NDP headers are implemented.
Slirp is now able to send NDP Router or Neighbor Advertisement when it
receives Router or Neighbor Solicitation. Using a 64bit-sized IPv6
prefix, the guest is now able to perform stateless autoconf
Disambiguation : icmp_error is renamed into icmp_send_error, since it
doesn't manage errors, but only sends ICMP Error messages.
Adding icmp6_send_error to send ICMPv6 Error messages. This function is
simpler than the v4 version.
Adding some calls in various functions to send ICMP errors, when a
r
Basically, this patch adds some switch in various TCP functions to
prepare them for the IPv6 case.
To have something to "switch" in tcp_input() and tcp_respond(), a new
argument is used to give them the sa_family of the addresses they are
working on.
Signed-off-by: Guillaume Subiron
---
slirp/i
This patch factorizes the tcpiphdr structure to put the IPv4 fields in
an union, for addition of version 6 in further patch.
Using some macros, retrocompatibility of the existing code is assured.
This patch also fixes the SLIRP_MSIZE and margin computation in various
functions, and makes them comp
No code change.
Signed-off-by: Guillaume Subiron
Signed-off-by: Samuel Thibault
---
slirp/slirp.h | 3 +-
slirp/tcp_input.c | 95 +++---
slirp/tcp_output.c | 29 -
slirp/tcp_subr.c | 50 ++--
4 file
This patch replaces foreign and local address/port couples in Socket
structure by 2 sockaddr_storage which can be casted in sockaddr_in.
Direct access to address and port is still possible thanks to some
\#define, so retrocompatibility of the existing code is assured.
The ss_family field of sockad
This patch factorizes some duplicate code into a new function,
sotranslate_out(). This function perform the address translation when a
packet is transmitted to the host network. If the paquet is destinated
to the host, the loopback address is used, and if the paquet is
destinated to the virtual DNS
This patch makes solookup() compatible with varying address families. Also,
this function was only compatible with TCP. Having the socket list in
argument, it is now compatible with UDP too. Finally, some optimization
code is factorized inside the function (the function look at the last
returned re
No code change.
Signed-off-by: Guillaume Subiron
Signed-off-by: Samuel Thibault
---
slirp/slirp.c | 117 +-
1 file changed, 59 insertions(+), 58 deletions(-)
diff --git a/slirp/slirp.c b/slirp/slirp.c
index 380ddc3..66c4196 100644
--- a/s
This patch adds parameters to manage some new options in the qemu -net
command.
Slirp IPv6 address, network prefix, and DNS IPv6 address can be given in
argument to the qemu command.
Defaults parameters are respectively fec0::2, fec0::, /64 and fec0::3.
Signed-off-by: Yann Bordenave
Signed-off-by
This patch adds an IPv6 address to the DNS relay. in6_equal_dns() is
developed using this Slirp attribute.
sotranslate_in/out/accept() are also updated to manage the IPv6 case so the
guest can be able to join the host using one of the Slirp addresses.
Signed-off-by: Guillaume Subiron
Signed-off-b
This adds the sin6 case in the fhost and lhost unions and related macros.
It adds udp6_input() and udp6_output().
It adds the IPv6 case in sorecvfrom().
Finally, udp_input() is called by ip6_input().
Signed-off-by: Guillaume Subiron
---
slirp/Makefile.objs | 2 +-
slirp/ip6_input.c | 3 +-
Before this patch, if sosendto fails, udp_input is executed as if the
packet was sent, recording the packet for icmp errors, which does not
makes sense since the packet was not actually sent, errors would be
related to a previous packet.
This patch adds a goto bad to cut the execution of this func
A sa_family_t is now passed in argument to udp_attach instead of using a
hardcoded "AF_INET" to call qemu_socket().
Signed-off-by: Guillaume Subiron
---
slirp/ip_icmp.c | 2 +-
slirp/udp.c | 7 ---
slirp/udp.h | 2 +-
3 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/sli
This patch adds IPv6 case in TCP functions refactored by the last
patches.
This also adds IPv6 pseudo-header in tcpiphdr structure.
Finally, tcp_input() is called by ip6_input().
Signed-off-by: Guillaume Subiron
Signed-off-by: Samuel Thibault
---
slirp/ip6_input.c | 4 ++--
slirp/tcp.h
Basically, this patch replaces "arp" by "resolution" every time "arp"
means "mac resolution" and not specifically ARP.
Some indentation problems are solved in functions that will be modified
in the next patches (ip_input…).
In if_encap, a switch is added to prepare for the IPv6 case. Some code
is
This patch adds SCALE_S, timer_new_s(), and qemu_clock_get_s in qemu/timer.h to
manage second-scale timers.
Signed-off-by: Guillaume Subiron
Signed-off-by: Samuel Thibault
---
include/qemu/timer.h | 32
1 file changed, 32 insertions(+)
diff --git a/include/qemu
This patch simply adds a sa_family_t argument to remove the hardcoded
"AF_INET" in the call of qemu_socket().
Signed-off-by: Guillaume Subiron
---
slirp/slirp.h | 2 +-
slirp/tcp_input.c | 3 ++-
slirp/tcp_subr.c | 5 +++--
3 files changed, 6 insertions(+), 4 deletions(-)
diff --git a/slir
Samuel Thibault, le Wed 29 Jul 2015 00:13:57 +0200, a écrit :
> I can rebase the patch series over the current master and submit again
> the patches.
Here it is:
Hello,
This is another respin of IPv6 in Qemu -net user mode.
These patches add ICMPv6, NDP, and make UDP and TCP compatible with
IPv
zhanghailiang, le Tue 21 Jul 2015 09:59:22 +0800, a écrit :
> I didn't find any news since that version, are you still trying to
> push them to qemu upstream ?
I'd still be trying if I had any actual answer other than "we need to
find time to deal about it" :)
I can rebase the patch series over t
Hello,
Jan Kiszka, le Mon 27 Jul 2015 15:33:27 +0200, a écrit :
> Of course, I'm fine with handing this over to someone who'd like to
> pick up. Do we have volunteers?
>
> Samuel, would you like to do this? As a subsystem maintainer, you are
> already familiar with QEMU processes.
I can help wit
Hi there,
As the subject of my email suggests, is there a way to log the number of
translated instructions per basic block? I've dug into the debug code a
bit (specifically *target_disas *and the arch-specific *print_insn_**) and
haven't found anything that would suggest this is doable, but befor
On 07/28/2015 11:06 AM, 한만종 wrote:
> Hi,
>
> I'm facing a weird behavior when I used the one disk image file on 2 virtual
> machines at the same time.
>
> I made the instance of a virtual machine, using the below command.
> $ qemu-system-x86_64 -smp 2 -m 1024 -hda 10G.qcow2 -enable-kvm
>
> When
On 07/28/2015 03:13 PM, Eric Blake wrote:
>
-def generate_command_decl(name, args, ret_type):
-arglist=""
+def gen_command_decl(name, args, rets):
>>>
>>> I can see how 'args' is plural (even if it is a single string for the
>>> name of a type containing the args), but should i
On 07/28/2015 12:24 PM, Markus Armbruster wrote:
> Eric Blake writes:
>
>> On 07/01/2015 02:22 PM, Markus Armbruster wrote:
>>> To eliminate the temptation for clients to look up types by name
>>> (which are not ABI), replace all type names by meaningless strings.
>>>
>>> Reduces output of query-
On 07/28/2015 12:39 PM, Markus Armbruster wrote:
>
> Could do plain integer. I guess I started down the base32 road to
> squeeze out a few more characters, then sabotaged myself by always using
> three base32 characters.
>
>
> In the introspection schema, every 'str' that's really a type name
On 07/28/2015 03:18 AM, Markus Armbruster wrote:
> Eric Blake writes:
>
>> On 07/01/2015 02:22 PM, Markus Armbruster wrote:
>>> Drop helper functions that are now unused.
>>>
>>> Make pylint reasonably happy.
>>>
>>> Rename generate_FOO() functions to gen_FOO() for consistency.
>>>
>>> Use more c
On 07/28/2015 12:44 AM, Markus Armbruster wrote:
>>
>>> +def gen_visit_union(name, base, variants):
>>> +ret = ''
>>>
>>> if base:
>>> -assert discriminator
>>> -base_fields = find_struct(base)['data'].copy()
>>> -del base_fields[discriminator]
>>> -ret +
On 28 July 2015 at 13:26, Stefan Hajnoczi wrote:
> The following changes since commit f8787f8723eaca1be99e3b1873e54de163fffa93:
>
> Merge remote-tracking branch 'remotes/rth/tags/pull-tcg-20150727' into
> staging (2015-07-27 19:37:09 +0100)
>
> are available in the git repository at:
>
> git:
On 07/01/2015 02:21 PM, Markus Armbruster wrote:
> The struct generated for a flat union is weird: the members of its
> base are at the end, except for the union tag, which is renamed to
> 'kind' and put at the beginning.
The renaming to 'kind' was a bug waiting to happen. Consider this
example,
On 07/28/2015 08:33 AM, Markus Armbruster wrote:
> Eric Blake writes:
>
>> On 07/01/2015 02:22 PM, Markus Armbruster wrote:
>>> Caution, rough edges.
>>
>> No joke. It doesn't even compile without this fixup to a rebase snafu
>> (see [0] below):
>
> Uh, how did that happen? I compiled it a mill
On Tue, Jul 07, 2015 at 12:42:01PM +0200, Paolo Bonzini wrote:
> ABM is only implemented as a single instruction set by AMD; all AMD
> processors support both instructions or neither. Intel considers POPCNT
> as part of SSE4.2, and LZCNT as part of BMI1, but Intel also uses AMD's
> ABM flag to indi
From: Dana Rubin
From: Dana Rubin
In commit 80da311d81,
"net/vmxnet3: Fix RX TCP/UDP checksum on partially summed packets"
a debug message was introduced in vmxnet3_rx_need_csum_calculate() for
an unlikely input condition.
The message accidentally printed 'len' variable instead of 'pkt_len'
Eric Blake writes:
> On 07/23/2015 09:44 PM, Eric Blake wrote:
>> On 07/01/2015 02:22 PM, Markus Armbruster wrote:
>>> To eliminate the temptation for clients to look up types by name
>>> (which are not ABI), replace all type names by meaningless strings.
>>>
>>> Reduces output of query-schema by
Eric Blake writes:
> On 07/01/2015 02:22 PM, Markus Armbruster wrote:
>> To eliminate the temptation for clients to look up types by name
>> (which are not ABI), replace all type names by meaningless strings.
>>
>> Reduces output of query-schema by 9 out of 80KiB.
>
> I'm not sure whether I like
Hi,
I'm facing a weird behavior when I used the one disk image file on 2 virtual
machines at the same time.
I made the instance of a virtual machine, using the below command.
$ qemu-system-x86_64 -smp 2 -m 1024 -hda 10G.qcow2 -enable-kvm
When the OS(Ubuntu 14.04 64bit) was booted up, I made an
Hi,
I was facing a weird behavior when I used the one disk image file on 2
virtual machines at the same time.
I made the instance of a virtual machine, using the below command.
$ qemu-system-x86_64 -smp 2 -m 1024 -hda 10G.qcow2 -enable-kvm
When the OS(Ubuntu 14.04 64bit) was booted up, I made an
Hi,
I was facing a weird behavior when I used the one disk image file on 2
virtual machines at the same time.
I made the instance of a virtual machine, using the below command.
$ qemu-system-x86_64 -smp 2 -m 1024 -hda 10G.qcow2 -enable-kvm
When the OS(Ubuntu 14.04 64bit) was booted up, I made an
Hi
On Tue, Jul 28, 2015 at 9:47 AM, Andrew Jones wrote:
> Just warn instead? "size argument ignored with hostmem" Otherwise
> "hostmem must not specify a size argument" would be more clear
agree, fixed
--
Marc-André Lureau
On 2015-07-28 19:22, Stefan Weil wrote:
> Hi,
Hi,
> are there QEMU developers at the Debian Conference 2015 in Heidelberg
> (Germany)
> (http://debconf15.debconf.org/)? I'll be there for one or two days.
I'll be there for the whole Debcamp and Debconf. I will be happy to meet
other QEMU people,
Hi
On Tue, Jul 28, 2015 at 9:33 AM, Andrew Jones wrote:
> On Tue, Jul 28, 2015 at 02:32:45AM +0200, Marc-André Lureau wrote:
>> +
>> +return fs.f_bsize;
>> +}
>> +
>> +
>> +
> few extra lines here
cut, thanks
>> /* open shm, create and bind to the unix socket */
>> int
>> ivshmem_server_
On 2015-07-28 09:52, Mark Cave-Ayland wrote:
> On 27/07/15 23:00, Aurelien Jarno wrote:
>
> > On 2015-05-22 15:59, John Snow wrote:
> >> From: Mark Cave-Ayland
> >>
> >> Similarly switch the macio IDE routines over to use the new function and
> >> tidy-up the remaining code as required.
> >>
> >>
On 28 July 2015 at 10:57, Michael S. Tsirkin wrote:
> The following changes since commit b69b30532e0a80e25449244c01b0cbed000c99a3:
>
> Update version for v2.4.0-rc2 release (2015-07-22 18:17:19 +0100)
>
> are available in the git repository at:
>
> git://git.kernel.org/pub/scm/virt/kvm/mst/qem
On 07/28/2015 05:15 AM, Markus Armbruster wrote:
>> Yeah, avoiding line wraps consumes fewer source bytes (fewer runs of
>> spaces), but the space isn't being wasted by storing generated files in
>> git, nor does the C compiler care which layout we use. And honestly,
>> it's easier to spot change
Signed-off-by: Marc-André Lureau
---
docs/specs/vhost-user.txt | 42 ++
1 file changed, 42 insertions(+)
diff --git a/docs/specs/vhost-user.txt b/docs/specs/vhost-user.txt
index 0062baa..2cf9ab4 100644
--- a/docs/specs/vhost-user.txt
+++ b/docs/specs/vhost
On 26 July 2015 at 14:46, Pavel Fedin wrote:
> Unfortunately, this is how qemu is designed. kvm_irqchip_create() is
> called long before machine model's init code (machvirt_init() in our
> case) is called. So, if we want to check for the right thing, we have
> to know it before machine model actu
It is useful to pass extra arguments to the funtions, for
various backend needs.
Signed-off-by: Marc-André Lureau
---
hw/virtio/vhost-backend.c | 4 ++--
hw/virtio/vhost-user.c| 4 ++--
include/hw/virtio/vhost-backend.h | 6 --
3 files changed, 8 insertions(+), 6 deletion
Add qemu_memfd_alloc/free() helpers.
The function helps to allocate and seal a memfd, and implements an
open/unlink/mmap fallback for system that do not support memfd.
Signed-off-by: Marc-André Lureau
---
include/qemu/memfd.h | 4 +++
util/memfd.c | 74 +
Implement memfd_create() fallback if not available in system libc.
memfd_create() is still not included in glibc today, atlhough it's been
available since Linux 3.17 in Oct 2014.
memfd has numerous advantages over traditional shm/mmap for ipc memory
sharing with fd handler, which we are going to m
Use a common start and exit branch to open and cleanup the va_list.
Signed-off-by: Marc-André Lureau
---
hw/virtio/vhost-user.c | 32
1 file changed, 20 insertions(+), 12 deletions(-)
diff --git a/hw/virtio/vhost-user.c b/hw/virtio/vhost-user.c
index 8b6d7e7..21
Signed-off-by: Marc-André Lureau
---
hw/virtio/vhost.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/hw/virtio/vhost.c b/hw/virtio/vhost.c
index 862e786..057d548 100644
--- a/hw/virtio/vhost.c
+++ b/hw/virtio/vhost.c
@@ -357,6 +357,8 @@ static inline void vhost_dev_log_resize(struct vhost
Send the shm for the dirty pages logging if the backend support
VHOST_USER_PROTOCOL_F_LOG_SHMFD.
Signed-off-by: Marc-André Lureau
---
hw/virtio/vhost-user.c | 16 ++--
hw/virtio/vhost.c | 5 +++--
2 files changed, 17 insertions(+), 4 deletions(-)
diff --git a/hw/virtio/vhost-u
Hi,
The following series implement shareable log for vhost-user to support
memory tracking during live migration. On qemu-side, the solution is
fairly straightfoward since vhost already supports the dirty log, only
vhost-user couldn't access the log memory until then.
The series is based on top o
Check if memfd_create() is part of system libc.
Signed-off-by: Marc-André Lureau
---
configure | 19 +++
1 file changed, 19 insertions(+)
diff --git a/configure b/configure
index 704b34c..c754700 100755
--- a/configure
+++ b/configure
@@ -3406,6 +3406,22 @@ if compile_prog "" ""
If the backend is of type VHOST_BACKEND_TYPE_USER, allocate
shareable memory.
Note: vhost_log_get() can use a global "vhost_log" that can be shared by
several vhost devices. We may want instead a common shareable log and a
common non-shareable one.
Signed-off-by: Marc-André Lureau
---
hw/virtio
On 28/07/2015 19:22, Stefan Weil wrote:
> are there QEMU developers at the Debian Conference 2015 in Heidelberg
> (Germany)
> (http://debconf15.debconf.org/)? I'll be there for one or two days.
Unlikely, because of the near-perfect overlap with KVM Forum.
Paolo
Eric Blake writes:
> On 07/01/2015 02:22 PM, Markus Armbruster wrote:
>> These functions marshal both input and output.
>>
>> Signed-off-by: Markus Armbruster
>> ---
>> docs/qapi-code-gen.txt| 4 +-
>> docs/writing-qmp-commands.txt | 8 +-
>> monitor.c | 2 +-
Eric Blake writes:
> On 07/01/2015 02:22 PM, Markus Armbruster wrote:
>> Caution, rough edges.
>
> No joke. It doesn't even compile without this fixup to a rebase snafu
> (see [0] below):
Uh, how did that happen? I compiled it a million times... (except for
the last time, obviously).
> diff --
Eric Blake writes:
> On 07/01/2015 02:22 PM, Markus Armbruster wrote:
>> Duplicated in commit 21cd70d. Yes, we can't import qapi-types, but
>> that's no excuse. Move the helpers from qapi-types.py to qapi.py, and
>> replace the duplicates in qapi-event.py.
>>
>> The generated event enumeration
Eric Blake writes:
> On 07/01/2015 02:22 PM, Markus Armbruster wrote:
>> Rename gen_marshal_input() to gen_marshal(), because the generated
>> function marshals both arguments and results.
>>
>> Rename gen_visitor_input_containers_decl() to gen_marshal_vars(), and
>> move the other variable decl
Hi,
are there QEMU developers at the Debian Conference 2015 in Heidelberg
(Germany)
(http://debconf15.debconf.org/)? I'll be there for one or two days.
Regards
Stefan
Eric Blake writes:
> On 07/01/2015 02:22 PM, Markus Armbruster wrote:
>> Drop helper functions that are now unused.
>>
>> Make pylint reasonably happy.
>>
>> Rename generate_FOO() functions to gen_FOO() for consistency.
>>
>> Use more consistent and sensible variable names.
>>
>> Consistently
Eric Blake writes:
> On 07/01/2015 02:22 PM, Markus Armbruster wrote:
>> Fixes events whose data is struct with base to include the struct's
>> base members. Test case is qapi-schema-test.json's event
>> __org.qemu_x-command:
>>
>> { 'event': '__ORG.QEMU_X-EVENT', 'data': '__org.qemu_x-Stru
Eric Blake writes:
> On 07/01/2015 02:22 PM, Markus Armbruster wrote:
>> It doesn't take a 'props' argument, let alone one in the format
>> "NAME=VALUE,..."
>>
>> The bogus arguments specification doesn't matter due to 'gen': false.
>> Clean it up to be incomplete rather than wrong, and document
Eric Blake writes:
> On 07/01/2015 02:22 PM, Markus Armbruster wrote:
>> gen_marshal_output() uses its parameter name only for name of the
>> generated function. Name it after the type being marshaled instead of
>> its caller, and drop duplicates.
>>
>> Saves 7 copies of qmp_marshal_output_int(
Eric Blake writes:
> On 07/01/2015 02:22 PM, Markus Armbruster wrote:
>> 'gen': false needs to stay for now, because netdev_add is still using
>> it.
>>
>> Signed-off-by: Markus Armbruster
>> ---
>> docs/qapi-code-gen.txt | 15 ---
>> scripts/qapi.py
Eric Blake writes:
> On 07/01/2015 02:22 PM, Markus Armbruster wrote:
>> Generated qapi-event.[ch] lose line breaks. No change otherwise.
>
> For example,
>
> -void qapi_event_send_block_image_corrupted(const char *device,
> - bool has_node_name,
> -
Eric Blake writes:
> On 07/01/2015 02:22 PM, Markus Armbruster wrote:
>> It's first class, because unlike '**', it actually works, i.e. doesn't
>> require 'gen': false.
>
> Generated code grows in order to accommodate visiting the new anyList type:
>
> qapi-types.c| 15
Eric Blake writes:
> On 07/01/2015 02:22 PM, Markus Armbruster wrote:
>> With the previous commit, the generated marshalers just work, and save
>> us a bit of handwritten code.
>>
>
> Generated code grows, because you are now generating the hook :)
>
> qmp-commands.h |6 ++
> qmp-marshal.c
Eric Blake writes:
> On 07/01/2015 02:22 PM, Markus Armbruster wrote:
>> is_c_ptr() looks whether the end of the C text for the type looks like
>> a pointer. Works, but is fragile.
>>
>> We now have a better tool: use QAPISchemaType method c_null(). The
>> initializers for non-pointers become
Paolo Bonzini wrote:
> On 28/07/2015 17:19, Juan Quintela wrote:
>>> > On destination, we move from INMIGRATE to FINISH_MIGRATE. Add that to
>>> > the list of allowed states.
>>> >
>>> > Signed-off-by: Juan Quintela
>> Self-NAK.
>>
>> Somewhere I was able to test old + new qemu given this weird
On 28/07/2015 16:25, Marc-André Lureau wrote:
> > Can the inline function stay in util/memfd.c?
> I see little benefits in that, only the qemu_memfd_alloc helpers would
> then be exported. Then the inline is probably unnecessary if moved in
> the memfd.c.
That's just a matter of taste, I agree.
From: Stefan Hajnoczi
The notify_me optimization introduced in commit eabc97797310
("AioContext: fix broken ctx->dispatching optimization") skips
event_notifier_set() calls when the event loop thread is not blocked in
ppoll(2).
This optimization causes a deadlock if two aio_context_acquire() cal
From: Stefan Hajnoczi
BHs are freed during aio_bh_poll(). This leads to memory leaks if there
is no aio_bh_poll() between qemu_bh_delete() and aio_ctx_finalize().
Suggested-by: Paolo Bonzini
Signed-off-by: Stefan Hajnoczi
Message-Id: <1438014819-18125-2-git-send-email-stefa...@redhat.com>
Sig
v3: same as v1, but include virtio-blk-dataplane fix and move thread_pool_free
before the loop. Same result as applying in order:
[PATCH for-2.4 1/2] AioContext: avoid leaking BHs on cleanup
[PATCH for-2.4 2/2] AioContext: force event loop iteration using BH
[PATCH for-2.4] block: delete bottom h
Other uses of aio_bh_new are safe as long as all scheduled bottom
halves are run before an iothread is destroyed, which bdrv_drain will
ensure:
- archipelago_finish_aiocb: BH deletes itself
- inject_error: BH deletes itself
- blkverify_aio_bh: BH deletes itself
- abort_aio_request: BH deletes i
Commit 19109131 disabled the sdhci-pci support because it used
drive_get_next(). This patch reenables sdhci-pci and changes it to
pass the drive via a qdev property - for example:
-device sdhci-pci,drive=drive0 -drive id=drive0,if=sd,file=myimage
Signed-off-by: Kevin O'Connor
---
This patch on
On 28/07/2015 16:08, Stefan Hajnoczi wrote:
>> > v2:
>> > * Free BHs after thread_pool_free(), which calls qemu_bh_delete()
>> > [Cornelia]
>> > * Remove assert for leaked BHs since we don't know how many existing cases
>> >there are yet and QEMU 2.4-rc3 is a poor time to risk assertion fa
1 - 100 of 227 matches
Mail list logo