From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:43227) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WBO2C-000848-T1 for qemu-devel@nongnu.org; Thu, 06 Feb 2014 07:26:31 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WBO26-0002s0-Ai for qemu-devel@nongnu.org; Thu, 06 Feb 2014 07:26:24 -0500 Received: from mx1.redhat.com ([209.132.183.28]:39867) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WBO25-0002pq-WA for qemu-devel@nongnu.org; Thu, 06 Feb 2014 07:26:18 -0500 Date: Thu, 6 Feb 2014 12:26:12 +0000 From: "Dr. David Alan Gilbert" Message-ID: <20140206122611.GD3013@work-vm> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Subject: [Qemu-devel] qemu_rdma_cleanup seg - related to 5a91337? List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: yamahata@private.email.ne.jp, qemu-devel@nongnu.org, mrhines@us.ibm.com Cc: quintela@redhat.com Hi Isaku, I hit a seg in qemu_rdma_cleanup in the code changed by your '[PATCH] rdma: clean up of qemu_rdma_cleanup()' migration-rdma.c ~ 2241 if (rdma->qp) { rdma_destroy_qp(rdma->cm_id); rdma->qp = NULL; } Your patch changed that to free cm_id at that point rather than qp; but in my case cm_id is NULL and so rdma_destroy_qp segs. given that there is a : if (rdma->cm_id) { rdma_destroy_id(rdma->cm_id); rdma->cm_id = NULL; } later down, and there is now no longer any destroy of rdma->qp I don't understand your change. Your change text says: '- RDMAContext::qp is created by rdma_create_qp() so that it should be destroyed by rdma_destroy_qp(). not ibv_destroy_qp()' but the diff is: if (rdma->qp) { - ibv_destroy_qp(rdma->qp); + rdma_destroy_qp(rdma->cm_id); rdma->qp = NULL; should that have been rdma_destroy_qp(rdma->qp)? Dave (who doesn't yet know enough RDMA to be dangerous) -- Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK