Subject: Sun 1.3 JDK Process Forking Broken?
To: None <current-users@netbsd.org>
From: Curt Sampson <cjs@cynic.net>
List: current-users
Date: 12/06/2002 13:16:13
  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.
  Send mail to mime@docserver.cac.washington.edu for more info.

--0-1578950058-1039148173=:465
Content-Type: TEXT/PLAIN; charset=US-ASCII


Since I've upgraded from 1.6B to current as of a week or so ago, my ant
builds under Sun JDK 1.3 seem unable to fork a process more than once. The
second time, it blows up. (This stuff works ok on 1.6.)

In the output below, I think that ant forked a process to do the
cvs update, and forked again to do the compile, which died. I've
attached a ktrace file.

I don't have time today to analzye this any further; does anyone else have
any thoughts?

cjs
-- 
Curt Sampson  <cjs@cynic.net>   +81 90 7737 2974   http://www.netbsd.org
    Don't you know, in this new Dark Age, we're all light.  --XTC

Buildfile: build.xml

cvsupdate:
      [cvs] ? z1
      [cvs] ? z2
      [cvs] ? z3
      [cvs] ? z
      [cvs] ? ktrace.out

init:

compile:
SIGSEGV   11*  segmentation violation
    si_signo [0]: no signal
    si_errno [0]: Success
    si_code [0]: SI_USER [pid: 0, uid: 0]
	stackpointer=0xbfbf9064

Full thread dump Classic VM (1.3.1_02-b02, green threads):
    "process forker" (TID:0x48f7e828, sys_thread_t:0x852ce98, state:CW) prio=5
	at java.lang.Object.wait(Native Method)
	at java.lang.UNIXProcessForker.run(Native Method)
	at java.lang.Thread.run(Thread.java:484)
    "process reaper" (TID:0x48f7e7f0, sys_thread_t:0x8535160, state:CW) prio=5
	at java.lang.UNIXProcessReaper.run(Native Method)
	at java.lang.Thread.run(Thread.java:484)
    "Finalizer" (TID:0x48f4d528, sys_thread_t:0x80d0a68, state:CW) prio=8
	at java.lang.Object.wait(Native Method)
	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:108)
	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:123)
	at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:162)
    "Reference Handler" (TID:0x48f4d300, sys_thread_t:0x80cba20, state:CW) prio=10
	at java.lang.Object.wait(Native Method)
	at java.lang.Object.wait(Object.java:420)
	at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:110)
    "Signal dispatcher" (TID:0x48f4d330, sys_thread_t:0x80c8548, state:CW) prio=5
    "main" (TID:0x48f4d1b0, sys_thread_t:0x804d698, state:R) prio=5
	at java.lang.StringBuffer.expandCapacity(StringBuffer.java:202)
	at java.lang.StringBuffer.append(StringBuffer.java:496)
	at java.io.UnixFileSystem.resolve(UnixFileSystem.java:92)
	at java.io.File.<init>(File.java:270)
	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:854)
	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:860)
	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:860)
	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:860)
	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:860)
	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:860)
	at org.apache.tools.ant.DirectoryScanner.scan(DirectoryScanner.java:783)
	at org.apache.tools.ant.types.FileSet.getDirectoryScanner(FileSet.java:281)
	at org.apache.tools.ant.taskdefs.MatchingTask.getDirectoryScanner(MatchingTask.java:195)
	at org.apache.tools.ant.taskdefs.Javac.execute(Javac.java:508)
	at org.apache.tools.ant.Task.perform(Task.java:217)
	at org.apache.tools.ant.Target.execute(Target.java:184)
	at org.apache.tools.ant.Target.performTasks(Target.java:202)
	at org.apache.tools.ant.Project.executeTarget(Project.java:601)
	at org.apache.tools.ant.Project.executeTargets(Project.java:560)
	at org.apache.tools.ant.Main.runBuild(Main.java:454)
	at org.apache.tools.ant.Main.start(Main.java:153)
	at org.apache.tools.ant.Main.main(Main.java:176)
Monitor Cache Dump:
    java.lang.ref.Reference$Lock@48F4D310/48F82F98: owner "main" (0x804d698) 1 entry
	Waiting to be notified:
	    "Reference Handler" (0x80cba20)
    java.lang.ref.ReferenceQueue$Lock@48F4D540/48F83478: <unowned>
	Waiting to be notified:
	    "Finalizer" (0x80d0a68)
    java.lang.StringBuffer@48F4D048/490AFD48: owner "main" (0x804d698) 1 entry
    java.lang.Object@48F7E7D8/4904EDD8: <unowned>
	Waiting to be notified:
	    "process forker" (0x852ce98)
Registered Monitor Dump:
    utf8 hash table: <unowned>
    JNI pinning lock: <unowned>
    JNI global reference lock: owner "main" (0x804d698) 1 entry
    BinClass lock: owner "main" (0x804d698) 1 entry
    Class linking lock: owner "main" (0x804d698) 1 entry
    System class loader lock: <unowned>
    Code rewrite lock: <unowned>
    Heap lock: owner "main" (0x804d698) 1 entry
    Monitor cache lock: owner "main" (0x804d698) 2 entries
    Dynamic loading lock: <unowned>
    Monitor IO lock: <unowned>
    User signal monitor: <unowned>
	Waiting to be notified:
	    "Signal dispatcher" (0x80c8548)
    Child death monitor: <unowned>
	Waiting to be notified:
	    "process reaper" (0x8535160)
    I/O monitor: <unowned>
    Alarm monitor: <unowned>
	Waiting to be notified:
	    <unknown thread> (0x805fa08)
    Thread queue lock: owner "main" (0x804d698) 2 entries
    Monitor registry: owner "main" (0x804d698) 1 entry


--0-1578950058-1039148173=:465
Content-Type: APPLICATION/octet-stream; name="ktrace.out.gz"
Content-Transfer-Encoding: BASE64
Content-ID: <Pine.NEB.4.44.0212061316130.465@angelic.cynic.net>
Content-Description: 
Content-Disposition: attachment; filename="ktrace.out.gz"

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
EaNwA+MNz+PwLyvyX8QiRiHwSQFuQcz21xT5P4lFjMKNiv1fV+S/jEWMQlX+
31Tk/y0sYhRuVBz/pxX5X8AiRuFGxfH/tiL/72IRo7Bdsf9fVOT/PSxiFKry
/4Ei/x9hEaOwXXH8Lyry/zEWMQrbFcf/kiL/17CIUdit2P8/UeT/BhYxClX5
X1HkfxWLGIXdiuN/XZH/z7CIUditOP63FPm/jSlGYRQjMm7/v6PI/1eY4pit
l/97ivzfJ3TopshfZfx/o8j/9zD/Iv2vMv5/wGoYlR9C+3u6W2JUysTh/gXe
H88OchiVyAepZHG2k36srG65dg49jthBT4ILo/UescjZw+PIKRk5c9LMIQeX
ACNRQyg1q9voiRnsuE+gCcOLTnWLyDBJVTZybWygoo0m9YJjaIlceWrOtDLe
t92JvG5z33IQKZtk54NJZMKJ4MhjDx8fO9S3HTFCr7rdu8mTUY+WPGGV+E8M
R88luDji4UNHfRhIFBw09hC5yiClF8BJiiT8Q708ShdLrge4yHcHQn49Gf95
wjvO4whTC/C8uhZ9pFhQTU8Psg2nWJgFdFDrtIP6UWoAzehl6FTd+w0kJiS9
DoLwJUJz5NGHM6kB8qFkF6eg3zLc4eNAljwgf3PTZsEAEadJdxAK2hPsKLPg
ZLJerHCePczSnwm3TNaYL9nk54KTREOoV+vrfxCdvEfrO7k91Zv1D0L9MoSA
lUprfb3oQRSNXL4bhGUFPWKDjDr7NUS/JF+zaa6QB/DJ4D0TXC8GFEzqtKYl
2CzdR6bbiDdddiDD8sLOAYLTQTr5ZFroi4fGTsAx8ozukq4lHwCoteydxEJM
ulvEuWkjD1MoRWddOG++BOeb4pzatk0c3iyhAXaovx9b5jxfOhvWwKOT+lWE
QKfNdYTluUpGDgyPjwOEKFdJ8BtfifdPCtdktjkOVwp2jNB1vRNGMj3w37s6
L0umnto52xQX6+kcqYw1s2pufZPQnf9qvFBYd1YN6nSe0O2pxPMGXpgVvYHX
ZENhCd2Rq/HPIW/PqnkD/0ro7ny6X3DFXIzhDfzjAs0svTH+EfG/F9S8gW0V
iszZSmQZvscrat6jxys0u3Nc75FRUfMGnqrQBM1xvIEzFTVvoF2hiKO8N3Dz
pXjewK9XRG8gdJSM6tlUpcmhfdWzZV9H53Mrb77ZKaF6Pl5lqoe9i2Xk/FRV
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
lRnHAAA=
--0-1578950058-1039148173=:465--