[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [RFC PATCH RDMA support v4: 09/10] check for QMP string
From: |
Paolo Bonzini |
Subject: |
Re: [Qemu-devel] [RFC PATCH RDMA support v4: 09/10] check for QMP string and bypass nonblock() calls |
Date: |
Tue, 19 Mar 2013 10:23:50 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130219 Thunderbird/17.0.3 |
Il 18/03/2013 21:37, Michael R. Hines ha scritto:
>>
>> + if(!migrate_use_rdma(f)) {
>> + int fd = qemu_get_fd(f);
>> + assert(fd != -1);
>> + socket_set_nonblock(fd);
>> Is this because qemu_get_fd(f) returns -1 for RDMA? Then, you can
>> instead put socket_set_nonblock under an if(fd != -1).
>
> Yes, I proposed doing that check (for -1) in a previous RFC,
> but you told me to remove it and make a separate patch =)
>
> Is it OK to keep it in this patch?
Yes---this is a separate patch. Apologies if you had the if(fd != -1)
before. :) In fact, both the if(fd != -1) and the
if(!migrate_use_rdma(f)) are bad, but I prefer to eliminate as many uses
as possible of migrate_use_rdma.
The reason why they are bad, is that we try to operate on the socket in
a non-blocking manner, so that the monitor keeps working during incoming
migration. We do it with non-blocking sockets because incoming
migration does not (yet?) have a separate thread, and is not a
bottleneck (the VM is not running, so it's not a problem to hold the big
QEMU lock for extended periods of time).
Does librdmacm support non-blocking operation, similar to select() or
poll()? Perhaps we can add support for that later.
Paolo
- Re: [Qemu-devel] [Bug]? (RDMA-related) ballooned memory not consulted during migration?, (continued)
[Qemu-devel] [RFC PATCH RDMA support v4: 02/10] check for CONFIG_RDMA, mrhines, 2013/03/17
[Qemu-devel] [RFC PATCH RDMA support v4: 10/10] send pc.ram over RDMA, mrhines, 2013/03/17
[Qemu-devel] [RFC PATCH RDMA support v4: 04/10] iterators for getting the RAMBlocks, mrhines, 2013/03/17
[Qemu-devel] [RFC PATCH RDMA support v4: 09/10] check for QMP string and bypass nonblock() calls, mrhines, 2013/03/17
[Qemu-devel] [RFC PATCH RDMA support v4: 03/10] more verbose documentation of the RDMA transport, mrhines, 2013/03/17
- Re: [Qemu-devel] [RFC PATCH RDMA support v4: 03/10] more verbose documentation of the RDMA transport, Michael S. Tsirkin, 2013/03/18
- Re: [Qemu-devel] [RFC PATCH RDMA support v4: 03/10] more verbose documentation of the RDMA transport, Michael R. Hines, 2013/03/18
- Re: [Qemu-devel] [RFC PATCH RDMA support v4: 03/10] more verbose documentation of the RDMA transport, Michael S. Tsirkin, 2013/03/18
- Re: [Qemu-devel] [RFC PATCH RDMA support v4: 03/10] more verbose documentation of the RDMA transport, Michael R. Hines, 2013/03/18
- Re: [Qemu-devel] [RFC PATCH RDMA support v4: 03/10] more verbose documentation of the RDMA transport, Michael S. Tsirkin, 2013/03/19
- Re: [Qemu-devel] [RFC PATCH RDMA support v4: 03/10] more verbose documentation of the RDMA transport, Michael R. Hines, 2013/03/19
- Re: [Qemu-devel] [RFC PATCH RDMA support v4: 03/10] more verbose documentation of the RDMA transport, Michael R. Hines, 2013/03/19