From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 14101 invoked by alias); 26 Apr 2007 15:29:08 -0000 Received: (qmail 13946 invoked by uid 48); 26 Apr 2007 15:28:48 -0000 Date: Thu, 26 Apr 2007 15:29:00 -0000 From: "mcvet at redhat dot com" To: frysk-bugzilla@sourceware.org Message-ID: <20070426162848.4431.mcvet@redhat.com> Reply-To: sourceware-bugzilla@sourceware.org Subject: [Bug general/4431] New: AckDaemonProcess doesn't appear to fully wait X-Bugzilla-Reason: AssignedTo Mailing-List: contact frysk-bugzilla-help@sourceware.org; run by ezmlm Precedence: bulk List-Subscribe: List-Post: List-Help: , Sender: frysk-bugzilla-owner@sourceware.org X-SW-Source: 2007-q2/txt/msg00155.txt.bz2 List-Id: In most of the RT testcases, AckDaemonProcesses are used to start up a test process. However, often, (usually second iteration of the test), the test will fail becase the grabbed stack trace is not a proper stack trace of the process, and as noticed in #4394: "I grabbed some stack traces of the traced process, and ended up with varying results, including the following: #0 0x00002aaaaaab1a2b in _dl_map_object_from_fd () #1 0x00002aaaaaab2d9c in _dl_map_object () #2 0x00002aaaaaab610d in openaux () #3 0x00002aaaaaab7d26 in _dl_catch_error () #4 0x00002aaaaaab67d6 in _dl_map_object_deps () #5 0x00002aaaaaaae306 in dl_main () #6 0x00002aaaaaabde0b in _dl_sysdep_start () #7 0x00002aaaaaaac468 in _dl_start () #8 0x00002aaaaaaabb58 in [unknown] or #0 0x00002aaaaaabeff6 in strcmp () #1 0x00002aaaaaab3c87 in check_match.8134 () #2 0x00002aaaaaab4084 in do_lookup_x () #3 0x00002aaaaaab4282 in _dl_lookup_symbol_x () #4 0x00002aaaaaab57a5 in _dl_relocate_object () #5 0x00002aaaaaaae77a in dl_main () #6 0x00002aaaaaabde0b in _dl_sysdep_start () #7 0x00002aaaaaaac468 in _dl_start () #8 0x00002aaaaaaabb58 in [unknown] or #0 0x00002aaaaaab7bc3 in _dl_fixup () #1 0x00002aaaaaabd3a2 in _dl_runtime_resolve () #2 0x00002aaaaaccb628 in __pthread_initialize_minimal () #3 0x00002aaaaaccaf29 in _init () or just plain: #0 0x00002aaaaaabeff4 in [unknown]" The relevant code is usually something like: AckDaemonProcess process = new AckDaemonProcess (Sig.POLL, new String[] { getExecPath ("funit-rt-threader"), "" + Pid.get (), "" + Sig.POLL_ }); myTask = process.findTaskUsingRefresh(true); SteppingEngine.setProc(myTask.getProc()); However, the problem is mitigated by placing try { Thread.sleep(500); } catch (Exception e) {} between the initialization of the AckDaemonProcess, and the call to SteppingEngine. It appears as though the process needs time to fully load and start running before the test begins. -- Summary: AckDaemonProcess doesn't appear to fully wait Product: frysk Version: unspecified Status: NEW Severity: normal Priority: P2 Component: general AssignedTo: frysk-bugzilla at sourceware dot org ReportedBy: mcvet at redhat dot com CC: cagney at redhat dot com,mark at klomp dot org OtherBugsDependingO 2935,3346 nThis: http://sourceware.org/bugzilla/show_bug.cgi?id=4431 ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee.