[Bug 26085] Korsakow (Java based app) crashes on startup (default 1.1 GiB Java VM heap placement/allocation fails due to address space fragmentation)

wine-bugs at winehq.org wine-bugs at winehq.org
Sat Jul 5 16:11:55 CDT 2014


https://bugs.winehq.org/show_bug.cgi?id=26085

Anastasius Focht <focht at gmx.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
                URL|www.korsakow.org            |http://korsakow.net/release
                   |                            |s/KorsakowWin.zip
                 CC|                            |focht at gmx.net
            Version|unspecified                 |1.3.13
         Resolution|---                         |WONTFIX
            Summary|Korsakow crashes on start   |Korsakow (Java based app)
                   |                            |crashes on startup (default
                   |                            |1.1 GiB Java VM heap
                   |                            |placement/allocation fails
                   |                            |due to address space
                   |                            |fragmentation)

--- Comment #7 from Anastasius Focht <focht at gmx.net> ---
Hello folks,

confirming, still present.

--- snip ---
$ WINEDEBUG=+tid,+seh,+relay wine ./Korsakow.exe >>log.txt 2>&1 
...
0033:Call msvcr100._stat64i32(0067f0b0 ".hotspotrc",0067f1e0) ret=6e916bec
0033:Call KERNEL32.GetFileAttributesExA(0067f0b0
".hotspotrc",00000000,0067eee0) ret=7e20d7c7
0033:Ret  KERNEL32.GetFileAttributesExA() retval=00000000 ret=7e20d7c7
...
0033:Call KERNEL32.GetEnvironmentVariableA(6ea2eb64
"JAVA_TOOL_OPTIONS",0067ed88,00000400) ret=6e912696
0033:Ret  KERNEL32.GetEnvironmentVariableA() retval=00000000 ret=6e912696 
...
0033:Call KERNEL32.GetEnvironmentVariableA(6ea2eb54
"_JAVA_OPTIONS",0067ed88,00000400) ret=6e912696
0033:Ret  KERNEL32.GetEnvironmentVariableA() retval=00000000 ret=6e912696
...
033:Call KERNEL32.VirtualAlloc(27600000,45e00000,00002000,00000004)
ret=6e91791d
0033:Ret  KERNEL32.VirtualAlloc() retval=00000000 ret=6e91791d
0033:Call msvcr100._close(00000003) ret=6e7f2cd6
0033:Call KERNEL32.CloseHandle(000000bc) ret=7e208bf6
0033:Ret  KERNEL32.CloseHandle() retval=00000001 ret=7e208bf6
0033:Ret  msvcr100._close() retval=00000000 ret=6e7f2cd6
0033:Call KERNEL32.VirtualAlloc(00000000,45e00000,00002000,00000004)
ret=6e91791d
0033:Ret  KERNEL32.VirtualAlloc() retval=00000000 ret=6e91791d
0033:Call msvcr100.strchr(6ea345f4 "Error occurred during initialization of
VM",00000025) ret=6e8fc344
0033:Ret  msvcr100.strchr() retval=00000000 ret=6e8fc344
0033:Call msvcr100.strncpy(0067ea24,6ea345f4 "Error occurred during
initialization of VM",000007cf) ret=6e8fc3a1
0033:Ret  msvcr100.strncpy() retval=0067ea24 ret=6e8fc3a1
0033:Call msvcr100._write(00000001,0067ea24,0000002b) ret=6e860826
0033:Call KERNEL32.WriteFile(00000004,0067ea24,0000002b,0067e91c,00000000)
ret=7e20eaad
Error occurred during initialization of VM
0033:Ret  KERNEL32.WriteFile() retval=00000001 ret=7e20eaad 
...
0033:Call KERNEL32.WriteFile(00000004,6ea2057c,0000002e,0067e90c,00000000)
ret=7e20eaad
Could not reserve enough space for object heap0033:Ret  KERNEL32.WriteFile()
retval=00000001 ret=7e20eaad 
...
0033:trace:seh:raise_exception code=c0000005 flags=0 addr=0x418561 ip=00418561
tid=0033
0033:trace:seh:raise_exception  info[0]=00000000
0033:trace:seh:raise_exception  info[1]=00000000
0033:trace:seh:raise_exception  eax=0067f1c8 ebx=0067f21c ecx=002412b8
edx=00000000 esi=002412f0 edi=0067f21c
0033:trace:seh:raise_exception  ebp=0067f268 esp=0067f1c0 cs=0023 ds=002b
es=002b fs=0063 gs=006b flags=00010206
0033:trace:seh:call_stack_handlers calling handler at 0x7bc9dbe3 code=c0000005
flags=0
0033:Call KERNEL32.UnhandledExceptionFilter(0067ec94) ret=7bc9dc1d
0033:Call msvcrt.signal(0000000b,00000000) ret=00401132
0033:trace:seh:MSVCRT_signal (11, (nil))
0033:Ret  msvcrt.signal() retval=00000000 ret=00401132
wine: Unhandled page fault on read access to 0x00000000 at address 0x418561
(thread 0033), starting debugger...
0033:trace:seh:start_debugger Starting debugger "winedbg --auto 50 136"
0033:Ret  KERNEL32.UnhandledExceptionFilter() retval=00000000 ret=7bc9dc1d
0033:trace:seh:call_stack_handlers handler at 0x7bc9dbe3 returned 1
Unhandled exception: page fault on read access to 0x00000000 in 32-bit code
(0x00418561).
Register dump:
 CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
 EIP:00418561 ESP:0067f1c0 EBP:0067f268 EFLAGS:00010206(  R- --  I   - -P- )
 EAX:0067f1c8 EBX:0067f21c ECX:002412b8 EDX:00000000
 ESI:002412f0 EDI:0067f21c
...
Backtrace:
=>0 0x00418561 in korsakow (+0x18561) (0x0067f268)
  1 0x00420384 in korsakow (+0x20383) (0x0067f5a0)
  2 0x00419449 in korsakow (+0x19448) (0x0067f5ac)
  3 0x00416daa in korsakow (+0x16da9) (0x0067f63c)
  4 0x00416a87 in korsakow (+0x16a86) (0x0067f6ec)
  5 0x00403e05 in korsakow (+0x3e04) (0x0067f884)
  6 0x0040a373 in korsakow (+0xa372) (0x0067f8a8)
  7 0x00409186 in korsakow (+0x9185) (0x0067fa18)
  8 0x0040241a in korsakow (+0x2419) (0x0067fd78)
  9 0x0043bb4b in korsakow (+0x3bb4a) (0x0067fdf0)
  10 0x0040122d in korsakow (+0x122c) (0x0067fe10)
  11 0x00401258 in korsakow (+0x1257) (0x0067fe20) 
...
0x00418561: movl    0x0(%edx),%ecx
Modules:
Module    Address            Debug info    Name (54 modules)
PE      400000-  476f9c    Export          korsakow
ELF    4eb05000-4eb1e000    Deferred        libresolv.so.2
PE    6d480000-6d4a0000    Deferred        java
PE    6e6c0000-6e6cc000    Deferred        verify
PE    6e750000-6e763000    Deferred        zip
PE    6e770000-6eaf8000    Deferred        jvm
ELF    7b800000-7ba62000    Dwarf           kernel32<elf>
  \-PE    7b810000-7ba62000    \               kernel32 
...
Threads:
process  tid      prio (all id:s are in hex)
...
00000012 jqs.exe
    00000027    0
    0000001b    0
    0000001a    0
    00000019    0
    00000013    0
...
00000032 (D) Z:\home\focht\Downloads\unpack\Korsakow.exe
    00000034    0
    00000033    0 <== 
--- snip ---

1.1 GiB for heap? That's a pretty unreasonable amount ... typical Java bloat.

Unfortunately Linux 'libresolv.so.2' fragmented the address space in my case
hence this VM heap can be placed in between the main executable and
native/builtins mappings.

There is not much we can do here from Wine perspective and I don't want to
prelink all Linux libs out of the way.

You can work around by setting following environment variable, lowering the
default Java VM heap size:

--- snip ---
$ export _JAVA_OPTIONS="-Xmx512m"
$ wine ./Korsakow.exe
--- snip ---

$ sha1sum KorsakowWin.zip 
171e12eef11e8178738c9f441b1b3b6124ef277b  KorsakowWin.zip

$ du -sh KorsakowWin.zip 
21M    KorsakowWin.zip

$ wine --version
wine-1.7.21-61-gf9f3b21

Regards

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.



More information about the wine-bugs mailing list