Hi, Actually I also did another test as following. When I comment the "new Connet", the program works well. So this is the problem related to Libvirt JNA. If I manually run the garbage collection for this program, it still works well. But if I run the garbage collection for the last problem, It will crash. I guess this problem is caused by ConnectAuth callback. When garbage collection is executed, the callback memory is moved. B.R. Benjamin Wang > public static void testcase1() throws LibvirtException > { > while(true) > { > int[] array = new int[100000000]; > > try > { > Thread.sleep(1000); > } > catch(Exception e){} > } > } -----Original Message----- From: Daniel Veillard [mailto:veillard@xxxxxxxxxx] Sent: 2012年9月6日 16:53 To: Benjamin Wang (gendwang) Cc: libvir-list@xxxxxxxxxx Subject: Re: Libvir JNA report SIGSEGV On Thu, Sep 06, 2012 at 07:53:24AM +0000, Benjamin Wang (gendwang) wrote: > Hi, > The problem only occurs in JNA part. The pure c libvirt works well. > Even If I only create a connection outside of the loop, the problem > can still happen. The following is the easiest problem to reproduce > this problem > > public static void testcase1() throws LibvirtException > { > Connect conn=null; > > //connect to the hypervisor > conn = new > Connect("esx://10.74.125.69:443/?no_verify=1&transport=https", new > ConnectAuthDefault(), 0); > > while(true) > { > int[] array = new int[100000000]; > > try > { > Thread.sleep(1000); > } > catch(Exception e){} > } > } Then it's a java bug. The loop doesn't call or use libvirt in any way. If it crashes in the loop it's java crashing to me ! Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ daniel@xxxxxxxxxxxx | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/ -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list