[Bug 37585] 64-bit Chromium browser engine with native API sandboxing/hooking scheme fails if 64-bit ntdll.dll.so is not mapped at desired fixed address (Google Chrome 38+ crashes)

wine-bugs at winehq.org wine-bugs at winehq.org
Thu Nov 12 11:35:55 CST 2015


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

--- Comment #4 from Anastasius Focht <focht at gmx.net> ---
Hello Erich,

change the '.interp' section start in 'configure.ac' -> LOADER_RULES for
'${wine_binary}':

https://source.winehq.org/git/wine.git/blob/79c852340c63a68c378c2059e1ffe73ad6d891ad:/configure.ac#l932

--- snip ---
...
 889     AS_VAR_APPEND([LOADER_RULES],["
 890 ${wine_binary}_OBJS = main.o
 891 ${wine_binary}_LDFLAGS = $LDEXECFLAGS -lwine \$(PTHREAD_LIBS)
 892 "])
 893     ;;
 894 
 895   *)
...
 927       case $host_cpu in
 928         *i[[3456789]]86* | x86_64)
 929           WINE_TRY_CFLAGS([-Wl,--section-start,.interp=0x7bf00400],
 930                           [case $host_os in
 931                            freebsd* | kfreebsd*-gnu)
LDEXECFLAGS="$LDEXECFLAGS -Wl,--section-start,.interp=0x60000400" ;;
 932                            *) LDEXECFLAGS="$LDEXECFLAGS
-Wl,--section-start,.interp=0x7bf00400" ;;
 933                            esac
 934                           ])
...
--- snip ---

I moved the '.interp' section start a bit to 0x7c100400 which preserved the
fixed load addresses on my system:

--- snip ---
...
00242000-00350000 rw-p 00000000 00:00 0                                 
[stack:841]
00350000-00450000 ---p 00000000 00:00 0 
00450000-68000000 ---p 00000000 00:00 0 
7b800000-7b820000 r-xp 00000000 00:23 20372627                          
/home/focht/projects/wine/wine.repo/install/lib/wine/kernel32.dll.so
7b820000-7b821000 rw-p 00000000 00:00 0 
7b821000-7b8c8000 r-xp 00021000 00:23 20372627                          
/home/focht/projects/wine/wine.repo/install/lib/wine/kernel32.dll.so
7b8c8000-7b8c9000 r--p 000c7000 00:23 20372627                          
/home/focht/projects/wine/wine.repo/install/lib/wine/kernel32.dll.so
7b8c9000-7ba73000 rw-p 000c8000 00:23 20372627                          
/home/focht/projects/wine/wine.repo/install/lib/wine/kernel32.dll.so
7bc00000-7bc30000 r-xp 00000000 00:23 20372872                          
/home/focht/projects/wine/wine.repo/install/lib/wine/ntdll.dll.so
7bc30000-7bc31000 rw-p 00000000 00:00 0 
7bc31000-7bce9000 r-xp 00031000 00:23 20372872                          
/home/focht/projects/wine/wine.repo/install/lib/wine/ntdll.dll.so
7bce9000-7bcea000 r--p 000e8000 00:23 20372872                          
/home/focht/projects/wine/wine.repo/install/lib/wine/ntdll.dll.so
7bcea000-7bcf4000 rw-p 000e9000 00:23 20372872                          
/home/focht/projects/wine/wine.repo/install/lib/wine/ntdll.dll.so
7bcf4000-7bd07000 rw-p 00000000 00:00 0 
7c100000-7c102000 r-xp 00000000 00:23 20374198                          
/home/focht/projects/wine/wine.repo/install/bin/wine
7c102000-7c103000 r--p 00001000 00:23 20374198                          
/home/focht/projects/wine/wine.repo/install/bin/wine
7c103000-7c104000 rw-p 00002000 00:23 20374198                          
/home/focht/projects/wine/wine.repo/install/bin/wine
7c400000-7c403000 r-xp 00001000 00:23 20374199                          
/home/focht/projects/wine/wine.repo/install/bin/wine-preloader
7c404000-7c405000 rw-p 00004000 00:23 20374199                          
/home/focht/projects/wine/wine.repo/install/bin/wine-preloader
7d458000-7d4f6000 rw-p 00000000 00:00 0                                  [heap]
...
--- snip ---

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