From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:46498) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TbFvM-0001l0-TP for qemu-devel@nongnu.org; Wed, 21 Nov 2012 14:25:29 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TbFvL-0005NX-Ka for qemu-devel@nongnu.org; Wed, 21 Nov 2012 14:25:28 -0500 Received: from v220110690675601.yourvserver.net ([78.47.199.172]:52721) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TbFvL-0005N8-Ed for qemu-devel@nongnu.org; Wed, 21 Nov 2012 14:25:27 -0500 Message-ID: <50AD2AA4.1070106@weilnetz.de> Date: Wed, 21 Nov 2012 20:25:24 +0100 From: Stefan Weil MIME-Version: 1.0 References: <1353492752-16084-1-git-send-email-stefanha@redhat.com> <1353492752-16084-3-git-send-email-stefanha@redhat.com> In-Reply-To: <1353492752-16084-3-git-send-email-stefanha@redhat.com> Content-Type: text/plain; charset=ISO-8859-15; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH 2/5] vdi: don't override libuuid symbols List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Stefan Hajnoczi Cc: Kevin Wolf , Anthony Liguori , qemu-devel@nongnu.org Am 21.11.2012 11:12, schrieb Stefan Hajnoczi: > It's poor symbol hygiene to provide a global symbols that collide with a > common library like libuuid. If QEMU links against a shared library > that depends on uuid_generate() it can end up calling our stub version > of the function. > > This exact scenario happened with GlusterFS libgfapi.so, which depends > on libglusterfs.so's uuid_generate(). > > Scope the uuid stubs for vdi.c only and avoid affecting other shared > objects. > > Signed-off-by: Stefan Hajnoczi > Reviewed-by: Kevin Wolf > --- > block/vdi.c | 9 +++------ > 1 file changed, 3 insertions(+), 6 deletions(-) > Hi Stefan, I'm not opposed to this patch but would like to better understand the problem which you had with the old solution. Does libglusterfs.so really have a uuid_generate? Why does it not take the implementation from libuuid.so? Then QEMU could also use libuuid.so, and there would be no problem at all. I tried to reproduce the problem but could not find a libgfapi.so in the Debian or Ubuntu package archives. Regards Stefan