delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2006/01/26/09:34:57

X-Spam-Check-By: sourceware.org
Message-ID: <43D8DE02.4050407@andxor.it>
Date: Thu, 26 Jan 2006 15:34:42 +0100
From: Lapo Luchini <l DOT luchini AT andxor DOT it>
User-Agent: Thunderbird 1.5 (X11/20060112)
MIME-Version: 1.0
To: cygwin AT cygwin DOT com, Alessandro Premoli <a DOT premoli AT andxor DOT it>
Subject: Java and Cygwin: a difficult relation
OpenPGP: id=15046F78
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

--------------ms080405070108050805060908
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

In the company I and Alessandro (in cc) work for there is a Java
application that uses gamin in order to receive file alteration events.
Main development platform is FreeBSD and, as gamin has no pure-Java
client available, we used a smallish JNI wrapper around the libgamin
client; it works flawlessly.

The problem is now, of course, to do it all on Windows.
gamin seems to compile and work, on cygwin, with a few patches; this
seemed to be the hard part, but in fact reveals to be the easier one.
The other problem is that from JNI you can't simply call a cygwin DLL,
as it wouldn't load his cygwin1.dll dependency correctly and surely dump.

I had a similar problem, a few months ago: calling a .NET managed code
from Java.
In that case, I reversed the approach: instead of importing an external
DLL using JNI, I instantiated the Java Virtual Machine itself inside the
.NET program, and "register" the local function as a static method of
the Java class.

This is the approach we pursued since this very morning, "almost"
succeeding in it.
"almost", unfortunately.

Calling the C function is not a problem, it even does a couple debug
printf with no problem.
But as soon as the C function calls a libgamin method (FAMOpen, the very
first one), it all fails miserably.
Anyone has an idea why? Is it a random bug or a fundamental problem of
the way cygwin1.dll works (like in the case of direct JNI)?

Follows the error itself:

#
# An unexpected error has been detected by HotSpot Virtual Machine:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x610ad945, pid=1280,
tid=1084
#
# Java VM: Java HotSpot(TM) Client VM (1.5.0_06-b05 mixed mode, sharing)
# Problematic frame:
# C  [cygwin1.dll+0xad945]
#
# An error report file with more information is saved as hs_err_pid1280.log
#
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
#

And an excerpt of hs_err_pid1280.log (the relevant stack frame):

Stack: [0x00030000,0x00230000),  sp=0x0022e9ec,  free space=2042k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code,
C=native code)
C  [cygwin1.dll+0xad945]
C  [cygwin1.dll+0x8dd7f]
C  [launcherS.exe+0x3048]
C  [launcherS.exe+0x11e4]
j  com.andxor.gamin.FAMConnection.FAMOpen()J+0
j  com.andxor.gamin.FAMConnection.<init>()V+25
j  FAMTest.main([Ljava/lang/String;)V+27
v  ~StubRoutines::call_stub
V  [jvm.dll+0x845a9]
V  [jvm.dll+0xd9317]
V  [jvm.dll+0x8447a]
V  [jvm.dll+0x8b44a]
C  [launcherS.exe+0x1b35]
C  [launcherS.exe+0x1c72]
C  [cygwin1.dll+0x5bc8]
C  [cygwin1.dll+0x5eb3]

Thanks in advance for any suggestion,
    Lapo and Alessandro



--------------ms080405070108050805060908
Content-Type: application/x-pkcs7-signature; name="smime.p7s"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="smime.p7s"
Content-Description: S/MIME Cryptographic Signature

MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEH
AQAAoIIJHzCCAuowggJToAMCAQICAw+xATANBgkqhkiG9w0BAQQFADBiMQsw
CQYDVQQGEwJaQTElMCMGA1UEChMcVGhhd3RlIENvbnN1bHRpbmcgKFB0eSkg
THRkLjEsMCoGA1UEAxMjVGhhd3RlIFBlcnNvbmFsIEZyZWVtYWlsIElzc3Vp
bmcgQ0EwHhcNMDUxMDE4MTI1MjE2WhcNMDYxMDE4MTI1MjE2WjBcMRAwDgYD
VQQEEwdMdWNoaW5pMQ0wCwYDVQQqEwRMYXBvMRUwEwYDVQQDEwxMYXBvIEx1
Y2hpbmkxIjAgBgkqhkiG9w0BCQEWE2wubHVjaGluaUBhbmR4b3IuaXQwggEi
MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDIrNiX0ghRZgfK1jIbfkDd
vopPA31Pj6uO9b7v4T9Hk+U6AdijkYsiZe97FXQQ8kqUbYor8ZCQyfe9ymxN
Tw0sytCjlEXg94vytgAFXlq+ESuJdo7cPOR7RBBqd7MOhRhYEmsx4i0cxNZ2
WSQMB3TIc3nay1I3056htPZw7c4Jkbh9vKSDZNDfDB1gGSdmbCmD5BRyWkfV
oHLdUdawU3yKneYA6Cy3Kw3jm6VK6twZaleCFgXcBlULkRXDANod7vSJxE+h
n3SkwMb0n0yz9lpxGeKZ9fjuVxGIxnL6gTFFe0NpHqwJbleKPsyPmun0W13j
HF/f2LFDXj09ZoOD6vptAgMBAAGjMDAuMB4GA1UdEQQXMBWBE2wubHVjaGlu
aUBhbmR4b3IuaXQwDAYDVR0TAQH/BAIwADANBgkqhkiG9w0BAQQFAAOBgQBk
NpZVBNSoj0XwjszvwqUxXAjXzTSWHkc2pkQ2Zz+YIGKpOcLyeXRAVes5HaRU
mQKzJtxsiLyHjCDXnWpa1hah7xWb5WZQEhcF5mCSYcivGU89toa3XAd3+ieQ
lMAGFVmeh7zs58Scnxw55pyLyWmTUZc59SvmMkfgu56xpKyAxjCCAuowggJT
oAMCAQICAw+xATANBgkqhkiG9w0BAQQFADBiMQswCQYDVQQGEwJaQTElMCMG
A1UEChMcVGhhd3RlIENvbnN1bHRpbmcgKFB0eSkgTHRkLjEsMCoGA1UEAxMj
VGhhd3RlIFBlcnNvbmFsIEZyZWVtYWlsIElzc3VpbmcgQ0EwHhcNMDUxMDE4
MTI1MjE2WhcNMDYxMDE4MTI1MjE2WjBcMRAwDgYDVQQEEwdMdWNoaW5pMQ0w
CwYDVQQqEwRMYXBvMRUwEwYDVQQDEwxMYXBvIEx1Y2hpbmkxIjAgBgkqhkiG
9w0BCQEWE2wubHVjaGluaUBhbmR4b3IuaXQwggEiMA0GCSqGSIb3DQEBAQUA
A4IBDwAwggEKAoIBAQDIrNiX0ghRZgfK1jIbfkDdvopPA31Pj6uO9b7v4T9H
k+U6AdijkYsiZe97FXQQ8kqUbYor8ZCQyfe9ymxNTw0sytCjlEXg94vytgAF
Xlq+ESuJdo7cPOR7RBBqd7MOhRhYEmsx4i0cxNZ2WSQMB3TIc3nay1I3056h
tPZw7c4Jkbh9vKSDZNDfDB1gGSdmbCmD5BRyWkfVoHLdUdawU3yKneYA6Cy3
Kw3jm6VK6twZaleCFgXcBlULkRXDANod7vSJxE+hn3SkwMb0n0yz9lpxGeKZ
9fjuVxGIxnL6gTFFe0NpHqwJbleKPsyPmun0W13jHF/f2LFDXj09ZoOD6vpt
AgMBAAGjMDAuMB4GA1UdEQQXMBWBE2wubHVjaGluaUBhbmR4b3IuaXQwDAYD
VR0TAQH/BAIwADANBgkqhkiG9w0BAQQFAAOBgQBkNpZVBNSoj0XwjszvwqUx
XAjXzTSWHkc2pkQ2Zz+YIGKpOcLyeXRAVes5HaRUmQKzJtxsiLyHjCDXnWpa
1hah7xWb5WZQEhcF5mCSYcivGU89toa3XAd3+ieQlMAGFVmeh7zs58Scnxw5
5pyLyWmTUZc59SvmMkfgu56xpKyAxjCCAz8wggKooAMCAQICAQ0wDQYJKoZI
hvcNAQEFBQAwgdExCzAJBgNVBAYTAlpBMRUwEwYDVQQIEwxXZXN0ZXJuIENh
cGUxEjAQBgNVBAcTCUNhcGUgVG93bjEaMBgGA1UEChMRVGhhd3RlIENvbnN1
bHRpbmcxKDAmBgNVBAsTH0NlcnRpZmljYXRpb24gU2VydmljZXMgRGl2aXNp
b24xJDAiBgNVBAMTG1RoYXd0ZSBQZXJzb25hbCBGcmVlbWFpbCBDQTErMCkG
CSqGSIb3DQEJARYccGVyc29uYWwtZnJlZW1haWxAdGhhd3RlLmNvbTAeFw0w
MzA3MTcwMDAwMDBaFw0xMzA3MTYyMzU5NTlaMGIxCzAJBgNVBAYTAlpBMSUw
IwYDVQQKExxUaGF3dGUgQ29uc3VsdGluZyAoUHR5KSBMdGQuMSwwKgYDVQQD
EyNUaGF3dGUgUGVyc29uYWwgRnJlZW1haWwgSXNzdWluZyBDQTCBnzANBgkq
hkiG9w0BAQEFAAOBjQAwgYkCgYEAxKY8VXNV+065yplaHmjAdQRwnd/p/6Me
7L3N9VvyGna9fww6YfK/Uc4B1OVQCjDXAmNaLIkVcI7dyfArhVqqP3FWy688
Cwfn8R+RNiQqE88r1fOCdz0Dviv+uxg+B79AgAJk16emu59l0cUqVIUPSAR/
p7bRPGEEQB5kGXJgt/sCAwEAAaOBlDCBkTASBgNVHRMBAf8ECDAGAQH/AgEA
MEMGA1UdHwQ8MDowOKA2oDSGMmh0dHA6Ly9jcmwudGhhd3RlLmNvbS9UaGF3
dGVQZXJzb25hbEZyZWVtYWlsQ0EuY3JsMAsGA1UdDwQEAwIBBjApBgNVHREE
IjAgpB4wHDEaMBgGA1UEAxMRUHJpdmF0ZUxhYmVsMi0xMzgwDQYJKoZIhvcN
AQEFBQADgYEASIzRUIPqCy7MDaNmrGcPf6+svsIXoUOWlJ1/TCG4+DYfqi2f
Ni/A9BxQIJNwPP2t4WFiw9k6GX6EsZkbAMUaC4J0niVQlGLH2ydxVyWN3amc
OY6MIE9lX5Xa9/eH1sYITq726jTlEBpbNU1341YheILcIRk13iSx0x1G/11f
ZU8xggM7MIIDNwIBATBpMGIxCzAJBgNVBAYTAlpBMSUwIwYDVQQKExxUaGF3
dGUgQ29uc3VsdGluZyAoUHR5KSBMdGQuMSwwKgYDVQQDEyNUaGF3dGUgUGVy
c29uYWwgRnJlZW1haWwgSXNzdWluZyBDQQIDD7EBMAkGBSsOAwIaBQCgggGn
MBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTA2
MDEyNjE0MzQ0MlowIwYJKoZIhvcNAQkEMRYEFONOjZluxlqA7qythS8Km+EZ
KpsGMFIGCSqGSIb3DQEJDzFFMEMwCgYIKoZIhvcNAwcwDgYIKoZIhvcNAwIC
AgCAMA0GCCqGSIb3DQMCAgFAMAcGBSsOAwIHMA0GCCqGSIb3DQMCAgEoMHgG
CSsGAQQBgjcQBDFrMGkwYjELMAkGA1UEBhMCWkExJTAjBgNVBAoTHFRoYXd0
ZSBDb25zdWx0aW5nIChQdHkpIEx0ZC4xLDAqBgNVBAMTI1RoYXd0ZSBQZXJz
b25hbCBGcmVlbWFpbCBJc3N1aW5nIENBAgMPsQEwegYLKoZIhvcNAQkQAgsx
a6BpMGIxCzAJBgNVBAYTAlpBMSUwIwYDVQQKExxUaGF3dGUgQ29uc3VsdGlu
ZyAoUHR5KSBMdGQuMSwwKgYDVQQDEyNUaGF3dGUgUGVyc29uYWwgRnJlZW1h
aWwgSXNzdWluZyBDQQIDD7EBMA0GCSqGSIb3DQEBAQUABIIBADtLXf6ICJcP
jTU32LX9fkdieCzu3Ugdh/uZA9WWn74xQbjk8f4J7WGHrsdF/fdoy6xQ/Q+l
cQlPDkeuvNujr4sZIFKydkDMUdZnoD8sFxSO1/OhlPYe1tK+aFtWcY3x4wdv
lRys9biffrj811n/W0A7CmDHLtzYGGwP7tP+Wtowk1lEYNTNHQBnbtWPuv9w
Sz7XGhdZiRDpIxlg7dFMB6f9KeQIGz7GuAog23R7z91mKr1tyDKeC5/rzN4p
8oo5h8qadmxvZAgyJDBPNznhi/qeohCrmrHteF0MuXPo3yurYsUG9YZwEhsK
xecI8NG3acLfXMjv+5IJ+gvDyWT4zmwAAAAAAAA=

--------------ms080405070108050805060908--

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019