From owner-freebsd-java Sun Jun 20 4:56:52 1999 Delivered-To: freebsd-java@freebsd.org Received: from lab321.ru (anonymous1.omsk.net.ru [62.76.128.34]) by hub.freebsd.org (Postfix) with ESMTP id B635D14D54 for ; Sun, 20 Jun 1999 04:56:30 -0700 (PDT) (envelope-from kev@lab321.ru) Received: from www.lab321.ru (kev@www.lab321.ru [62.76.129.65]) by lab321.ru (8.9.3/8.9.3) with ESMTP id SAA25544; Sun, 20 Jun 1999 18:53:10 +0700 (OSS) Date: Sun, 20 Jun 1999 18:53:10 +0700 (OSS) From: Eugeny Kuzakov To: "Mark J. Sommer" Cc: java@FreeBSD.ORG Subject: Re: Visual Age for Java for Linux In-Reply-To: <199906191520.JAA09239@argotsoft.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-java@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org On Sat, 19 Jun 1999, Mark J. Sommer wrote: > Have you tried brand_elf on the ide program? Yes. But it not required really. > > VisualAge for Java, Version 2.0,(NC) 5/20/99 > > Copyright (C) 1991-1998 International Business Machines Corporation. > > > > A recursive error has occurred. > > A recursive error has occurred. -- Best wishes, Eugeny Kuzakov Laboratory 321 ( Omsk, Russia ) kev@lab321.ru ICQ#: 5885106 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-java" in the body of the message From owner-freebsd-java Sun Jun 20 16:11:16 1999 Delivered-To: freebsd-java@freebsd.org Received: from voicenet.com (mail12.voicenet.com [207.103.0.6]) by hub.freebsd.org (Postfix) with SMTP id 6267015217 for ; Sun, 20 Jun 1999 16:11:11 -0700 (PDT) (envelope-from gatgul@voicenet.com) Received: (qmail 19707 invoked from network); 20 Jun 1999 23:11:07 -0000 Received: from dialpool0822-pri.voicenet.com (HELO voicenet.com) (209.71.86.215) by mail12.voicenet.com with SMTP; 20 Jun 1999 23:11:07 -0000 Message-ID: <376D7508.B09894F4@voicenet.com> Date: Sun, 20 Jun 1999 19:11:04 -0400 From: Uncle George Organization: Big Endian X-Mailer: Mozilla 4.07 [en] (X11; I; Linux 2.0.36 i686) MIME-Version: 1.0 To: Jeff Galyan Cc: java-linux@java.blackdown.org, java@freebsd.org, axp-list@redhat.com Subject: Re: [off-topic] stop bashing! References: <199906171425.HAA10515@shell.accesscom.com> <376A353F.AD76951F@voicenet.com> <376C3667.4AD168F1@anamorphic.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-freebsd-java@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org Actually i pay attention quite well, and observe quite well. The example(s) that i have presented to u dont seem to impress u at all. I am very sorry for u. Can I presume that u havent looked at the diffs provided by the java-linux-porting folks. I guess u'd be perplexed with the modest '.java' changes, of which u say could not happen. Before u stated that changing the core api was prohibited, now u state all of '.java' is encompassed in the edict. oh well, we all cant be consistent in our convictions. I am not a company. Nor a commercial entity. I just port the java linux JDK on the Digital Alpha computers. Since u are unable to state what a reasonable fee would be to provide the Alpha linux community with a fairly complete and working JDK, I am also unable to do so. Since Non-commercial licensing for JDK1.2 is curerntly not available, The alpha-linux port for JDK1.2 will cease after my non-commercial license expires. I am also sorry u dont care enough for the other linux communities. I'm sorry u dont understant these porting issues. A 64 bit address just cant (be returned and ) fit into a 32bit java int. gat Sorry about my improper english. i guess that sorta explains why u are unable to comprehend my socratic quiries. BTW, there is really no need to read the community license. I do not forsee myself paying for the JCK, nor do I forsee myself paying for a distribution license Just to be a good linux citizen. Maybe, eventually, u'd realize that Sun's support of the (entire) linux community is at best a form of propaganda, at worst a form of verbal placation. Jeff Galyan wrote: > First off, this business of replacing "you" with "u" is really annoying. > Please use proper English in your posts. > > Secondly, you do NOT have to change the .java files, and such changing > is *strictly prohibited* by Sun in both the commercial and community > source licenses. You are simply *never* to modify the .java files. > Period. > > How you represent an int data type internally to the JVM is your > business. That's platform-dependent code which you are allowed to modify > - NOT .java code. You are ONLY permitted to modify C/C++ source files in > porting Java to other platforms. PERIOD. So, if you want to be able to > store a 64-bit value in a 32-bit int (why you wouldn't use a double or a > long to do that is beyond me, since those data types already have the > capacity for it on all platforms), you would modify the C or C++ header > file that defines the types on your system, so that the internal storage > of ints became 64-bits. You DO NOT do it in the .java source files for > the core Java libraries, which your license specifically prohibits > modifying in ANY way. > > As far as fees go, why are you so concerned about whether Sun charges > your company a fee to distribute your port of Java? How else do you > expect Sun to be able to have any control over cross-platform > compatibility otherwise? You've already said that you modify the sources > to the core Java libraries for your own amusement, so why are you so > insistent that Sun somehow "owes" you a free license to distribute > something that may not even pass the JCK? > > You need to re-read the SCSL again and again and again, as many times as > it takes for you to finally actually understand what it says. Then, if > you still think that Sun owes you a free license to distribute, you can > contact Sun. I'm tired of trying to explain this to you; you're not > paying attention to any of it. > > Uncle George wrote: > > > > Jeff Galyan wrote: > > > > > Actually, you don't need to modify the .java files, and in fact, modifying the .java files is strictly prohibited in the license (as such modifications could potentially be misconstrued by the licensee as permission to change the apis). The license does permit personal use of your own port. If you are a company doing the port for your company's use, rather than you as an individual porting for your own personal use, then you are correct in your interpretation of the license. You would be required to pass the JCK and pay a license fee, etc. As an individual, you would not have to do this unless you intended to release your port over the Internet, on CDROM, or otherwise "distribute" it. > > > > Actually u do have to change the '.java' files ( simply for practicable convience ). Having extensive experience in porting sun's JDK, I find it rather difficult to store 64bits into a 32bit java int. Maybe u can review the java-linux-porting diffs of their 1.2 port. I'd like to know, for example, how the solaris printer 'queue' switches was changed to be compatable with linux printer 'queue' commands. > > There are many ways in which u can program in order to not change the '.java' files. There are also many ways u can program so u dont have to change the '.c'/'c++'/'.s' files. To an extreme, u dont even have to do a port, just build an i86 emulator, or a solaris emulator. > > > > Cant imagine why anyone would attempt to bother to port to a foreign machine, just so u can use it at home. Probably along the same reasons as why one would write a book, and only publish it just for yourself, for ur own personal reading. > > > > > > > > > > > Now, I'm not a lawyer, nor am I in charge of licenses for Sun, but I'm sure they would be willing to work out a fair license fee for an individual who wanted to distribute their port. You would still be required to pass the JCK before you could distribute, though. > > > > I believe thats what they do now. Jck not so free, and distribution not so free, as i stated twice before. What would a fair license fee be, if u dont mind me asking, for my Linux/Redhat/Alpha of the Sun JDK port be ? And what if it become an impossible port because the JCK is skewed towards 32bit excentricity's ( as per JCK, u may not change it at all ) > > > > > > > > > > > Back to modifying the .java files - the only modifications you should ever need to make (even for the .java files that call native methods) is in the .c, .cpp and .s (asm) files. The header files for the native VM code is where you would want to make your changes for internal type representation (i.e., is a long a 64-bit value, or is an int a 64-bit value kinds of things). Any mapping between native types and Java types is handled by jni_md.h for purposes of JNI. If you can think of good reasons why you would absolutely have to change the .java files, then you may want to bring that up to Sun. I personally can't think of any reason to change the .java files at all unless you were adding new methods or otherwise changing the apis - which results in a version of the Java core apis which depends on one specific port of the VM. Again, that is strictly prohibited by the license. > > > > Say take the address of an X window, X gives back a long/64bit address/reference value. u pass it back to '.java' . ur unmodifiable '.java' expects an int which is 32 bits. This mapping is for 'like' types. Getting truncated longs, is just a part of java life on an alpha. > > There is no reason to change the API's, if they are not system/os specific. Having to change/alter the API's on a per OS would also violate the notion of write once, run everywhere concept. There is a set of win32 '.java" files to interface to the win32 native functions. There is also a set of solaris "unix" '.java' files to interface to the solaris unix native functions. Porting would mean altering the solaris unix '.java' files to be linux unix '.java' files, and the same for os specific native functions. > > My heart also goes out to ibm's as400 porting folks who have 48 byte ( i thinks its bytes ) addresses. I reported the problems of 64bit addresses to the bug list, as well as this one that IBM has submitted. > > > > > > > > > > > So, the "free for personal use" hasn't been thrown out the window. > > > > I believe it effectively has been thrown out the window. Ur not allowed to share (distribute ) ur personal efforts with others for personal uses. With the Non-commercial licence, one was able to 'restrictivly' distribute ur efforts. This is still true with JDK1.1.x, but no longer with JDK 1.2.x. > > > > > It's just that the language of the license is a little obtuse (but lawyers tend to write that way > > -- > Jeff Galyan > http://www.anamorphic.com > http://www.sun.com > jeffrey dot galyan at sun dot com > talisman at anamorphic dot com > Sun Certified Java(TM) Programmer > ====================================================================== > Linus Torvalds on Microsoft and software development: > "... if it's a hobby for me and a job for you, why are you doing such a > shoddy job of it?" > > The views expressed herein do not necessarily reflect those of my > employer. > > Sun Microsystems, Inc., has no connection to my involvement with the > Mozilla Organization. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-java" in the body of the message From owner-freebsd-java Sun Jun 20 20:10:36 1999 Delivered-To: freebsd-java@freebsd.org Received: from lab321.ru (anonymous1.omsk.net.ru [62.76.128.34]) by hub.freebsd.org (Postfix) with ESMTP id 1966714D2D for ; Sun, 20 Jun 1999 20:10:22 -0700 (PDT) (envelope-from kev@lab321.ru) Received: (from kev@localhost) by lab321.ru (8.9.3/8.9.3) id KAA26411; Mon, 21 Jun 1999 10:10:13 +0700 (OSS) Date: Mon, 21 Jun 1999 10:10:13 +0700 (OSS) From: Eugeny Kuzakov Message-Id: <199906210310.KAA26411@lab321.ru> To: Lars Albertsen , java@freebsd.org Subject: Re: Visual Age for Java for Linux X-Newsgroups: local.maillist.FreeBSD.freebsd-java In-Reply-To: <7kgm9d$9k4$1@lab321.ru> Organization: CoreDumped Technologies Ltd. MIME-Version: 1.0 Content-Type: text/plain; charset=koi8-r Content-Transfer-Encoding: 8bit Sender: owner-freebsd-java@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org χΩ ΠΙΣΑΜΙ: > Hi, > If you look on the Visual Age newsgroup (at news.software.ibm.com) you will see that > some people have reported the same problem running on RedHat 5.2. & 6.0, so I don't > think it's a FreeBSD problem... but it would be nice if the problemwas solved... We are tryed to run VAJ under Debian 2.0. w/o any problems. Works fine! -- Best wishes, Eugeny http://coredumped.null.ru CoreDumped@CoreDumped.null.ru ICQ#: 5885106 --------- Begathon, n.: A multi-day event on public television, used to raise money so you won't have to watch commercials. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-java" in the body of the message From owner-freebsd-java Mon Jun 21 22:55:48 1999 Delivered-To: freebsd-java@freebsd.org Received: from sax.sax.de (sax.sax.de [193.175.26.33]) by hub.freebsd.org (Postfix) with ESMTP id C5958151F8 for ; Mon, 21 Jun 1999 22:55:37 -0700 (PDT) (envelope-from java@ak.sax.de) Received: (from uucp@localhost) by sax.sax.de (8.8.8/8.8.8) with UUCP id TAA07130 for java@freebsd.org; Mon, 21 Jun 1999 19:34:14 +0200 (CEST) (envelope-from java@ak.sax.de) Received: (from java@localhost) by ak.sax.de (8.8.8/8.8.8) id RAA00462 for java@freebsd.org; Mon, 21 Jun 1999 17:08:30 +0200 From: Albrecht Kleine Message-Id: <199906211508.RAA00462@ak.sax.de> Subject: Re: TYA mail #2 (fwd) To: java@freebsd.org Date: Mon, 21 Jun 1999 17:08:30 +0200 (MEST) X-Mailer: ELM [version 2.4ME+ PL47 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Status: RO Sender: owner-freebsd-java@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org Hi, Alexander V. Romanyuk and Nicolas Niclausse reminded me of a forgotten underscore needed for a.out systems only. So here goes the patch now for all of you. TNX! TNX! Cheers Albrecht --- tyaasm_FreeBSD.S.orig Mon Jun 21 14:26:00 1999 +++ tyaasm_FreeBSD.S Mon Jun 21 14:18:40 1999 @@ -297,7 +297,7 @@ movl %ebp,%esp // discard caller's C stack frame popl %ebp // for access to stack pointer #endif - call EE + call _EE pushl _StOvExc // params for ExecExcep pushl %eax jmp SEH1 // exc is not catchable inside method To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-java" in the body of the message From owner-freebsd-java Tue Jun 22 3:34:40 1999 Delivered-To: freebsd-java@freebsd.org Received: from rc1.vub.ac.be (rc1.vub.ac.be [134.184.129.1]) by hub.freebsd.org (Postfix) with ESMTP id B816F14BB8; Tue, 22 Jun 1999 03:34:36 -0700 (PDT) (envelope-from jdricot@ulb.ac.be) Received: from mach.vub.ac.be (mach.vub.ac.be [134.184.129.3]) by rc1.vub.ac.be (8.8.8/%I%.0.ap (rc1)) id MAA03678; Tue, 22 Jun 1999 12:34:09 +0200 (MET DST) for Received: from ulb.ac.be (ppp-dial139.ulb.ac.be [164.15.246.139]) by mach.vub.ac.be (8.8.8+Sun/%I%.1.ap (mach.test)) id MAA01033; Tue, 22 Jun 1999 12:34:32 +0200 (MET DST) for Message-ID: <376F5A77.34983A5B@ulb.ac.be> Date: Tue, 22 Jun 1999 11:42:15 +0200 From: Jean-Michel DRICOT Organization: ULB - Ecole Polytechnique X-Mailer: Mozilla 4.07 [en] (X11; I; FreeBSD 3.1-RELEASE i386) MIME-Version: 1.0 To: Java Port FreeBSD , java@freebsd.org Subject: Comm API: development proposal Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-freebsd-java@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org I dowloaded last week JAVA's Comm API on SUN's site, because I needed Serial & Parallel port functions under JAVA. As always for that kind of API, I looked after the machine-specific JNI interfaces & drivers and found one for Linux but none for FreeBSD. Is there actually a project about the porting of this API ? If not, I'd like to build my own driver from scratch or try to port the Linux JNI to FreeBSD and make it available for the whole FreeBSD community. A friend of mine is also very interested in that project and he's a rather high skill developper in Linux. My porting team is complete :-) . Drop me a line if you'e interested in that project Jim ________________________________________________________________________ "Unix IS user friendly. It's just selective about who it's friends are." Dricot Jean-Michel 3rd year study in Computer & MicroElectronic Engineering Polytechnic School Free University of Brussels (ULB) URL: http://student.ulb.ac.be/~jdricot e-mail: jdricot@ulb.ac.be To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-java" in the body of the message From owner-freebsd-java Tue Jun 22 9:53:33 1999 Delivered-To: freebsd-java@freebsd.org Received: from ad1440.net (adl440.net [209.67.105.192]) by hub.freebsd.org (Postfix) with ESMTP id 19859154DB for ; Tue, 22 Jun 1999 09:53:25 -0700 (PDT) (envelope-from kelly@ad1440.net) Received: from ad1440.net (03-114.028.popsite.net [198.79.104.114]) by ad1440.net (8.8.8/8.8.8) with ESMTP id JAA03831; Tue, 22 Jun 1999 09:53:20 -0700 Message-ID: <376FBF53.820C6C28@ad1440.net> Date: Tue, 22 Jun 1999 09:52:35 -0700 From: Sean Kelly Organization: Software Engineering - Available for Hire X-Mailer: Mozilla 4.51 [en] (Win95; I) X-Accept-Language: en MIME-Version: 1.0 To: Jean-Michel DRICOT Cc: java@FreeBSD.ORG Subject: Re: Comm API: development proposal References: <376F5A77.34983A5B@ulb.ac.be> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-freebsd-java@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org > Is there actually a project about the porting of this API ? The Comm API? Not currently. There is a commercial product, however, that provides the Comm API for FreeBSD. See http://www.sc-systems.com/ for more information. > If not, I'd like to build my own driver from scratch or try to port the > Linux JNI to FreeBSD and make it available for the whole FreeBSD > community. That'd be great! Take care. --Sean To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-java" in the body of the message From owner-freebsd-java Tue Jun 22 11:32:34 1999 Delivered-To: freebsd-java@freebsd.org Received: from kitsune.swcp.com (swcp.com [198.59.115.2]) by hub.freebsd.org (Postfix) with ESMTP id 428F014D4D; Tue, 22 Jun 1999 11:32:28 -0700 (PDT) (envelope-from msommer@argotsoft.com) Received: from argotsoft.com (argotsoft.com [198.59.115.127]) by kitsune.swcp.com (8.8.8/1.2.3) with ESMTP id JAA25294; Tue, 22 Jun 1999 09:15:10 -0600 (MDT) Received: (from msommer@localhost) by argotsoft.com (8.8.8/8.8.7) id JAA04157; Tue, 22 Jun 1999 09:13:04 -0600 (MDT) (envelope-from msommer) From: "Mark J. Sommer" Message-Id: <199906221513.JAA04157@argotsoft.com> Subject: Re: Comm API: development proposal In-Reply-To: <376F5A77.34983A5B@ulb.ac.be> from Jean-Michel DRICOT at "Jun 22, 99 11:42:15 am" To: jdricot@ulb.ac.be (Jean-Michel DRICOT) Date: Tue, 22 Jun 1999 09:13:04 -0600 (MDT) Cc: java-port@FreeBSD.ORG, java@FreeBSD.ORG X-Mailer: ELM [version 2.4ME+ PL32 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-freebsd-java@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org Have you looked at Central Data's portio package? Not sure of the web address, but it should work. Haven't tried it on FreeBSD yet, but intend to soon. Its serial I/O as far as I know. > I dowloaded last week JAVA's Comm API on SUN's site, because I needed > Serial & Parallel port functions under JAVA. > As always for that kind of API, I looked after the machine-specific JNI > interfaces & drivers and found one for Linux but none for FreeBSD. > > Is there actually a project about the porting of this API ? > > If not, I'd like to build my own driver from scratch or try to port the > Linux JNI to FreeBSD and make it available for the whole FreeBSD > community. > A friend of mine is also very interested in that project and he's a > rather high skill developper in Linux. > > My porting team is complete :-) . Drop me a line if you'e interested in > that project > > Jim > ________________________________________________________________________ > > "Unix IS user friendly. It's just selective about who it's friends are." > > Dricot Jean-Michel > 3rd year study in Computer & MicroElectronic Engineering > Polytechnic School > Free University of Brussels (ULB) > > URL: http://student.ulb.ac.be/~jdricot > e-mail: jdricot@ulb.ac.be > > > > > > To Unsubscribe: send mail to majordomo@FreeBSD.org > with "unsubscribe freebsd-java" in the body of the message > ~Mark -------------------------------------------------------------------------------- Mark J. Sommer ARGOT Software Corporation, P.O. Box 92020, Albuquerque, New Mexico 87199-2020 FAX: 505-771-0274 PHONE: 505-867-6750 E-MAIL: msommer@argotsoft.com To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-java" in the body of the message From owner-freebsd-java Tue Jun 22 12:36:14 1999 Delivered-To: freebsd-java@freebsd.org Received: from daffodil.csv.warwick.ac.uk (daffodil.csv.warwick.ac.uk [137.205.192.30]) by hub.freebsd.org (Postfix) with ESMTP id 8C84B15688 for ; Tue, 22 Jun 1999 12:35:49 -0700 (PDT) (envelope-from csubl@csv.warwick.ac.uk) Received: from primrose.csv.warwick.ac.uk (csubl@primrose [137.205.192.26]) by daffodil.csv.warwick.ac.uk (8.9.3/8.9.3) with ESMTP id UAA26803 for ; Tue, 22 Jun 1999 20:35:48 +0100 (BST) Received: (from csubl@localhost) by primrose.csv.warwick.ac.uk (8.9.3/8.9.3) id UAA05603 for freebsd-java@freebsd.org; Tue, 22 Jun 1999 20:35:47 +0100 (BST) From: Mr M P Searle Message-Id: <199906221935.UAA05603@primrose.csv.warwick.ac.uk> Subject: subscribe To: freebsd-java@freebsd.org Date: Tue, 22 Jun 1999 20:35:47 +0100 (BST) X-Mailer: ELM [version 2.4ME+ PL31 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-freebsd-java@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org subscribe To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-java" in the body of the message From owner-freebsd-java Tue Jun 22 15:49:19 1999 Delivered-To: freebsd-java@freebsd.org Received: from respondhere.net (unknown [209.185.190.6]) by hub.freebsd.org (Postfix) with ESMTP id E6F701549D; Tue, 22 Jun 1999 15:49:03 -0700 (PDT) (envelope-from lexington@email.com) Received: from email.com [38.26.24.90] by respondhere.net (SMTPD32-5.00) id A2F1E50162; Tue, 22 Jun 1999 18:49:21 EDT From: Subject: Executive NewsLetter Date: Tue, 22 Jun 1999 18:48:29 Message-Id: <610.682841.734274@unknown> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-freebsd-java@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org Dear Candidate, You were recently appointed by The Office of the Managing Directors for a free listing in the Millenium Edition of Lexington Publishing Who's Who Directory. Please fill out the form provided at our web site below. http://www.lexingtonwhoswho.net As a highly respected professional in your field of expertise, we believe your contribution merit very seriously consideration for inclusion in The Lexington Publishing Who's Who Directory. To maintain the level of accuracy, we ask you to click on the web address highlighted below and fill out the brief bit of information required for inclusion. http://www.lexingtonwhoswho.net There is no cost or obligation to be listed in The Lexington Publishing Who's Who Directory. All applicants will receive free listing compliments of Lexington Publishing Who's Who. Sincere thanks, Lisa Narod Office of Public Affairs For accuracy and publication purposes, we need you to complete and email this form at your earliest opportunity. There is no cost or obligation to update or submit your biographical data. IF you no longer wish to receive our Exclusive Newsletter containing critical updates to your Career data and other offers from Lexington Who's Who simply goto the following website to be removed. http://www.lexingtonwhoswho.net/remove.htm To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-java" in the body of the message From owner-freebsd-java Thu Jun 24 17: 9:58 1999 Delivered-To: freebsd-java@freebsd.org Received: from e4-0-3-wcdc-paymentnet2.digisle.net (e4-0-3-wcdc-paymentnet2.digisle.net [167.216.151.94]) by hub.freebsd.org (Postfix) with SMTP id ECB78154FC; Thu, 24 Jun 1999 17:09:49 -0700 (PDT) (envelope-from sheller@PaymentNet.com) Received: from mail.paymentnet.com by e4-0-3-wcdc-paymentnet2.digisle.net via smtpd (for hub.FreeBSD.ORG [204.216.27.18]) with SMTP; 25 Jun 1999 00:14:42 UT Received: by mail.paymentnet.com with Internet Mail Service (5.5.2232.9) id ; Thu, 24 Jun 1999 17:03:37 -0700 Message-ID: <1B1A79237E23D21181B4006008280032497A7A@mail.paymentnet.com> From: Steve Heller To: "'freebsd-gnats-submit@freebsd.org'" , Steve Heller Cc: "'freebsd-java@freebsd.org'" Subject: Re: i386/12286: Segmentation violation when invoking JNI call to C from Java with PTHREADS Date: Thu, 24 Jun 1999 17:03:37 -0700 MIME-Version: 1.0 X-Mailer: Internet Mail Service (5.5.2232.9) Content-Type: text/plain; charset="iso-8859-1" Sender: owner-freebsd-java@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org Ok, I have done some more investigation into this. I think there may be some problem in the mutual exclusion/locking in the kernel (since I think that is where the call to _thread_sys_connect() resolves to as I cannot find it anywhere in the libraries): 1) I pulled down the source for stable, which I thought was 3.2 STABLE, which had a date of 5/18/99 from the ftp site. Then I did a make world and reboot, and noticed that uname still shows 3.1 RELEASE, but the problem changed to an indication of an illegal instruction with JNI and multi-threading. 2) Then I reviewed the freebsd-stable mailing list, and found that on 6/22/99, there was a message about thread patches since the thread libraries in stable's libc_r were broken. This indicated a replacement at: ftp://ftp.pcnet.com/users/eischen/FreeBSD/uthread.tgz (I renamed this file to uthread.tar.gz, then did tar xvzf on it). I pulled this file down and rebuilt libc_r and copied it to /usr/lib, after placing some debug printf statements in uthread_connect.c to make sure its version of connect was being called (it was). The result is that when I use multithreading and make calls to socket(), connect(), shutdown() and read(), without using JNI, everything works fine. But when I make calls to socket(), connect(), shutdown() and read() through JNI, I get the same error that I originally reported. For the case of connect(), I changed calls to socket() to _thread_sys_socket() and shutdown() to _thread_sys_shutdown(), and added debug printf's to the connect code, and ran it. From the debug output, it made it past the _FD_LOCK() call, but not past the _thread_sys_connect() call before the Abort trap - core dumped message. Following is 1) the uthread_connect.c source code with debug printf's, and 2) the debug output when the problem occurred with JNI: 1) Here is my version of the uthread_connect.c source code with debug printf's: #include #include #include #include #ifdef _THREAD_SAFE #include #include "pthread_private.h" int connect(int fd, const struct sockaddr * name, int namelen) { struct sockaddr tmpname; int errnolen, ret, tmpnamelen; printf("libc_r connect: Entered...\n"); if ((ret = _FD_LOCK(fd, FD_RDWR, NULL)) == 0) { printf("libc_r connect: After _FD_LOCK()...\n"); if ((ret = _thread_sys_connect(fd, name, namelen)) < 0) { printf("libc_r connect: After _thread_sys_connect()...\n"); if (!(_thread_fd_table[fd]->flags & O_NONBLOCK) && ((errno == EWOULDBLOCK) || (errno == EINPROGRESS) || (errno == EALREADY) || (errno == EAGAIN))) { printf("libc_r connect: After _thread_fd_table()...\n"); _thread_run->data.fd.fd = fd; /* Set the timeout: */ _thread_kern_set_timeout(NULL); _thread_kern_sched_state(PS_FDW_WAIT, __FILE__, __LINE__); tmpnamelen = sizeof(tmpname); /* 0 now lets see if it really worked */ if (((ret = _thread_sys_getpeername(fd, &tmpname , &tmpnamelen)) < 0) && (errno == ENOTCONN)) { /* * Get the error, this function * should not fail */ errnolen = sizeof(errno); _thread_sys_getsockopt(fd, SOL_SOCKET, S O_ERROR, &errno, &errnolen); } } else { ret = -1; } } _FD_UNLOCK(fd, FD_RDWR); } printf("libc_r connect: Exiting...\n"); return (ret); } #endif 2) Here is the corresponding debug output: (cd jni; java pntransjava 167.216.177.37 443 "TRXTYPE=S&TENDER=C&PWD=g0edel1685& USER=pnprodtest&ACCT=5105105105105100&EXPDATE=1299&AMT=27.33" 30; cd ..) SIGSEGV 11* segmentation violation Full thread dump: "Finalizer thread" (TID:0x28454210, sys_thread_t:0x29258f00, state:R) prio=1 "Async Garbage Collector" (TID:0x28454258, sys_thread_t:0x29237f00, state:R) prio=1 "Idle thread" (TID:0x284542a0, sys_thread_t:0x29216f00, state:R) prio=0 "Clock" (TID:0x28454088, sys_thread_t:0x291f5f00, state:CW) prio=12 "main" (TID:0x284540b0, sys_thread_t:0x8067700, state:R) prio=5 *current thr ead* pntransjava.main(pntransjava.java:59) Monitor Cache Dump: Registered Monitor Dump: Thread queue lock: Name and type hash table lock: String intern lock: JNI pinning lock: JNI global reference lock: BinClass lock: Class loading lock: Java stack lock: Code rewrite lock: Heap lock: Has finalization queue lock: Finalize me queue lock: Monitor IO lock: Child death monitor: Event monitor: I/O monitor: Alarm monitor: Waiting to be notified: "Clock" (0x291f5f00) Memory allocation lock: Monitor registry: owner "main" (0x8067700, 1 entry) Thread Alarm Q: ProcessPNTransaction() entered... About to call CommonProcessTransaction()... CommonProcessTransaction() entered... About to call inet_addr()... Returned from call to inet_addr()... ipaddr: 632412327... sock:7 finish setsockopt call connect. libc_r connect: Entered... libc_r connect: After _FD_LOCK()... Abort trap - core dumped *** Error code 134 Stop. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-java" in the body of the message