Re: [drlvm][threading] Should hythread_monitor_init() aquire the monitor?

2006-11-13 Thread Artem Aliev
It turned out that DRL implementation of hythread_monitor_init / hythread_monitor_init_with_name initializes and acquires a monitor. Eugeni, Both drlvm and classlib hythread work this way. This original hythread design that for compatibility reason was implemented in drlvm. Thanks Artem

Re: [drlvm][threading] Should hythread_monitor_init() aquire the monitor?

2006-11-13 Thread Artem Aliev
\port\linux\hysignal.c you will find that it initializes new monitors with hyhtread_monitor_init_with_name and never frees these monitors. That turned out to be the reason of a deadlock in HARMONY-2006. Thanks Evgueni On 11/13/06, Artem Aliev [EMAIL PROTECTED] wrote: It turned out that DRL

[classlib][awt] AWT does not work without HARMONY-1823 (was: Re: [drlvm]Debug Error! dialog window occurs when running junit.awtui.TestRunner.

2006-10-20 Thread Artem Aliev
Commiters, AWT does not work at all, because of HARMONY-1823. The patch is ready for a week. there are a lot of messages on this list and duplicate issues on it. There are a lot of verification done. Could you please apply nterrupt_fix.patch and states.patch. The patch does not fix ALL problems

Re: [drlvm][threadmanager] Fast thread local data access

2006-10-20 Thread Artem Aliev
Mikhail, Right now the TM uses vm helper approach for the fast TLS access. See vm/thread/src/thread_helpers.cpp: fast_tls_func* get_tls_helper(hythread_tls_key_t key); It looks reasonable for performance, to divide it in two part, get_tls_pointer_accesor() and get_tls_storage_offset(). First

Re: [drlvm][threading] Is it safe to use hythread_suspend_all and hythread_resume_all?

2006-10-19 Thread Artem Aliev
Weldon, If the current scheme is the same that we had 1 or 2 years ago, the answer is no This is just the same scheme! I am really hoping that all of this is simply an implementation bug. There are no open issues on this scheme, there is no examples that fail right now because of the

Re: [drlvm][threading] Infinite loop in atomic16_inc/atomic16_dec?

2006-10-19 Thread Artem Aliev
Eugeny, The problem can be easily fixed by changing int16 to unit16 in atomic16_dec. Do you think this is accaptable way to fix the problem. BTW, could somebody explain why 16-bit atomic operation is used for 32-bit value? The suspend_request could be 16bit value some time ago. Could you

Re: [drlvm][classlib] thread library - let there be one!

2006-10-19 Thread Artem Aliev
include internal thread state tracking, which is needed to support inspecting the thread state. Using layer (1) directly would bypass the thread state tracking. Angela On 10/16/06, Artem Aliev [EMAIL PROTECTED] wrote: Tim, Reading through discussion, I find two option for the second step. Let's

Re: [classlib][luni] signalis interruptus in hysock

2006-10-18 Thread Artem Aliev
Geir, I create HARMONY-1904 issue for this case. Thanks Artem On 10/17/06, Geir Magnusson Jr. [EMAIL PROTECTED] wrote: Artem Aliev wrote: Gier, I'd like to resurrect this topic. Oh goody! We try to run JBoss on Harmony and meet the same problem. Here is an except from the stack

Re: [drlvm] Thread me tender, thread me true, never throw an OOM...

2006-10-17 Thread Artem Aliev
Gier, I do some experiments on this issue. It is funny, but it is reproduced only by ubuntu user that logged to console. It does not reproduce on SuSe at all. Following sequence is more funny : )) [EMAIL PROTECTED] java Test fail ... on 370 [EMAIL PROTECTED] su - kna [EMAIL PROTECTED] java Test

Re: [drlvm] Thread me tender, thread me true, never throw an OOM...

2006-10-17 Thread Artem Aliev
-Dvm.finalize=off also help :) On 10/17/06, Weldon Washburn [EMAIL PROTECTED] wrote: Geir, I am running Test.java on windows with an svn revision from late last week. Right now, it is at Iteration: 140 and still going. Because of MMTk porting, GCV4.0 is configured in. Perhaps you can

Re: [classlib][luni] signalis interruptus in hysock

2006-10-17 Thread Artem Aliev
Magnusson Jr. [EMAIL PROTECTED] wrote: Artem Aliev wrote: The hyport and hy* are a porting layer that provides os independent interface. hysock_select() does not return EINTR on windows why it should do it under linux? either user presses Ctrl-c or ctrl-\ or VM uses other signals for its

Re: [drlvm][classlib] thread library - let there be one!

2006-10-16 Thread Artem Aliev
. I'd like some more discussion around the second step (picking up drlvm version) before you do a wholesale replacement. Yes please. Lets do small, reversible steps. geir Regards, Tim Weldon Washburn wrote: Artem, Thanks. I will take a look. On 10/12/06, Artem Aliev [EMAIL PROTECTED

Re: [drlvm][threading] Possible race condition in implementation of conditional variables?

2006-10-16 Thread Artem Aliev
. And that these issues are settled. Then commit a mod to svn that will cause the system to do an assert(0); in debug mode and exit w/ stack trace in release mode. Artem, Does it make sense for you to create a patch that does the above?? On 10/13/06, Artem Aliev [EMAIL PROTECTED] wrote

Re: [drlvm][threading] Possible race condition in implementation of conditional variables?

2006-10-13 Thread Artem Aliev
A classloader and some other components assume that semaphores and latches does not reset suspend disable count and some time ago latches and semaphores work this way. A java monitor ,in reverse, resets the suspend disable status in monitorEnter and monitor_wait command, and DRLVM takes care

Re: [drlvm][classlib] thread library - let there be one!

2006-10-12 Thread Artem Aliev
files from luni to portlib (by svn move). A portlib_files.patch update build to works with new structure. Thanks Artem On 9/29/06, Artem Aliev [EMAIL PROTECTED] wrote: Guys, Let me try to make this changes. Here is my understanding of the steps I need to do. 1. Make classlib/modules/portlib

Re: [drlvm][gc/threading] need the two lsb's from object header for MMTk port

2006-10-06 Thread Artem Aliev
Weldon, All Here is the updated vm/vmcore/sync_bit.h header file. That, I think, describes current state of the object header. I olso try define rules: How to update the header correctly. Welcome to discussion on them. #ifndef _sync_bits_H #define _sync_bits_H /** * These defines describe

Re: [drlvm] HARMONY-1582 - invocation API for DRLVM CHECKPOINT

2006-10-03 Thread Artem Aliev
Evgueni, 1) Which of the patches is a final? 2) It looks like you do not find a way to remove hythread_library_t from parameters and JavaVM from thread manager code. Well, leave it as is, I will try to fix this later. 2) Is the following global variable is necessary? extern

Re: [drlvm] HARMONY-1582 - invocation API for DRLVM CHECKPOINT

2006-09-29 Thread Artem Aliev
Evgueni, I got most of your changes, but still disagree with all hythread/jthread interface changes. Could leave interface unchanged. See following possible solutions, that could solve the same problems without interface changes. 1) daemon attribute is a java specific. (Andrey mentioned this

Re: [drlvm][classlib] thread library - let there be one!

2006-09-29 Thread Artem Aliev
: On 9/20/06, Tim Ellison [EMAIL PROTECTED] wrote: Artem Aliev wrote: Gier, The hythread is just most visible example. There are also signal handling problem. classlib hysig lib setup signal handlers and then drlvm overrides them by its owns. There are code

[drlvm] Please integrate HARMONY -1340.

2006-09-25 Thread Artem Aliev
Committers, Could you please integrate fix from: HARMONY -1340 Fix invalid assertion in thread_native_fat_monitor.c The patch is trivial. The assertion in the current code is incorrect, it check that monitor is entered not more then once (recursion_count 1) It was left in the code by mistake.

Re: [launcher] Patch is available for harmonyvm.properties parsing

2006-09-22 Thread Artem Aliev
Alexey, Could you please put the patch again. I got following error when try to access it. HTTP Status 404 - Could not find specified attachment: /usr/local/tomcat/tomcat-jira/attachments/HARMONY/HARMONY-1376/12341371_H-1376.diff (No such file or directory) Thanks Artem On 9/22/06, Geir

Re: [DRLVM] Thread Manager jvmti related issues fixes (was: Re: [jira] Commented: (HARMONY-1421))

2006-09-20 Thread Artem Aliev
Ivan, We do a lot for this cyclic suspend problem, I hope we does it right. I think the problem is in typo that was done in last patch. Fix attached. Could you please verify it. I will also attach it to the HARMONY-1421 we already try to has global lock for

Re: [drlvm] is_name_lowercase() in natives_support.cpp

2006-09-18 Thread Artem Aliev
Geir, The current DRLVM build is still failed. I attach patch for the current state of VM. Could you please apply it or commit new version of natives_support.cpp Thanks Artem On 9/18/06, Alexey Varlamov [EMAIL PROTECTED] wrote: Geir, The DRLVM build is broken now on gcc3.3.3 (SUSE9):

Re: [classlib][luni] signalis interruptus in hysock

2006-09-01 Thread Artem Aliev
Hello, guys. Do not forgot about portability Hysock lib is a porting layer and it should work the same way on all platforms. The windows does not support signals at all So the porting layer should hide all OS depended signal processing including this select() problem. +1 to my patch. The patch

Re: [DRLVM][VM] set_hash_bits() in vmcore/src/thread/mon_enter_exit.cpp -- is it a bug or a feature?

2006-09-01 Thread Artem Aliev
Guys, The problem looks much broader then just a hash code placing. There is no common place that describe object header format and object header sharing protocol. There are 3 components that use object header together. VMcore -- store VT pointer and hashcode ThreadManager -- update lockword GC

Re: [classlib][luni] signalis interruptus in hysock

2006-09-01 Thread Artem Aliev
. [EMAIL PROTECTED] wrote: Geir Magnusson Jr. wrote: Artem Aliev wrote: Hello, guys. Do not forgot about portability Hysock lib is a porting layer and it should work the same way on all platforms. The windows does not support signals at all So the porting layer should hide all OS depended

Re: [DRLVM][VM] -- which header bits are available for GC mark and GC forwarding use?

2006-08-24 Thread Artem Aliev
On 8/24/06, Ivan Volosyuk [EMAIL PROTECTED] wrote: Weldon, I have some information for this case. There bit layout was the following before new thread manager integration: object info word contains: 0 bit - available for GC 1-6 bits - object hashcode 7 bit - contention bit unused by TM, but

Re: [DRLVM][VM] -- which header bits are available for GC mark and GC forwarding use?

2006-08-24 Thread Artem Aliev
Weldon, There bit layout was the following before new thread manager integration: object info word contains: 0 bit - available for GC 1-6 bits - object hashcode 7 bit - contention bit unused by TM, but used by GC_V4 8-31 bits - other thread manager's data The new Thread Manager use only

Re: [drlvm] problem when TM patch applied

2006-08-23 Thread Artem Aliev
. Following patch to hysock.c fixes the problem in hysock. Probably classlib experts could provide better way to fix this problem. -- Artem Aliev, Intel Middleware Products Division --- modules/luni/src/main/native/port/linux/hysock.c +++ modules/luni/src/main/native/port/linux/hysock.c @@ -2570,11

Re: [classlib][vm] Prerequisites for java.util.concurrent

2006-06-16 Thread Artem Aliev
implementation could be done base on java monitors, but it kills the idea of the util.concurrent. Thanks Artem Aliev Intel Middleware Product Division On 6/14/06, Nathan Beyer [EMAIL PROTECTED] wrote: I stubbed out the method in luni-kernel (as well as two other methods that were missing). I looked

Re: Using APR for Harmony's native link to the OS?

2006-02-27 Thread Artem Aliev
, apr_allocator_t *allocator apr_size_t SUGGGESTED_SIZE Thank you, Artem Aliev Intel Middleware Products Division

Re: Using APR for Harmony's native link to the OS?

2006-02-22 Thread Artem Aliev
functions into APR. Thank you, Artem Aliev Intel Middleware Products Division

Re: Using APR for Harmony's native link to the OS?

2006-02-22 Thread Artem Aliev
, apr_pool_t *cntxt); APR_DECLARE(apr_status_t) apr_thread_mutex_create(apr_thread_mutex_t **mutex, unsigned int flags, apr_pool_t *pool); Thank you, Artem Aliev Intel