sablevm-developer Mailing List for SableVM (Page 8)
Brought to you by:
egagnon
You can subscribe to this list here.
2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(27) |
Aug
(22) |
Sep
(1) |
Oct
|
Nov
(1) |
Dec
(30) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2001 |
Jan
(2) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(2) |
Sep
(32) |
Oct
|
Nov
|
Dec
|
2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(69) |
Sep
(10) |
Oct
(31) |
Nov
(15) |
Dec
(58) |
2003 |
Jan
(33) |
Feb
(81) |
Mar
(85) |
Apr
(24) |
May
(15) |
Jun
(14) |
Jul
(6) |
Aug
(9) |
Sep
(101) |
Oct
(59) |
Nov
(142) |
Dec
(34) |
2004 |
Jan
(107) |
Feb
(164) |
Mar
(181) |
Apr
(96) |
May
(81) |
Jun
(71) |
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Grzegorz B. P. <ga...@de...> - 2004-04-28 11:24:27
|
On (27/04/04 03:45), Grzegorz B. Prokopski wrote: > Hi everyone, > > our machine hosting devel.sablevm.org (called, not w/o a reason, "oops") > started to have some serious problems last weekend. Actually it's back on-line and seems to be working well. Not sure how long will it last though. It can be hours or months... In any case replacement is on its way. Cheers, GBP -- Grzegorz B. Prokopski <ga...@de...> Debian GNU/Linux http://www.debian.org SableVM - LGPLed JVM http://www.sablevm.org Why SableVM ?!? http://devel.sablevm.org/wiki/WhySableVM |
From: David <db...@cs...> - 2004-04-28 07:07:39
|
Hi, yes, I still have it. I built it clean from svn/staging, using the default options except enable debug and --with-threading=3Ddirect. Does anyone else has it? This is when it is compiled with --enable-debugging-features (otherwise the assert is not there). It does not seem to depend on other factors: It happens both on my Gentoo/ppc and Debian/x86 machines. gcc 2.95 or 3.3.x. switch or direct does not matter. SableVM seems to run fine if not compiled with the debugging mode, no crash happens. On Debian/x86, I do get these warnings that I did not get before: For SableVM CP: =2E/autogen.sh=20 libtoolize (GNU libtool) 1.4.3 libtoolize: minimum version required: 1.4.2 autoconf (GNU Autoconf) 2.59 autoconf: minimum version required: 2.59 autoheader (GNU Autoconf) 2.59 autoheader: minimum version required: 2.59 automake (GNU automake) 1.7.6 automake: minimum version required: 1.7.0 aclocal (GNU automake) 1.7.6 aclocal: minimum version required: 1.7.0 libtoolize ... aclocal ... autoheader ... svn: Path is not a working copy directory svn: '.' is not a working copy configure.ac:13: warning: AC_ARG_PROGRAM was called before AC_CANONICAL_TARGET autoconf/general.m4:1657: AC_CANONICAL_TARGET is expanded from... configure.ac:13: the top level automake ... configure.ac:13: warning: AC_ARG_PROGRAM was called before AC_CANONICAL_TARGET autoconf/general.m4:1657: AC_CANONICAL_TARGET is expanded from... configure.ac:13: the top level autoconf ... svn: Path is not a working copy directory svn: '.' is not a working copy configure.ac:13: warning: AC_ARG_PROGRAM was called before AC_CANONICAL_TARGET autoconf/general.m4:1657: AC_CANONICAL_TARGET is expanded from... configure.ac:13: the top level Finished For SableVM: =2E/autogen.sh=20 svn: Path is not a working copy directory svn: '.' is not a working copy You can now run ./configure. Any idea? David On Tue, Apr 27, 2004 at 10:41:34PM -0400, Etienne Gagnon wrote: > I had a similar problem, until I scrapped all precompiled/pre-generated > code, and recompiled everything. Then, I was unable to reproduce it. >=20 > Can you: >=20 > $ svn st --no-ignore | grep ^I | awk '{print $2}' | xargs rm -rf >=20 > then rebuild, and tell me if you are still able to reproduce the bug? >=20 > Thanks, >=20 > Etienne >=20 > David B=E9langer wrote: > >Hi, > > > >I get this assertion failure with the new staging version: > > > > > >>$HOME/local/sablevm-jit/bin/sablevm-direct-debug -Y a > > > >sablevm-direct-debug: native_interface.c:1263: > >_svmf_internal_CallNonvirtualVoidMethodV: Assertion `_svmf_is_set_flag > >(method->class_info->state, 0x0004)' failed. > >Abort > > > > > >#6 0x400470d2 in _svmf_internal_CallNonvirtualVoidMethodV > >(env=3D0x804d7a8, > > this=3D0x8063918, class=3D0x8063398, methodID=3D0x413349e8, > > args=3D0xbfffc57c) > > at native_interface.c:1262 > >#7 0x4006ad54 in NewObject (_env=3D0x804d7a8, cls=3D0x8063398,=20 > > methodID=3D0x413349e8) at native_interface.c:23150 > >#8 0x413ae5cc in Java_gnu_java_nio_channels_FileChannelImpl_init ( > > env=3D0x804d7a8, clazz=3D0x8063398) > > at gnu_java_nio_channels_FileChannelImpl.c:139 > > > > > > > >It looks that somehow VMClass.setInitialize does not get call for some > >unknown reason for a class initialization. > > > >David > > > >--- > > > >David B=E9langer > >Graduate Student > >School of Computer Science > >McGill University > >Office: MC226 > > > >Web page: http://www.cs.mcgill.ca/~dbelan2/ > >Public key: http://www.cs.mcgill.ca/~dbelan2/public_key.txt > > > > > > > >------------------------------------------------------- > >This SF.net email is sponsored by: The Robotic Monkeys at ThinkGeek > >For a limited time only, get FREE Ground shipping on all orders of $35 > >or more. Hurry up and shop folks, this offer expires April 30th! > >http://www.thinkgeek.com/freeshipping/?cpg=12297 > >_______________________________________________ > >Sablevm-developer mailing list > >Sab...@li... > >https://lists.sourceforge.net/lists/listinfo/sablevm-developer > > > > >=20 >=20 > --=20 > Etienne M. Gagnon, Ph.D. http://www.info.uqam.ca/~egagnon/ > SableVM: http://www.sablevm.org/ > SableCC: http://www.sablecc.org/ >=20 --=20 --- David B=E9langer Graduate Student School of Computer Science McGill University Office: MC226 Web page: http://www.cs.mcgill.ca/~dbelan2/ Public key: http://www.cs.mcgill.ca/~dbelan2/public_key.txt |
From: Etienne G. <gag...@uq...> - 2004-04-28 03:30:35
|
I had a similar problem, until I scrapped all precompiled/pre-generated code, and recompiled everything. Then, I was unable to reproduce it. Can you: $ svn st --no-ignore | grep ^I | awk '{print $2}' | xargs rm -rf then rebuild, and tell me if you are still able to reproduce the bug? Thanks, Etienne David B=E9langer wrote: > Hi, >=20 > I get this assertion failure with the new staging version: >=20 >=20 >>$HOME/local/sablevm-jit/bin/sablevm-direct-debug -Y a >=20 > sablevm-direct-debug: native_interface.c:1263: > _svmf_internal_CallNonvirtualVoidMethodV: Assertion `_svmf_is_set_flag > (method->class_info->state, 0x0004)' failed. > Abort >=20 >=20 > #6 0x400470d2 in _svmf_internal_CallNonvirtualVoidMethodV > (env=3D0x804d7a8, > this=3D0x8063918, class=3D0x8063398, methodID=3D0x413349e8, > args=3D0xbfffc57c) > at native_interface.c:1262 > #7 0x4006ad54 in NewObject (_env=3D0x804d7a8, cls=3D0x8063398,=20 > methodID=3D0x413349e8) at native_interface.c:23150 > #8 0x413ae5cc in Java_gnu_java_nio_channels_FileChannelImpl_init ( > env=3D0x804d7a8, clazz=3D0x8063398) > at gnu_java_nio_channels_FileChannelImpl.c:139 >=20 >=20 >=20 > It looks that somehow VMClass.setInitialize does not get call for some > unknown reason for a class initialization. >=20 > David >=20 > --- >=20 > David B=E9langer > Graduate Student > School of Computer Science > McGill University > Office: MC226 >=20 > Web page: http://www.cs.mcgill.ca/~dbelan2/ > Public key: http://www.cs.mcgill.ca/~dbelan2/public_key.txt >=20 >=20 >=20 > ------------------------------------------------------- > This SF.net email is sponsored by: The Robotic Monkeys at ThinkGeek > For a limited time only, get FREE Ground shipping on all orders of $35 > or more. Hurry up and shop folks, this offer expires April 30th! > http://www.thinkgeek.com/freeshipping/?cpg=12297 > _______________________________________________ > Sablevm-developer mailing list > Sab...@li... > https://lists.sourceforge.net/lists/listinfo/sablevm-developer >=20 >=20 --=20 Etienne M. Gagnon, Ph.D. http://www.info.uqam.ca/~egagnon/ SableVM: http://www.sablevm.org/ SableCC: http://www.sablecc.org/ |
From: Grzegorz B. P. <ga...@de...> - 2004-04-28 02:42:13
|
Hi everyone, our machine hosting devel.sablevm.org (called, not w/o a reason, "oops") started to have some serious problems last weekend. I let it cool down for 24 hours (by turning it off completly) and after powering up today it worked for a few hours, but now I see it's down again. It is quite possible, that I will NOT try to recover it (especially that I don't have any new idea how to do things better than they are now, besides either giving it a hyper-cooling system that would keep CPU at < 20 degrees or giving it a new, undamaged UltraSparc CPU module). The good news is that since about a week I am working on setting up new server machines. They will supercede oops and SF (yes!) in terms of serving as web servers for *all* our web pages, mailing lists server, and so on... I want it to happen ASAP, but it might take a few extra days, so please be patient. Originally I planed to do all the transition at once, but given the "oops" problems, I am inclined to first transfer the functions of oops and put the new machine on-line, then subsequentialy transfer/setup all of the other services. I'll keep you posted w/ status updates. GBP -- Grzegorz B. Prokopski <ga...@de...> Debian GNU/Linux http://www.debian.org SableVM - LGPLed JVM http://www.sablevm.org Why SableVM ?!? http://devel.sablevm.org/wiki/WhySableVM |
From: David <db...@cs...> - 2004-04-26 03:57:57
|
Hi, I get this assertion failure with the new staging version: > $HOME/local/sablevm-jit/bin/sablevm-direct-debug -Y a sablevm-direct-debug: native_interface.c:1263: _svmf_internal_CallNonvirtualVoidMethodV: Assertion `_svmf_is_set_flag (method->class_info->state, 0x0004)' failed. Abort #6 0x400470d2 in _svmf_internal_CallNonvirtualVoidMethodV (env=3D0x804d7a8, this=3D0x8063918, class=3D0x8063398, methodID=3D0x413349e8, args=3D0xbfffc57c) at native_interface.c:1262 #7 0x4006ad54 in NewObject (_env=3D0x804d7a8, cls=3D0x8063398,=20 methodID=3D0x413349e8) at native_interface.c:23150 #8 0x413ae5cc in Java_gnu_java_nio_channels_FileChannelImpl_init ( env=3D0x804d7a8, clazz=3D0x8063398) at gnu_java_nio_channels_FileChannelImpl.c:139 It looks that somehow VMClass.setInitialize does not get call for some unknown reason for a class initialization. David --- David B=E9langer Graduate Student School of Computer Science McGill University Office: MC226 Web page: http://www.cs.mcgill.ca/~dbelan2/ Public key: http://www.cs.mcgill.ca/~dbelan2/public_key.txt |
From: Kurt R. <Q...@pi...> - 2004-04-25 17:56:52
|
Package: sablevm Version: 1.1.3-1 It currently doesn't seem to have support for amd64. Adding support for it seems mostly adding || defined(__x86_64__) where __i386__ is used, except for system.h where the word/allignment needs to be chagned from 32bit/4byte to 64bit/8byte. I just don't know enough assembler/hardware details for the things in system.c Kurt |
From: Etienne G. <gag...@uq...> - 2004-04-25 16:13:48
|
Package: sablevm Version: 1.1.3-1 Severity: normal Followup-For: Bug #239452 Hi, Seeing this bugreport, I did: $ cvs -d:pserver:ano...@gb...:/usr/local/cvsroot/pgjdbc co pgjdbc $ cd pgjdbc/ $ ##### IMPORTANT ##### $ ## apply patch to build.xml provided below so that jikes finds the bootclasspath $ ##################### $ ant -version Unable to locate tools.jar. Expected to find it in ?/lib/tools.jar Apache Ant version 1.6.1 compiled on March 10 2004 $ java -version SableVM version 1.1.3 - compile date and time: 2004-04-13 01:58:32 UTC - gcc version: 3.3.3 (Debian 20040401) - 'real life brokenness' features enabled - signal based exception detection - copying garbage collection - bidirectional object layout - inline-threaded interpreter $ ant -Dbuild.compiler=jikes Unable to locate tools.jar. Expected to find it in ?/lib/tools.jar Buildfile: build.xml all: prepare: [mkdir] Created dir: /home/egagnon/tmp/pgjdbc/build [mkdir] Created dir: /home/egagnon/tmp/pgjdbc/jars check_versions: check_driver: driver: [copy] Copying 1 file to /home/egagnon/tmp/pgjdbc/org/postgresql [copy] Replacing: @JDBCCONNECTCLASS@ -> org.postgresql.jdbc3.Jdbc3Connection [copy] Replacing: @JDBCCONNECTCLASS@ -> org.postgresql.jdbc3.Jdbc3Connection [copy] Replacing: @JDBCCONNECTCLASS@ -> org.postgresql.jdbc3.Jdbc3Connection [copy] Replacing: @MAJORVERSION@ -> 7 [copy] Replacing: @MINORVERSION@ -> 5 [copy] Replacing: @VERSION@ -> PostgreSQL 7.5devel JDBC3 with NO SSL [copy] Replacing: @DEF_PGPORT@ -> 5432 [copy] Replacing: @SSL@ -> // [copy] Replacing: @SSL@ -> // [copy] Replacing: @SSL@ -> // [copy] Replacing: @SSL@ -> // [copy] Replacing: @SSL@ -> // [copy] Replacing: @SSL@ -> // [copy] Replacing: @SSL@ -> // [copy] Copying 1 file to /home/egagnon/tmp/pgjdbc/org/postgresql/util [copy] Replacing: @NOTJDK14@ -> // [copy] Replacing: @NOTJDK14@ -> // [copy] Replacing: @NOTJDK14@ -> // [copy] Replacing: @NOTJDK14@ -> // [copy] Replacing: @NOTJDK14@ -> // [copy] Replacing: @NOTJDK14@ -> // [copy] Replacing: @NOTJDK14@ -> // [copy] Replacing: @NOTJDK14@ -> // [copy] Replacing: @NOTJDK14@ -> // [copy] Replacing: @NOTJDK14@ -> // [copy] Replacing: @NOTJDK14@ -> // [copy] Replacing: @NOTJDK14@ -> // [copy] Replacing: @NOTJDK14@ -> // [copy] Replacing: @NOTJDK14@ -> // [copy] Replacing: @NOTJDK14@ -> // [copy] Replacing: @NOTJDK14@ -> // [copy] Replacing: @NOTJDK14@ -> // [copy] Replacing: @NOTJDK14@ -> // [copy] Replacing: @NOTJDK14@ -> // [echo] Configured build for the JDBC3 edition driver with NO SSL compile: [javac] Compiling 80 source files to /home/egagnon/tmp/pgjdbc/build examples: [javac] Compiling 8 source files to /home/egagnon/tmp/pgjdbc/build jar: [jar] Building jar: /home/egagnon/tmp/pgjdbc/jars/postgresql.jar [jar] Building jar: /home/egagnon/tmp/pgjdbc/jars/postgresql-examples.jar BUILD SUCCESSFUL Total time: 53 seconds $ ##### IMPORTANT ##### $ ##### Patch below must be applied or some other mechanism should be found to provide $ ##### a bootclasspath to Jikes. $ ##################### $ cvs diff Index: build.xml =================================================================== RCS file: /usr/local/cvsroot/pgjdbc/pgjdbc/build.xml,v retrieving revision 1.44 diff -u -r1.44 build.xml --- build.xml 16 Feb 2004 11:35:20 -0000 1.44 +++ build.xml 25 Apr 2004 15:22:18 -0000 @@ -116,7 +116,7 @@ <available classname="org.postgresql.Driver" property="old.driver.present" /> <fail message="Old driver was detected on classpath or in jre/lib/ext, please remove and try again." if="old.driver.present" /> - <javac classpath="{$srcdir}" srcdir="${srcdir}" destdir="${builddir}" debug="${debug}"> + <javac bootclasspath="/usr/share/sablevm/sablevm-classpath/" classpath="{$srcdir}" srcdir="${srcdir}" destdir="${builddir}" debug="${debug}"> <!-- This is the core of the driver. It is common for all three versions. --> <include name="${package}/*.java" /> <include name="${package}/core/**" /> @@ -275,7 +275,7 @@ <!-- This builds the examples --> <target name="examples" depends="compile"> - <javac srcdir="${srcdir}" destdir="${builddir}" debug="${debug}"> + <javac bootclasspath="/usr/share/sablevm/sablevm-classpath/" srcdir="${srcdir}" destdir="${builddir}" debug="${debug}"> <include name="example/**" /> <exclude name="example/corba/**"/> <exclude name="example/blobtest.java" if="jdbc1"/> @@ -289,7 +289,7 @@ <arg value="stock.idl" /> </exec> - <javac srcdir="${srcdir}" destdir="${builddir}" debug="${debug}"> + <javac bootclasspath="/usr/share/sablevm/sablevm-classpath/" srcdir="${srcdir}" destdir="${builddir}" debug="${debug}"> <include name="example/corba/**" /> </javac> </target> @@ -319,7 +319,7 @@ <!-- This compiles and builds the test jarfile. --> <target name="testjar" depends="jar" if="junit"> <mkdir dir="${builddir}/tests"/> - <javac srcdir="${srcdir}" destdir="${builddir}/tests" debug="${debug}"> + <javac bootclasspath="/usr/share/sablevm/sablevm-classpath/" srcdir="${srcdir}" destdir="${builddir}/tests" debug="${debug}"> <include name="${package}/test/**" /> <exclude name="${package}/test/jdbc2/**" unless="jdbc2tests"/> Have fun! Etienne -- System Information: Debian Release: testing/unstable APT prefers unstable APT policy: (500, 'unstable') Architecture: powerpc (ppc) Kernel: Linux 2.4.24-ben1 Locale: LANG=C, LC_CTYPE=C Versions of packages sablevm depends on: ii java-common 0.22 Base of all Java packages ii libc6 2.3.2.ds1-12 GNU C Library: Shared libraries an ii libpopt0 1.7-4 lib for parsing cmdline parameters ii libsablevm1 1.1.3-1 Free implementation of JVM second ii unzip 5.50-3 De-archiver for .zip files -- no debconf information -- Etienne M. Gagnon, Ph.D. http://www.info.uqam.ca/~egagnon/ SableVM: http://www.sablevm.org/ SableCC: http://www.sablecc.org/ |
From: Thomas Z. <za...@ja...> - 2004-04-22 15:03:22
|
=2D----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On Thursday 22 April 2004 15:37, Arnaud Vandyck wrote: > Thomas Zander <za...@ja...> writes: > > Just FYI: the Java standard is to use 'src'. > > Using a source dir in Eclipse (I have been told) is pretty darn hard, > > it expects 'src' instead. > > Mauve also has it as their 'standard expected dir'. > > Maybe that's why I did want to change from source to src, but i was told > that classpathx standard was source... Ok, then you have to choose between the Java standard (i.e. what most open= =20 source, Java-based projects) and the classpath standard :) See the CVS repositories if you don't simply want to take my word for it: http://jakarta.apache.org/site/cvsindex.html IMOHO src makes more sense; but thats because I grew up with unix (where=20 this is also the standard), to me the odd one out is classpath. Cheers! =2D --=20 Thomas =2D----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.4 (GNU/Linux) iD8DBQFAh952CojCW6H2z/QRAtOaAKCy42D0TE8SJSP07p01jk6HGa8yLQCdGZAP gcpNWeQJL6iCzuG1nodUivA=3D =3DFWlA =2D----END PGP SIGNATURE----- |
From: Arnaud V. <arn...@ul...> - 2004-04-22 13:37:27
|
Thomas Zander <za...@ja...> writes: > Just FYI: the Java standard is to use 'src'. > Using a source dir in Eclipse (I have been told) is pretty darn hard, it > expects 'src' instead. > Mauve also has it as their 'standard expected dir'. Maybe that's why I did want to change from source to src, but i was told that classpathx standard was source... Cheers, -- Arnaud Vandyck < sam> /.ing an issue is like asking an infinite number of monkeys for advice -- in #debian-devel |
From: Thomas Z. <za...@ja...> - 2004-04-22 13:29:54
|
=2D----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Just FYI: the Java standard is to use 'src'. Using a source dir in Eclipse (I have been told) is pretty darn hard, it=20 expects 'src' instead. Mauve also has it as their 'standard expected dir'. On Thursday 22 April 2004 13:52, Arnaud Vandyck wrote: > Hi all! > > I am very sorry and don't ask why I did move the sources of gnujaxp to > 'src' directory (I don't know my self!) > > So now, everything is back in place: sources are back in 'source' > directory. > > 2004-04-22 Arnaud Vandyck <av...@re...> > > * source: sources directory has been moved to source directory, > src has been deleted. Sorry for the inconvenience. =2D --=20 Thomas =2D----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.4 (GNU/Linux) iD8DBQFAh8iICojCW6H2z/QRAtHsAKCOjk4iwQ9Q/b44RzGAvWw3CbFW3wCg2iwx XN+YanJ/hK/nVVsjpkIbB+s=3D =3DWfDy =2D----END PGP SIGNATURE----- |
From: Arnaud V. <arn...@ul...> - 2004-04-22 11:52:28
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi all! I am very sorry and don't ask why I did move the sources of gnujaxp to 'src' directory (I don't know my self!) So now, everything is back in place: sources are back in 'source' directory. 2004-04-22 Arnaud Vandyck <av...@re...> * source: sources directory has been moved to source directory, src has been deleted. Sorry for the inconvenience. - -- Arnaud Vandyck ... but hey, this is Linux, isn't it meant to do infinite loops in 5 seconds? -- Jonathan Oxer in the apt-cacher ChangeLog -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.4 (GNU/Linux) iD8DBQFAh7Ht4vzFZu62tMIRApzRAKCxDqRo0KRaCWvCtuQb5oEQ0Ty57wCeIfIy x2Qnn9yTIdIUL5L+54Z7m2I= =c7VD -----END PGP SIGNATURE----- |
From: Chris P. <chr...@ma...> - 2004-04-22 05:48:44
|
----- Forwarded message from Etienne Gagnon <gag...@uq...> ----- Date: Sun, 18 Apr 2004 13:26:19 -0400 From: Etienne Gagnon <gag...@uq...> Subject: Re: [Sablevm-developer] Re: Sablevm-developer digest, Vol 1 #366 - 11 msgs In-reply-to: <Pin...@at...> To: Fancong Zeng <fz...@cs...> Cc: sab...@li... Errors-to: sab...@li... Organization: UQAM X-Accept-Language: en Precedence: bulk User-Agent: Mozilla/5.0 (X11; U; Linux ppc; en-US; rv:1.6) Gecko/20040402 Debian/1.6-4 X-Spam-Filter: Filtre-Uqam re: ab...@uq... X-Spam-Score: 0.0 (/) X-Spam-Report: Spam Filtering performed by sourceforge.net. See http://spamassassin.org/tag/ for more details. Report problems to http://sf.net/tracker/?func=add&group_id=1&atid=200001 X-BeenThere: sab...@li... X-Mailman-Version: 2.0.9-sf.net X-Original-Date: Sun, 18 Apr 2004 13:26:19 -0400 List-Post: <mailto:sab...@li...> List-Subscribe: <https://lists.sourceforge.net/lists/listinfo/sablevm-developer>, <mailto:sab...@li...?subject=subscribe> List-Unsubscribe: <https://lists.sourceforge.net/lists/listinfo/sablevm-developer>, <mailto:sab...@li...?subject=unsubscribe> List-Archive: <http://sourceforge.net/mailarchive/forum.php?forum=sablevm-developer> List-Help: <mailto:sab...@li...?subject=help> List-Id: SableVM Developer Mailing List <sablevm-developer.lists.sourceforge.net> Fancong Zeng wrote: >I see a motivation to incorporate my work of "Deadlock Resolution via >Exceptions for Dependable Java Applications" into SableVM. Anyone >interested in co-working with me in implementing deadlock exceptions for >SableVM? That would be pretty neat. I don't know, but both Greg P. and Chris P. have touched the code related to locking, a little, and I have written the code. I can't promise much availability, but I can usually answer questions. SableVM's source code is not really cryptic (that's what I hope, at least;-), and you can find information about the locking algorithm in my Ph.D. thesis and the related papers by Bacon and by Onodera. Would you be interested in getting a sandbox in the subversion repository to do your work? [If yes, we'll have to clear up the legal aspects privately; e.g. Are you or is Rutgers U. the copyright holder, and a few little similar details.] Etienne -- Etienne M. Gagnon, Ph.D. http://www.info.uqam.ca/~egagnon/ SableVM: http://www.sablevm.org/ SableCC: http://www.sablecc.org/ ------------------------------------------------------- This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click _______________________________________________ Sablevm-developer mailing list Sab...@li... https://lists.sourceforge.net/lists/listinfo/sablevm-developer ----- End forwarded message ----- |
From: Grzegorz B. P. <ga...@de...> - 2004-04-22 04:53:18
|
On (20/04/04 15:17), David B?langer wrote: > On Tue, Apr 20, 2004 at 04:20:23PM +0200, Fabien Renaud wrote: > > Hello, > > > > I?d like to know why there is a graphical difference between kaffe and > > sableVM when I run the Calc kaffe example ( with awt ) And why the > > application is so pretty with SableVM whereas it?s so awful with kaffe ( > > big red rectangle) > > > > Hi, > > The prettiness is done by the GNU Classpath (CP) library. true (and by GTK+ ;) > Both SableVM and Kaffe use CP [*] [...] NOT TRUE! And I see this statment much too often. Kaffe's classpath is NOT GNU Classpath. GCJ's classpath is NOT GNU Classpath. Each of these projects has its own classpath containing more or less code from GNU CP. [**] Why is this distinction important? Just to get on one of examples I saw. While running ANT 1.5 it creates .jar file using ZIP classes. Now, last time I tried it - it did work w/ Kaffe (and I can suspect it also worked w/ GCJ) but it did not with SableVM. Was that SableVM's fault? NO! The problem that GNU CP zip compression implementation was getting into an infinite loop! So while I *strongly* do NOT want to point to GNU CP hackers as the guilty ones :) I also just can't bear it when people say that "Kaffe, GCJ and SableVM should be able to run pretty much the same apps because they all use GNU Classpath" Agrh! This is NOT true! (unless you accept half-truths as truths) Thank you for your attention, Grzegorz B. Prokopski [*] From the context I assumed you meant GNU CP. [**] Obviously, we've also modified GNU Classpath to make it work with SableVM. But our modifications are truly minimal, unlike the differences between GNU Classpath and classpaths used by Kaffe and GCJ. This is partially because ex.: - GCJ has a lot of GCJ-specific code, which is not useful to other, normal VMs - Kaffe is in the process of switching to GNU CP, but even if it gets there - I don't think we'll be able to say that it "just uses GNU CP", because Kaffe hackers also mix in their classlib a lot of software from different sources. -- Grzegorz B. Prokopski <ga...@de...> Debian GNU/Linux http://www.debian.org SableVM - LGPLed JVM http://www.sablevm.org Why SableVM ?!? http://devel.sablevm.org/wiki/WhySableVM |
From: David <db...@cs...> - 2004-04-22 04:08:06
|
On Wed, Apr 21, 2004 at 04:16:36PM -0400, Fancong Zeng wrote: > > > >=20 > > > > That's it for what I know :) I should mention that when we do fin= d > > > > problems with the implementation and decide on a solution, it's > > > > typically a very small amount of code that must be changed; the > > > > structure is clean and the right hooks are in place. Also Subver= sion > > > > is a joy to work with ;) > > >=20 > > > When will you release SAbleJIT to public? Within 3 months? > >=20 > > I'll let David field that one :) >=20 > I hope to see SABLEJIT soon. >=20 > Fancong=20 >=20 Hi, I am receiving only half the discussion (only emails from Fancong) on this thread. Either their is some delay on the mailing list or people or not CCing it... To address the question on SableJIT, there is currently a development version in the subversion repository. I am currently working on making it easier to build. There could be a release some time soon, I would say within the next few weeks. It will still be a development/testing version but it would be usable. David --- David B=E9langer Graduate Student School of Computer Science McGill University Office: MC226 Web page: http://www.cs.mcgill.ca/~dbelan2/ Public key: http://www.cs.mcgill.ca/~dbelan2/public_key.txt |
From: Fancong Z. <fz...@cs...> - 2004-04-21 20:16:51
|
> > > I put StoreLoad barriers in the right places for x86-PO architectures, > > > and some inline assembly is required for the others. AFAIK, SableVM > > > doesn't treat Java volatiles explicitly, and the easiest / most > > > efficient solution I can see is to use our Soot compiler framework to > > > either supply attributes to SableVM telling it where barriers are > > > needed, or to insert dummy method calls that are recognized by SableVM > > > at runtime and turned into SableVM-specific barrier instructions > > > during code preparation. I haven't heard Etienne comment on these > > > ideas about volatiles though. > > > > I like the idea of using SOOT to add attributes to bytecode, and making > > the > > JVM exploit the attributes at runtime. In general, this is a promising > > direction of integrating static and dynamic analyses. > > You might want to look at Feng Qian's work in our lab on array bounds > check elimination in JikesRVM. I'm using Soot myself for a > speculative multithreading project in SableVM. > > http://www.sable.mcgill.ca I read many papers of you guys. Actually I am considering using SOOT in my current work for Java Deadlocks. If I have questions in using SOOT, can I trouble you guys (maybe via personal communications or another mailing list)? > > > After this, I don't think there will be _too_ many problems with > > > multiprocessors. There have been / still are issues with respect to > > > thread initialization, but I have run several different > > > multithreaded benchmarks on an SMP machine (mtrt, and most of the Java > > > Grande Forum threaded benchmarks). The best is if you try it out for > > > yourself with the applications you're interested in. > > > > I would be more itnersted in running some server programs like Muffine, > > Tomcat, etc. > > I don't know anything about these programs. The best thing is just to > try them. SableVM is now relatively painless to install. > > > > > 3) Accomodating JIT compilers seamlessly. I have some ideas to have > > > > a JIT generate recovery code, and I expect to see the JIT > > > > compilers to be incorporated to (the public version of) SableVM. > > > > > > > > Any comments/information on the three issues I list above? > > > > > > > > > > That's it for what I know :) I should mention that when we do find > > > problems with the implementation and decide on a solution, it's > > > typically a very small amount of code that must be changed; the > > > structure is clean and the right hooks are in place. Also Subversion > > > is a joy to work with ;) > > > > When will you release SAbleJIT to public? Within 3 months? > > I'll let David field that one :) I hope to see SABLEJIT soon. Fancong |
From: Fancong Z. <fz...@cs...> - 2004-04-20 19:56:59
|
> On Tue, Apr 20, 2004 at 10:58:25AM -0400, Fancong Zeng wrote: > > Hi, > > > > I just read your Ph.D. thesis. I like your extension of thin locks. > > Note that the deflation part of Onodera's algorithm could still be > implemented, and also that when releasing a thin lock that was under > contention, while it's not _necessary_ to inflate it, in some > cases it is faster. So, there are still some neat things to be done, > but as to how they affect performance, you'd need a pretty > lock-intensive program to see the benefits. They recently have some idea called "lock reservation" for Java locks. The idea is in OOPSLA'02 and ECOOP'04. > > I am now looking into the SableVM system and I hope SableVM has > > the following features: > > > > 1) Being able to run large real-life sever programs. E.g., Tomcat. > > 2) Supporting true parallelism. This requires kernel-level preemptive > > thread scheduling and SMP support --- I noticed a note about flaws in SMP, > > possible to improve the SMP support? > > You should read Doug Lea's JSR-133 cookbook, for a discussion of how > compiler and VM developers can implement fixes for the Java Memory > Model, which is currently broken. These things affect all VM's. > > http://gee.cs.oswego.edu/dl/jmm/cookbook.html I haven't read the cookbook. Will read it soon. I read some papers by Bill Pugh on JMM. > I put StoreLoad barriers in the right places for x86-PO architectures, > and some inline assembly is required for the others. AFAIK, SableVM > doesn't treat Java volatiles explicitly, and the easiest / most > efficient solution I can see is to use our Soot compiler framework to > either supply attributes to SableVM telling it where barriers are > needed, or to insert dummy method calls that are recognized by SableVM > at runtime and turned into SableVM-specific barrier instructions > during code preparation. I haven't heard Etienne comment on these > ideas about volatiles though. I like the idea of using SOOT to add attributes to bytecode, and making the JVM exploit the attributes at runtime. In general, this is a promising direction of integrating static and dynamic analyses. > After this, I don't think there will be _too_ many problems with > multiprocessors. There have been / still are issues with respect to > thread initialization, but I have run several different > multithreaded benchmarks on an SMP machine (mtrt, and most of the Java > Grande Forum threaded benchmarks). The best is if you try it out for > yourself with the applications you're interested in. I would be more itnersted in running some server programs like Muffine, Tomcat, etc. > > 3) Accomodating JIT compilers seamlessly. I have some ideas to have > > a JIT generate recovery code, and I expect to see the JIT > > compilers to be incorporated to (the public version of) SableVM. > > > > Any comments/information on the three issues I list above? > > > > That's it for what I know :) I should mention that when we do find > problems with the implementation and decide on a solution, it's > typically a very small amount of code that must be changed; the > structure is clean and the right hooks are in place. Also Subversion > is a joy to work with ;) When will you release SAbleJIT to public? Within 3 months? > Cheers, > Chris > Best, Fancong |
From: Grzegorz B. P. <ga...@de...> - 2004-04-20 15:59:29
|
On (19/04/04 11:13), Fabian Renaud wrote: > I want to implement a JVM on a embedded system with QT. Can SableVM do > this without too much problems ? Most probably yes. GNU Classpath which we use does not include QT-peers for AWT, but I am sure you can go and get some of the existing "AWT with QT" solutions to work w/ SableVM. Let us know if you have any specific questions. You migh also be interested in looking at the recent thread on sablevm-user mailing list (see archives) about embedding SableVM. Hope this helps, Grzegorz B. Prokopski PS: Please do not start a new thread by replying to an old message. This question has nothing to do w/ the original thread. Just write a new email To: sablevm-developer <sab...@li...>. Thanks. -- Grzegorz B. Prokopski <ga...@de...> Debian GNU/Linux http://www.debian.org SableVM - LGPLed JVM http://www.sablevm.org Why SableVM ?!? http://devel.sablevm.org/wiki/WhySableVM |
From: Fancong Z. <fz...@cs...> - 2004-04-20 14:58:40
|
Hi, I just read your Ph.D. thesis. I like your extension of thin locks. I am now looking into the SableVM system and I hope SableVM has the following features: 1) Being able to run large real-life sever programs. E.g., Tomcat. 2) Supporting true parallelism. This requires kernel-level preemptive thread scheduling and SMP support --- I noticed a note about flaws in SMP, possible to improve the SMP support? 3) Accomodating JIT compilers seamlessly. I have some ideas to have a JIT generate recovery code, and I expect to see the JIT compilers to be incorporated to (the public version of) SableVM. Any comments/information on the three issues I list above? -- Fancong Zeng Department of Computer Science Rutgers University Piscataway, NJ, 08854 (732)445-6994 http://www.cs.rutgers.edu/~fzeng On Sun, 18 Apr 2004, Etienne Gagnon wrote: > Fancong Zeng wrote: > > I see a motivation to incorporate my work of "Deadlock Resolution via > > Exceptions for Dependable Java Applications" into SableVM. Anyone > > interested in co-working with me in implementing deadlock exceptions for > > SableVM? > > That would be pretty neat. I don't know, but both Greg P. and Chris P. > have touched the code related to locking, a little, and I have written > the code. I can't promise much availability, but I can usually answer > questions. SableVM's source code is not really cryptic (that's what I > hope, at least;-), and you can find information about the locking > algorithm in my Ph.D. thesis and the related papers by Bacon and by > Onodera. > > Would you be interested in getting a sandbox in the subversion repository > to do your work? [If yes, we'll have to clear up the legal aspects privately; > e.g. Are you or is Rutgers U. the copyright holder, and a few little > similar details.] > > Etienne > > -- > Etienne M. Gagnon, Ph.D. http://www.info.uqam.ca/~egagnon/ > SableVM: http://www.sablevm.org/ > SableCC: http://www.sablecc.org/ > |
From: Fabian R. <re...@ne...> - 2004-04-19 09:14:01
|
Hello, I want to implement a JVM on a embedded system with QT. Can SableVM do this without too much problems ? |
From: Etienne G. <gag...@uq...> - 2004-04-18 22:42:38
|
Hi Chris, The can't find classfile[Ljava.lang.Object; puzzles me. Maybe you should ask on the Soot list? Etienne Chris Pickett wrote: > Hi, > > I updated my sablevm-classpath to the version in staging, and also > merged changes from sablevm in staging into my tree. Transforming > classpath now fails, whereas it was working before. > > Attached is the output of > > tofu ~/temp/share/sablevm/sablevm-classpath $ echo HelloWorld \ > >>`cat library_classes` | xargs transform-full > > > where library_classes is a space separated list of all 2665 classpath > classes. It aborts trying to transform [C and [Ljava.lang.Object > (understandably). HelloWorld is there so that Soot has a main class; > it doesn't affect the transformed library. > > What I don't understand is why this fails now, whereas it didn't > before, and whether it's a problem with Soot, Jikes, my code, or > Classpath. Some comments as to what I might try and / or possible > explanations for the above would be greatly appreciated. > > Thanks, > Chris -- Etienne M. Gagnon, Ph.D. http://www.info.uqam.ca/~egagnon/ SableVM: http://www.sablevm.org/ SableCC: http://www.sablecc.org/ |
From: Chris P. <chr...@ma...> - 2004-04-18 20:26:41
|
Hi, I updated my sablevm-classpath to the version in staging, and also merged changes from sablevm in staging into my tree. Transforming classpath now fails, whereas it was working before. Attached is the output of tofu ~/temp/share/sablevm/sablevm-classpath $ echo HelloWorld \ > `cat library_classes` | xargs transform-full where library_classes is a space separated list of all 2665 classpath classes. It aborts trying to transform [C and [Ljava.lang.Object (understandably). HelloWorld is there so that Soot has a main class; it doesn't affect the transformed library. What I don't understand is why this fails now, whereas it didn't before, and whether it's a problem with Soot, Jikes, my code, or Classpath. Some comments as to what I might try and / or possible explanations for the above would be greatly appreciated. Thanks, Chris |
From: Etienne G. <gag...@uq...> - 2004-04-18 18:06:26
|
Clemens Eisserer wrote: > Here's the java-stacktrace: > ... Without code to reproduce the deadlock, we can hardly try to solve the problem. :-( Etienne -- Etienne M. Gagnon, Ph.D. http://www.info.uqam.ca/~egagnon/ SableVM: http://www.sablevm.org/ SableCC: http://www.sablecc.org/ |
From: Etienne G. <gag...@uq...> - 2004-04-18 17:49:25
|
Fancong Zeng wrote: > I see a motivation to incorporate my work of "Deadlock Resolution via > Exceptions for Dependable Java Applications" into SableVM. Anyone > interested in co-working with me in implementing deadlock exceptions for > SableVM? That would be pretty neat. I don't know, but both Greg P. and Chris P. have touched the code related to locking, a little, and I have written the code. I can't promise much availability, but I can usually answer questions. SableVM's source code is not really cryptic (that's what I hope, at least;-), and you can find information about the locking algorithm in my Ph.D. thesis and the related papers by Bacon and by Onodera. Would you be interested in getting a sandbox in the subversion repository to do your work? [If yes, we'll have to clear up the legal aspects privately; e.g. Are you or is Rutgers U. the copyright holder, and a few little similar details.] Etienne -- Etienne M. Gagnon, Ph.D. http://www.info.uqam.ca/~egagnon/ SableVM: http://www.sablevm.org/ SableCC: http://www.sablecc.org/ |
From: Clemens E. <lin...@we...> - 2004-04-15 20:12:20
|
Hi again! >Irrespective of keyboard localization you should still be able to use the >'kill' command to send a signal to a process: eg, "kill -QUIT 12345". > > Here's the java-stacktrace: (VMObject.java:-1) java/lang/VMObject.wait n (Object.java:445) java/lang/Object.wait (MediaTracker.java:297) java/awt/MediaTracker.waitForID (LwToolkit.java:187) org/zaval/lw/LwToolkit.getImage (LwImgSetRender.java:53) org/zaval/lw/LwImgSetRender.<init> (Constructor.java:-1) java/lang/reflect/Constructor.constructNative n (Constructor.java:404) java/lang/reflect/Constructor.newInstance (LwToolkit.java:452) org/zaval/lw/LwToolkit.createObj (LwToolkit.java:488) org/zaval/lw/LwToolkit.loadObjs (LwToolkit.java:848) org/zaval/lw/LwToolkit.startVCL (LwFrame.java:63) org/zaval/lw/LwFrame.<init> (SableTest.java:13) SableTest.<init> (SableTest.java:8) SableTest.main (VirtualMachine.java:-1) java/lang/VirtualMachine.invokeMain n (VirtualMachine.java:88) java/lang/VirtualMachine.main Hope this helps, lg Clemens |
From: Fancong Z. <fz...@cs...> - 2004-04-15 20:12:06
|
I see a motivation to incorporate my work of "Deadlock Resolution via Exceptions for Dependable Java Applications" into SableVM. Anyone interested in co-working with me in implementing deadlock exceptions for SableVM? -- Fancong Zeng Department of Computer Science Rutgers University Piscataway, NJ, 08854 (732)445-6994 http://www.cs.rutgers.edu/~fzeng > Message: 8 > Date: Thu, 15 Apr 2004 12:45:37 -0400 > From: Etienne Gagnon <gag...@uq...> > Organization: UQAM > To: Clemens Eisserer <lin...@we...> > CC: sab...@li... > Subject: Re: [Sablevm-developer] Found deadlock in Class.getConstructor(Class[]).newInstance(Objects[]) > > Hi Clemens, > > SableVM will dump a stack trace during execution when you cause a SIGQUIT > signal. On most systems you do this by pressing Ctrl-\ (Control key and "\" > key together). It gives much more information than a simple gdb stack dump > which does not tell us about the content of the Java stack. > > I you have time, it would be grat if you also sent a minimal complete piece > of code that I could simply "compile and run" to exhibit the problem. > > have fun! > > Etienne > > Clemens Eisserer wrote: > > Hello again! > > > > After reinstalling my whole gtk/gdk/atk/pango rpms your build-system now > > even worked on my system. > > > > I'm trying to use a lightweight gui library called "lwvcl", which is > > based on a swingle awt.component. > > At initialisation it does load some classes via class.forName and does > > some other class-based stuff. > > I think I've found a deadlock in > > Class.getConstructor(Class[]).newInstance(Objects[]). > > > > As you can see with this piece if code several different classes where > > loaded (some of them many times), but suddenly the method hangs when > > > > Here's the classname and the argument-type's list: > > > > So geladen:java.lang.String java.lang.String > > So geladen:java.lang.String java.lang.String > > So geladen:java.lang.String java.lang.String > > So geladen:LwBorder int > > So geladen:LwBorder int > > So geladen:LwBorder int > > So geladen:LwBorder int > > So geladen:LwBorder int > > So geladen:LwBorder int > > So geladen:LwImgSetRender java.lang.String int int int int int > > So geladen:LwImgSetRender java.lang.String int int int int int > > So geladen:LwImgSetRender java.lang.String int int int int int > > So geladen:LwImgSetRender java.lang.String int int int int int > > So geladen:LwImgSetRender java.lang.String int int int int int > > So geladen:LwImgSetRender java.lang.String int int int int int > > So geladen:LwImgSetRender java.lang.String int int int int int > > So geladen:LwImgSetRender java.lang.String int int int int int > > So geladen:LwImgSetRender java.lang.String int int int int int > > <----- Deadlock here > > > > > > I tried to debug it using gdb, but unlike without gdb I get a segfault. > > Here's the stacktrace: > > > > Program received signal SIGSEGV, Segmentation fault. > > [Switching to Thread 16384 (LWP 2897)] > > _svmf_interpreter (_env=0x0) at interpreter.c:266 > > 266 _svmt_method_info *method = frame->method; > > (gdb) bt > > #0 _svmf_interpreter (_env=0x0) at interpreter.c:266 > > #1 0x40083491 in JNI_CreateJavaVM (pvm=0xbffff1e0, penv=0xbffff1e4, > > _vm_args=0xbffff1f0) at invoke_interface.c:293 > > #2 0x08049e68 in main (argc=0, argv=0x0) at sablevm.c:1351 > > > > > > And here's the method of the gui library that calls the deadlock-method: > > > > /** > > * Creates an instance of the specified class using appropriate > > constructor for the given input arguments list. > > * The list is set of arguments that are separated by the comma. The > > following arguments types can be > > * used: > > * <ul> > > * <li>Integer. If the argument does not equal "true" or "false" and > > is not bound by quotes.</li> > > * <li>Boolean. If the argument equals "true" or "false" and is not > > bound by quotes.</li> > > * <li>String. If the argument is not bound by quote.</li> > > * </ul> > > * @param <code>className</code> the specified class name. > > * @param <code>argsStr</code> the specified input arguments list. The > > argument can be <code>null</code>. > > * In this case the default constructor will be used to create the class > > instance. > > * @return an instance of the class. > > */ > > public static Object createObj(String className, String argsStr) > > throws Exception > > { > > if (className.indexOf ('@') == 0) return > > getStaticObj(className.substring(1)); > > else > > { > > Class classInstance = > > Class.forName(className.indexOf('.')>0?className:PACKAGE_NAME + className); > > Object objInstance = null; > > if (argsStr == null) > > { > > objInstance = classInstance.newInstance(); > > } > > else > > { > > StringTokenizer args = new StringTokenizer(argsStr, ","); > > Class[] argsTypes = new Class [args.countTokens()]; > > Object[] argsValues = new Object[argsTypes.length]; > > for (int j = 0; args.hasMoreTokens(); j++) > > { > > String arg = args.nextToken().trim(); > > if (arg.indexOf('\"')==0) > > { > > argsTypes [j] = String.class; > > argsValues[j] = arg.substring(1, arg.length() - 1); > > } > > else > > if (arg.equals("true") || arg.equals("false")) > > { > > argsTypes [j] = Boolean.TYPE; > > argsValues[j] = new Boolean(arg); > > } > > else > > if (arg.indexOf('@') == 0) > > { > > argsValues[j] = getStaticObj(arg.substring(1)); > > argsTypes [j] = argsValues[j].getClass(); > > } > > else > > { > > argsTypes [j] = Integer.TYPE; > > argsValues[j] = new Integer(arg); > > } > > } > > System.out.print("So geladen:"+className); > > for(int i=0; i < argsTypes.length; i++) > > { > > System.out.print(" "+argsTypes[i].getName()); > > } > > System.out.println(); > > objInstance = > > classInstance.getConstructor(argsTypes).newInstance(argsValues); > > } > > return objInstance; > > } > > } > > > > > > Maby this code isn't written well, however it works even with the > > Microsoft-JVM ;-) > > > > Hope this helped, lg Linuxhippy > > |