On 04/12/2013 07:10 AM, Paolo Bonzini wrote:
Il 12/04/2013 07:52, [email protected] ha scritto:+ * + * If we're using dynamic registration on the server-side, we have to + * send a registration command first. + */ +static int __qemu_rdma_write(QEMUFile *f, RDMAContext *rdma, + int current_index, + uint64_t offset, uint64_t length, + uint64_t wr_id, enum ibv_send_flags flag) +{No __ prefix, perhaps call this function qemu_rdma_flush_one?+ /* + * Don't pin zero pages on the destination. Just return. + */ + if (rdma->chunk_register_destination && + (buffer_find_nonzero_offset(va, size) == size)) { + return size; + }Is this the right place to test? Is it correct if a page first is non-zero and then becomes zero? Perhaps you have to test where you add a page to a chunk, instead.
Oh, thank you. Huge bug - I need to introduce a "COMPRESS" message for this page into the protocol just like we already have for TCP and bypass the current chunk. I knew I was forgetting about compress - some little angel on my shoulder was telling me I forgot something but I couldn't remember =) - Michael
