On Fri, 2008-04-11 at 15:32 -0700, Vadim Zaliva wrote: > I was too quick to speak. I got another crash: > > *** glibc detected *** ruby: double free or corruption (out): > 0x08e78608 *** > ======= Backtrace: ========= > /lib/i686/nosegneg/libc.so.6[0x5166a6] > /lib/i686/nosegneg/libc.so.6(cfree+0x90)[0x519c10] > /usr/lib/libvirt.so.0(virResetError+0x44)[0x64af3f4] > /usr/lib/libvirt.so.0(virConnResetLastError+0x24)[0x64af634] > /usr/lib/libvirt.so.0[0x649f618] > /usr/lib/libvirt.so.0(virDomainLookupByUUID+0xb7)[0x648e7d7] > /usr/lib/libvirt.so.0(virDomainLookupByUUIDString+0x14d)[0x648f90d] > /usr/lib/ruby/site_ruby/1.8/i386-linux/ > _libvirt.so(libvirt_conn_lookup_domain_by_uuid+0x3d)[0x15f8cd] Did your program while it ran have any errors before ? This is somewhere in the guts of libvirt, and I would guess it's a double free caused by the ruby bindings first calling virResetError on an unrelated error, and then libvirt crashing on a second error since the first virResetError freed various strings it didn't really own. Try commenting the call to virResetError in _libvirt.c in the ruby bindings out entirely, and see if you still get a crash. David -- Libvir-list mailing list Libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list