WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-users

Re: [Xen-users] libxl -> libxenstore dependency

To: xen-users@xxxxxxxxxxxxxxxxxxx
Subject: Re: [Xen-users] libxl -> libxenstore dependency
From: Josef Liška <jl@xxxxxx>
Date: Wed, 10 Nov 2010 14:49:53 +0100
Delivery-date: Wed, 10 Nov 2010 05:51:29 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <201011100848.11286.hahn@xxxxxxxxxxxxx>
List-help: <mailto:xen-users-request@lists.xensource.com?subject=help>
List-id: Xen user discussion <xen-users.lists.xensource.com>
List-post: <mailto:xen-users@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-users>, <mailto:xen-users-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-users>, <mailto:xen-users-request@lists.xensource.com?subject=unsubscribe>
Organization: CHL
References: <821680.59629.qm@xxxxxxxxxxxxxxxxxxxxxxxxxxx> <4CDA455B.2000506@xxxxxx> <201011100848.11286.hahn@xxxxxxxxxxxxx>
Sender: xen-users-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.15) Gecko/20101027 Thunderbird/3.0.10
Hi list,
I have attached trivial one line patch close_pipes.patch.

It seems to me that call to close_fds_free(h) in function xs_daemon_close was lost by mistake.
Function xs_daemon_destroy_postfork calls this function properly.

I'll try to file a bug now.

Best regards
Josef Liška

CHL | system care

Telefon: +420.272048055
Fax: +420.272048064
Mobil: +420.776026526 denně 9:00 - 17:30
Jabber: jl@xxxxxx
https://www.chl.cz/


Perhaps not directly relevant to your bug, but I found a similar problem with 
our custom-build Debian package for xen-4.0.1:
libxl doesn't link to libxenstore itself, but if you want to use libxl with 
any program, you have to link libxenstore as well, as libxl uses the function 
from libxenstore. This confuses dpkg-shlibdeps, which resolves the 
shared-library-dependencies on a per-symbol basis:
* xs_daemon_destroy_postfork() is only available from >= 4.0.0~rc4.
* libxl uses it, but isn't directly linked to libxenstore, so dpkg-shlibdeps 
isn't able to determin, that libxenstore from >= 4.0.0~rc4 is needed during 
runtime. Instead it just declares a dependency on libxenstore.
* Any program (currently only xl) using libxl might crash during runtime as 
soon as xs_daemon_destroy_postfork() while an old libxenstore is installed.

Something like the following pseudo-patch solved the problem by already 
linking libxl to libxenstore:

@ xen-4.0.1/tools/libxl/Makefile:62
 libxenlight.so.$(MAJOR).$(MINOR): $(LIBXL_OBJS)
-        $(CC) $(CFLAGS) $(LDFLAGS) -Wl,$(SONAME_LDFLAG) -Wl,libxenlight.so.
$(MAJOR) $(SHLIB_CFLAGS) -o $@ $^
+        $(CC) $(CFLAGS) $(LDFLAGS) $(LDFLAGS_libxenstore) -Wl,
$(SONAME_LDFLAG) -Wl,libxenlight.so.$(MAJOR) $(SHLIB_CFLAGS) -o $@ $^

Alternatively incrementing the minior version of libxenstore would have been a 
good idea, since a new function was added.

Sincerely
Philipp Hahn
  

Attachment: close_pipes.patch
Description: Text Data

Attachment: jl.vcf
Description: Vcard

_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users
<Prev in Thread] Current Thread [Next in Thread>