[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [RFC PATCH RDMA support v6: 4/7] Introduce two new capa
From: |
Paolo Bonzini |
Subject: |
Re: [Qemu-devel] [RFC PATCH RDMA support v6: 4/7] Introduce two new capabilities |
Date: |
Wed, 10 Apr 2013 14:40:20 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130311 Thunderbird/17.0.4 |
Il 10/04/2013 14:34, Michael R. Hines ha scritto:
> On 04/10/2013 03:50 AM, Paolo Bonzini wrote:
>> Il 10/04/2013 06:29, address@hidden ha scritto:
>>> From: "Michael R. Hines" <address@hidden>
>>>
>>> RDMA performs very slowly with zero-page checking.
>>> Without the ability to disable it, RDMA throughput and
>>> latency promises and high performance links cannot be
>>> fully realized.
>>>
>>> On the other hand, dynamic page registration support is also
>>> included in the RDMA protocol. This second capability also
>>> cannot be fully realized without the ability to enable zero
>>> page scanning.
>>>
>>> So, we have two new capabilities which work together:
>>>
>>> 1. migrate_set_capability check_for_zero on|off (default on)
>>> 2. migrate_set_capability chunk_register_destination on|off (default
>>> off)
>>>
>>> Signed-off-by: Michael R. Hines <address@hidden>
>> Michael, please listen to _all_ review comments.
>>
>> 1) I asked you to place check_for_zero in a separate patch.
>>
>> 2) Again, patch 3 cannot compile without this one. The code should
>> compile after each patch, with and without --enable-rdma.
>
> My apologies - I misunderstood the request. I am indeed addressing every
> comment.
>
> When you said separate, I thought you meant a different patch series
> altpgether.
>
> This is my first time, so the meaning of "separate" was not clear =)
>
> And yes, patch 3 does in fact compile both with and without --enable-rdma.
How does this:
+#ifdef CONFIG_RDMA
+const QEMURamControlOps qemu_rdma_write_control = {
+ .before_ram_iterate = qemu_ram_registration_start,
+ .after_ram_iterate = qemu_rdma_registration_stop,
+ .register_ram_iterate = qemu_rdma_registration_handle,
+ .save_page = qemu_rdma_save_page,
+};
compile (and link) successfully without a definition of
qemu_ram_registration_start, which is in patch 5? (Honest question).
Similarly, patch 5 cannot link without qemu_ram_foreach_block.
Anyway, patch 1 does not compile with --enable-rdma. :)
> You flip-flopped on me =)
> You said conditionalize it, then make a separate patch, then delete it
> altogether =)
Make qemu_set_nonblock conditional, dropping the assert.
Do not touch the implementation of qemu_set_nonblock. (Yes, this was a
mess).
Paolo
- Re: [Qemu-devel] [RFC PATCH RDMA support v6: 1/7] ./configure and Makefile, (continued)
Re: [Qemu-devel] [RFC PATCH RDMA support v6: 4/7] Introduce two new capabilities, Orit Wasserman, 2013/04/10
[Qemu-devel] [RFC PATCH RDMA support v6: 7/7] introduce qemu_ram_foreach_block(), mrhines, 2013/04/10