Return-Path: Delivered-To: apmail-harmony-commits-archive@www.apache.org Received: (qmail 26440 invoked from network); 26 Dec 2007 16:33:03 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 26 Dec 2007 16:33:03 -0000 Received: (qmail 4903 invoked by uid 500); 26 Dec 2007 16:32:52 -0000 Delivered-To: apmail-harmony-commits-archive@harmony.apache.org Received: (qmail 4879 invoked by uid 500); 26 Dec 2007 16:32:52 -0000 Mailing-List: contact commits-help@harmony.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@harmony.apache.org Delivered-To: mailing list commits@harmony.apache.org Received: (qmail 4869 invoked by uid 99); 26 Dec 2007 16:32:52 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 26 Dec 2007 08:32:52 -0800 X-ASF-Spam-Status: No, hits=-100.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO brutus.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 26 Dec 2007 16:32:39 +0000 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 0BC8171422E for ; Wed, 26 Dec 2007 08:32:43 -0800 (PST) Message-ID: <33519411.1198686763038.JavaMail.jira@brutus> Date: Wed, 26 Dec 2007 08:32:43 -0800 (PST) From: "Gregory Shimansky (JIRA)" To: commits@harmony.apache.org Subject: [jira] Commented: (HARMONY-4937) [drlvm][thread] suspend_enable()/suspend_disable() race condition detector In-Reply-To: <12486346.1192191230602.JavaMail.jira@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/HARMONY-4937?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12554426 ] Gregory Shimansky commented on HARMONY-4937: -------------------------------------------- With this patch C-unit thread tests don't build on Linux with the following error: [cc] ../obj/thread_unit_test_utils.o: In function `jthread_get_native_thread': [cc] /nfs/ims/proj/drl/mrt2/users/gregory/suse2/trunk/working_vm/vm/vmcore/include/thread_manager.h:382: undefined reference to `jthread_get_tm_data' [cc] ../obj/thread_unit_test_utils.o: In function `jthread_get_vm_thread_from_java': [cc] /nfs/ims/proj/drl/mrt2/users/gregory/suse2/trunk/working_vm/vm/vmcore/include/thread_manager.h:393: undefined reference to `jthread_get_tm_data' [cc] collect2: ld returned 1 exit status > [drlvm][thread] suspend_enable()/suspend_disable() race condition detector > -------------------------------------------------------------------------- > > Key: HARMONY-4937 > URL: https://issues.apache.org/jira/browse/HARMONY-4937 > Project: Harmony > Issue Type: Sub-task > Components: DRLVM > Reporter: Pavel Rebriy > Assignee: Gregory Shimansky > Attachments: H4937.patch, H4937_test.patch, H4937_test002.patch, test_native_exp_sync.c, test_native_exp_sync.c > > > This is an experimental issue. Its goal is to define race condition in present suspend_disable/suspend_enable mechanism and to develop a new one. > The issue is implemented as cunit test which based on DRLVM. Test works in the following way: > Main thread (see function test_exp_sync()) starts 1 tested thread (see function test_thread_proc()), several GC requester threads (see function test_gc_request_thread_proc()) and several JAVA requester threads (see function test_java_request_thread_proc()). Tested thread makes suspend_disable()/suspend_enable() in a loop. Requester threads ask GC or JAVA suspend()/resume() tested thread properly. Main thread controls the execution. > By default test is base on hythread functionality. If define TESTED_RUN is changed to 1, tested functionality will be used. Tested functionality is base on algorithm which describes in HARMONY-4908. > To check the test need to complete the following steps: > 1. Apply the patch: > $ cd /working_vm > $ patch -p1 -i test.patch > 2. Build DRLVM: > $ cd build > $ ./build.bat > 3. Build and run cunit test: > $ ./build.bat cunit.test > The result of running will be in /working_vm/build/win_ia32_msvc_debug/tests/cunit.tests/results. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.