From owner-freebsd-java@FreeBSD.ORG Mon Apr 10 17:15:14 2006 Return-Path: X-Original-To: freebsd-java@freebsd.org Delivered-To: freebsd-java@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C62D116A401 for ; Mon, 10 Apr 2006 17:15:14 +0000 (UTC) (envelope-from lists@intricatesoftware.com) Received: from mta10.srv.hcvlny.cv.net (mta10.srv.hcvlny.cv.net [167.206.4.205]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7A5B043D5A for ; Mon, 10 Apr 2006 17:15:14 +0000 (GMT) (envelope-from lists@intricatesoftware.com) Received: from [172.16.1.72] (ool-457a77e8.dyn.optonline.net [69.122.119.232]) by mta10.srv.hcvlny.cv.net (Sun Java System Messaging Server 6.2-4.03 (built Sep 22 2005)) with ESMTP id <0IXI007RRNXCZXDP@mta10.srv.hcvlny.cv.net> for freebsd-java@freebsd.org; Mon, 10 Apr 2006 13:15:13 -0400 (EDT) Date: Mon, 10 Apr 2006 13:15:11 -0400 From: Kurt Miller In-reply-to: To: freebsd-java@freebsd.org Message-id: <200604101315.12391.lists@intricatesoftware.com> MIME-version: 1.0 Content-type: text/plain; charset=iso-8859-1 Content-transfer-encoding: 7BIT Content-disposition: inline References: User-Agent: KMail/1.9.1 Subject: Re: Diablo 1.5 SIGBUS - fixed X-BeenThere: freebsd-java@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: kurt@intricatesoftware.com List-Id: Porting Java to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Apr 2006 17:15:14 -0000 On Sunday 09 April 2006 9:45 pm, odela01 wrote: > > From: Kurt Miller > > I was able to catch the SIGBUS in gdb once so far on a remote > > multiprocessor system. There was some evidence that the use of > > of the jvm argument -XX:+UseMembar will help correct the problem. > > I wasn't readily able to reproduce the problem so I'm not sure > > yet if this is the proper solution. Can those of you who are > > getting the SIGBUS try this and see if it improves things? > > I think you nailed it! Previously it would always sigbus a few seconds after > launching TestNG, but after adding that argument, it completed the whole > test suite, which takes about 20 minutes. > > Google didn't have much to say about UseMembar, can you tell me what effect > it has? The SIGBUS occurred in a thread related optimization for multiprocessor systems that Sun introduced after the initial release of 1.5.0. From what I can gather from a brief inspection of the code is that they were removing unnecessary memory barriers, but added the UseMembar option to have a way to enable them again. The SIGBUS was happening in the new optimized code path that didn't use a membar. The best description I've found so far on the use of membar is in this old bug report: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4629468 The following excerpt was the most relevant, "For MP systems, a membar may still be required so that the load or store is seen in the order desired across a machine's memory system. It depends on the memory system." In other bug reports I see that on Windows for the 1.5.0_0x releases -XX:+UseMembar is the default because of problems with the changes. So diablo on multiprocessor systems will need to use -XX:+UseMembar until the next release where it can be made the default. -Kurt