From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:49397) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YuT6v-0004gn-Ct for qemu-devel@nongnu.org; Mon, 18 May 2015 18:02:10 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YuT6o-0005tL-3q for qemu-devel@nongnu.org; Mon, 18 May 2015 18:02:09 -0400 Received: from e39.co.us.ibm.com ([32.97.110.160]:51928) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YuT6n-0005sp-SW for qemu-devel@nongnu.org; Mon, 18 May 2015 18:02:02 -0400 Received: from /spool/local by e39.co.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Mon, 18 May 2015 16:01:59 -0600 Received: from b01cxnp22036.gho.pok.ibm.com (b01cxnp22036.gho.pok.ibm.com [9.57.198.26]) by d01dlp01.pok.ibm.com (Postfix) with ESMTP id AB2E338C8026 for ; Mon, 18 May 2015 18:01:57 -0400 (EDT) Received: from d01av02.pok.ibm.com (d01av02.pok.ibm.com [9.56.224.216]) by b01cxnp22036.gho.pok.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id t4IM1u9549938582 for ; Mon, 18 May 2015 22:01:57 GMT Received: from d01av02.pok.ibm.com (localhost [127.0.0.1]) by d01av02.pok.ibm.com (8.14.4/8.14.4/NCO v10.0 AVout) with ESMTP id t4IM1upc015845 for ; Mon, 18 May 2015 18:01:56 -0400 Message-ID: <555A6156.7040606@linux.vnet.ibm.com> Date: Mon, 18 May 2015 17:01:58 -0500 From: "Michael R. Hines" MIME-Version: 1.0 References: <1429545445-28216-1-git-send-email-dgilbert@redhat.com> In-Reply-To: <1429545445-28216-1-git-send-email-dgilbert@redhat.com> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH 00/10] Remove RDMA migration dependence on RAMBlock offset List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Dr. David Alan Gilbert (git)" , qemu-devel@nongnu.org Cc: amit.shah@redhat.com, arei.gonglei@huawei.com, mrhines@us.ibm.com, quintela@redhat.com On 04/20/2015 10:57 AM, Dr. David Alan Gilbert (git) wrote: > From: "Dr. David Alan Gilbert" > > RDMA migration currently relies on the source and destination RAMBlocks > having the same offsets within ram_addr_t space; unfortunately that's > just not true when: > a) You hotplug on the source but then create the device on the command line > on the destination. > > b) Across two versions of qemu > > Thus there are migrations that work with TCP that don't with RDMA. > > The changes keep stream compatibility with existing RDMA migration, > so cases that already work (i.e. no hotplug) will keep working. > > With some light testing this seems to work; hopefully I've got all the > cases that pass offsets back and forward. > > Dave > > Dr. David Alan Gilbert (10): > Rename RDMA structures to make destination clear > qemu_ram_foreach_block: pass up error value, and down the ramblock > name > Store block name in local blocks structure > Translate offsets to destination address space > Rework ram_control_load_hook to hook during block load > Remove unneeded memset > Simplify rdma_delete_block and remove it's dependence on the hash > Rework ram block hash > Sort destination RAMBlocks to be the same as the source > Sanity check RDMA remote data > > arch_init.c | 4 +- > exec.c | 10 +- > include/exec/cpu-common.h | 4 +- > include/migration/migration.h | 2 +- > include/migration/qemu-file.h | 14 +- > migration/qemu-file.c | 8 +- > migration/rdma.c | 367 ++++++++++++++++++++++++++---------------- > trace-events | 8 +- > 8 files changed, 257 insertions(+), 160 deletions(-) > OK, I've got the patchset open now on my new office in the US. Getting ready to go through it.......... - Michael