From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:46379) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1a5xZL-0004vD-2r for qemu-devel@nongnu.org; Mon, 07 Dec 2015 10:19:15 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1a5xZJ-00037H-Uj for qemu-devel@nongnu.org; Mon, 07 Dec 2015 10:19:15 -0500 Sender: Paolo Bonzini References: <1449485967-19240-1-git-send-email-famz@redhat.com> <20151207122949.72abc5ce.cornelia.huck@de.ibm.com> <20151207130240.GH32154@ad.usersys.redhat.com> From: Paolo Bonzini Message-ID: <5665A36B.1060502@redhat.com> Date: Mon, 7 Dec 2015 16:19:07 +0100 MIME-Version: 1.0 In-Reply-To: <20151207130240.GH32154@ad.usersys.redhat.com> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH] virtio-blk: Drop x-data-plane option List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Fam Zheng , Cornelia Huck Cc: Kevin Wolf , Peter Maydell , qemu-block@nongnu.org, qemu-devel@nongnu.org, Stefan Hajnoczi On 07/12/2015 14:02, Fam Zheng wrote: > On Mon, 12/07 12:29, Cornelia Huck wrote: >> On Mon, 7 Dec 2015 18:59:27 +0800 >> Fam Zheng wrote: >> >>> The official way of enabling dataplane is through the "iothread" >>> property that references an iothread object created by "-object >>> iothread". Since the old "x-data-plane=on" way now even crashes, it's >>> probably easier to just drop it: >>> >>> $ qemu-system-x86_64 -drive file=null-co://,id=d0,if=none \ >>> -device virtio-blk-pci,drive=d0,x-data-plane=on >>> >>> ERROR:/home/fam/work/qemu/qom/object.c:1515: >>> object_get_canonical_path_component: assertion failed: (obj->parent != NULL) >>> Aborted >> >> Do we understand yet why this crashes, btw? > > I think it's because with x-data-plane=on, virtio-blk initialize an object that > doesn't have a parent, therefore it doesn't have a valid "canonical path > component" thing, which is different from objects created with "-object" CLI. > I'm not very familiar with the QOM semantics here. > >> >>> >>> Signed-off-by: Fam Zheng >>> --- >>> hw/block/dataplane/virtio-blk.c | 15 ++------------- >>> hw/block/virtio-blk.c | 1 - >>> include/hw/virtio/virtio-blk.h | 1 - >>> 3 files changed, 2 insertions(+), 15 deletions(-) >>> >> >> No general objection to removing x-data-plane; but this probably wants >> a mention on the changelog as x-data-plane has been described in >> various howtos etc. over the years. > > Yes, that is a good point. I don't know if it's too rushing in removing it for > 2.5 (this is just posted as one option) and we'll have to count on QOM experts > for the fix, if it is. The solution would be to add object_property_add_child to virtio_blk_data_plane_create, between object_initialize and user_creatable_complete. But I think this patch is ok for 2.5. Paolo