harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Pavel Rebriy (JIRA)" <j...@apache.org>
Subject [jira] Created: (HARMONY-4937) [drlvm][thread] suspend_enable()/suspend_disable() race condition detector
Date Fri, 12 Oct 2007 12:13:50 GMT
[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

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 <harmony>/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 <harmony>/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.

View raw message