Many DLLs seem to be loading before chrome_elf.dll on Win10 |
||||||||||
Issue descriptionIn https://bugs.chromium.org/p/chromium/issues/detail?id=700371 we discovered that crash init was broken again, but only on win7 this time. chrome_elf was accidentally loading advapi32.dll in DllMain, which is bad. However, it works fine on win10 because that dll's already loaded. But why is that dll already loaded?? Here's a log from windbg on win10 for the current stable 57.0.2987.98 (64-bit). Symbol search path is: SRV*c:\Symbols*https://msdl.microsoft.com/download/symbols;SRV*c:\Symbols*https://chromium-browser-symsrv.commondatastorage.googleapis.com;srv*c:\stuff\3023-symbols*https://chromium-browser-symsrv.commondatastorage.googleapis.com Executable search path is: ModLoad: 00007ff6`f5fd0000 00007ff6`f60e7000 chrome.exe ModLoad: 00007ff8`37a90000 00007ff8`37c61000 ntdll.dll ModLoad: 00007ff8`37170000 00007ff8`3721b000 C:\WINDOWS\System32\KERNEL32.DLL ModLoad: 00007ff8`342e0000 00007ff8`344fd000 C:\WINDOWS\System32\KERNELBASE.dll ModLoad: 00007ff8`30dd0000 00007ff8`30e4a000 C:\WINDOWS\system32\apphelp.dll ModLoad: 00007ff8`1f020000 00007ff8`1f073000 C:\WINDOWS\AppPatch\AppPatch64\AcGenral.dll ModLoad: 00007ff8`35290000 00007ff8`3532e000 C:\WINDOWS\System32\msvcrt.dll ModLoad: 00007ff8`35190000 00007ff8`351e9000 C:\WINDOWS\System32\sechost.dll ModLoad: 00007ff8`373e0000 00007ff8`37501000 C:\WINDOWS\System32\RPCRT4.dll ModLoad: 00007ff8`351f0000 00007ff8`35242000 C:\WINDOWS\System32\SHLWAPI.dll ModLoad: 00007ff8`377b0000 00007ff8`37a78000 C:\WINDOWS\System32\combase.dll ModLoad: 00007ff8`34d00000 00007ff8`34df5000 C:\WINDOWS\System32\ucrtbase.dll ModLoad: 00007ff8`34e60000 00007ff8`34eca000 C:\WINDOWS\System32\bcryptPrimitives.dll ModLoad: 00007ff8`35250000 00007ff8`35284000 C:\WINDOWS\System32\GDI32.dll ModLoad: 00007ff8`33f80000 00007ff8`34102000 C:\WINDOWS\System32\gdi32full.dll ModLoad: 00007ff8`359e0000 00007ff8`35b45000 C:\WINDOWS\System32\USER32.dll ModLoad: 00007ff8`34c30000 00007ff8`34c4e000 C:\WINDOWS\System32\win32u.dll ModLoad: 00007ff8`37220000 00007ff8`37357000 C:\WINDOWS\System32\ole32.dll ModLoad: 00007ff8`35c60000 00007ff8`37169000 C:\WINDOWS\System32\SHELL32.dll ModLoad: 00007ff8`34be0000 00007ff8`34c22000 C:\WINDOWS\System32\cfgmgr32.dll ModLoad: 00007ff8`34500000 00007ff8`34bda000 C:\WINDOWS\System32\windows.storage.dll ModLoad: 00007ff8`33f20000 00007ff8`33f6c000 C:\WINDOWS\System32\powrprof.dll ModLoad: 00007ff8`350e0000 00007ff8`35182000 C:\WINDOWS\System32\advapi32.dll ModLoad: 00007ff8`33f10000 00007ff8`33f1f000 C:\WINDOWS\System32\kernel.appcore.dll ModLoad: 00007ff8`34ed0000 00007ff8`34f79000 C:\WINDOWS\System32\shcore.dll ModLoad: 00007ff8`33ef0000 00007ff8`33f04000 C:\WINDOWS\System32\profapi.dll ModLoad: 00007ff8`33bf0000 00007ff8`33c1c000 C:\WINDOWS\SYSTEM32\SspiCli.dll ModLoad: 00007ff8`336a0000 00007ff8`336bf000 C:\WINDOWS\SYSTEM32\USERENV.dll ModLoad: 00007ff8`24b70000 00007ff8`24b8b000 C:\WINDOWS\SYSTEM32\MPR.dll ModLoad: 00007ff8`35bc0000 00007ff8`35bee000 C:\WINDOWS\System32\IMM32.DLL ModLoad: 00007ff8`37a80000 00007ff8`37a88000 C:\WINDOWS\System32\PSAPI.DLL ModLoad: 00007ff8`12e20000 00007ff8`12eb4000 C:\Program Files (x86)\Google\Chrome\Application\57.0.2987.98\chrome_elf.dll ModLoad: 00007ff8`30a30000 00007ff8`30a3a000 C:\WINDOWS\SYSTEM32\VERSION.dll ModLoad: 00007ff8`30ad0000 00007ff8`30af3000 C:\WINDOWS\SYSTEM32\WINMM.dll ModLoad: 00007ff8`31d60000 00007ff8`31e2d000 C:\WINDOWS\SYSTEM32\WINHTTP.dll ModLoad: 00007ff8`30a70000 00007ff8`30a9b000 C:\WINDOWS\SYSTEM32\WINMMBASE.dll ModLoad: 00007ff8`339c0000 00007ff8`339cb000 C:\WINDOWS\SYSTEM32\CRYPTBASE.DLL (a6a4.614): Break instruction exception - code 80000003 (first chance) ntdll!LdrpDoDebuggerBreak+0x30: 00007ff8`37b634e0 cc int 3 Is this bad? (in particular that all the modules of the world appear to be loading before we get around to chrome_elf.dll?)
,
Mar 10 2017
I guess it's apphelp/apppatch64 that's messing things up? So maybe it's only on my/some win10 machines? I'll try setting up a vanilla Win10 VM to compare there next I guess.
,
Mar 10 2017
Here's the results of a clean Win10 x64 1607 install, then chrome x64 m57 stable, then windbg: Microsoft (R) Windows Debugger Version 10.0.14321.1024 AMD64 Copyright (c) Microsoft Corporation. All rights reserved. CommandLine: "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" Symbol search path is: srv* Executable search path is: ModLoad: 00007ff6`61610000 00007ff6`61727000 chrome.exe ModLoad: 00007ffa`13010000 00007ffa`131e1000 ntdll.dll ModLoad: 00007ffa`12400000 00007ffa`124ab000 C:\Windows\System32\KERNEL32.DLL ModLoad: 00007ffa`0f900000 00007ffa`0fb1d000 C:\Windows\System32\KERNELBASE.dll ModLoad: 00007ffa`0de70000 00007ffa`0deea000 C:\Windows\system32\apphelp.dll ModLoad: 00007ffa`017a0000 00007ffa`017f3000 C:\Windows\AppPatch\AppPatch64\AcGenral.dll ModLoad: 00007ffa`107f0000 00007ffa`1088e000 C:\Windows\System32\msvcrt.dll ModLoad: 00007ffa`10790000 00007ffa`107e9000 C:\Windows\System32\sechost.dll ModLoad: 00007ffa`12780000 00007ffa`128a1000 C:\Windows\System32\RPCRT4.dll ModLoad: 00007ffa`123a0000 00007ffa`123f2000 C:\Windows\System32\SHLWAPI.dll ModLoad: 00007ffa`124b0000 00007ffa`12777000 C:\Windows\System32\combase.dll ModLoad: 00007ffa`0f5b0000 00007ffa`0f6a5000 C:\Windows\System32\ucrtbase.dll ModLoad: 00007ffa`10310000 00007ffa`1037a000 C:\Windows\System32\bcryptPrimitives.dll ModLoad: 00007ffa`10c40000 00007ffa`10c74000 C:\Windows\System32\GDI32.dll ModLoad: 00007ffa`0f770000 00007ffa`0f8f2000 C:\Windows\System32\gdi32full.dll ModLoad: 00007ffa`12230000 00007ffa`12395000 C:\Windows\System32\USER32.dll ModLoad: 00007ffa`0f6b0000 00007ffa`0f6ce000 C:\Windows\System32\win32u.dll ModLoad: 00007ffa`109f0000 00007ffa`10b27000 C:\Windows\System32\ole32.dll ModLoad: 00007ffa`10c80000 00007ffa`12189000 C:\Windows\System32\SHELL32.dll ModLoad: 00007ffa`10380000 00007ffa`103c2000 C:\Windows\System32\cfgmgr32.dll ModLoad: 00007ffa`0fb80000 00007ffa`1025a000 C:\Windows\System32\windows.storage.dll ModLoad: 00007ffa`0f470000 00007ffa`0f4bc000 C:\Windows\System32\powrprof.dll ModLoad: 00007ffa`12f60000 00007ffa`13002000 C:\Windows\System32\advapi32.dll ModLoad: 00007ffa`0f4c0000 00007ffa`0f4cf000 C:\Windows\System32\kernel.appcore.dll ModLoad: 00007ffa`10260000 00007ffa`10309000 C:\Windows\System32\shcore.dll ModLoad: 00007ffa`0f4e0000 00007ffa`0f4f4000 C:\Windows\System32\profapi.dll ModLoad: 00007ffa`0f0e0000 00007ffa`0f10c000 C:\Windows\SYSTEM32\SspiCli.dll ModLoad: 00007ffa`0eaf0000 00007ffa`0eb0f000 C:\Windows\SYSTEM32\USERENV.dll ModLoad: 00007ffa`09f70000 00007ffa`09f8b000 C:\Windows\SYSTEM32\MPR.dll ModLoad: 00007ffa`12190000 00007ffa`121be000 C:\Windows\System32\IMM32.DLL ModLoad: 00007ffa`12ac0000 00007ffa`12ac8000 C:\Windows\System32\PSAPI.DLL ModLoad: 00007ff9`fdd70000 00007ff9`fde04000 C:\Program Files (x86)\Google\Chrome\Application\57.0.2987.98\chrome_elf.dll ModLoad: 00007ffa`04510000 00007ffa`0451a000 C:\Windows\SYSTEM32\VERSION.dll ModLoad: 00007ffa`0de40000 00007ffa`0de63000 C:\Windows\SYSTEM32\WINMM.dll ModLoad: 00007ffa`094f0000 00007ffa`095bd000 C:\Windows\SYSTEM32\WINHTTP.dll ModLoad: 00007ffa`0dda0000 00007ffa`0ddcb000 C:\Windows\SYSTEM32\WINMMBASE.dll ModLoad: 00007ffa`0ef00000 00007ffa`0ef0b000 C:\Windows\SYSTEM32\CRYPTBASE.DLL (19b0.e7c): Break instruction exception - code 80000003 (first chance) ntdll!LdrpDoDebuggerBreak+0x30: 00007ffa`130e2740 cc int 3 So I don't think chrome_elf is effective on Win10 at the moment, and we're always getting AppPatch64'd which might not really be teh awesomest either.
,
Mar 10 2017
can you check the environment for the __COMPAT_LAYER variable maybe? c.f. issue 694689
,
Mar 10 2017
No __COMPAT_LAYER. Maybe AppPatch64 isn't compat? I'm not sure what it is, but it looks like it's mucking up our DLL loads anyway.
Microsoft (R) Windows Debugger Version 10.0.14321.1024 AMD64
Copyright (c) Microsoft Corporation. All rights reserved.
CommandLine: "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"
Symbol search path is: srv*
Executable search path is:
ModLoad: 00007ff6`61610000 00007ff6`61727000 chrome.exe
ModLoad: 00007ffa`13010000 00007ffa`131e1000 ntdll.dll
ModLoad: 00007ffa`12400000 00007ffa`124ab000 C:\Windows\System32\KERNEL32.DLL
ModLoad: 00007ffa`0f900000 00007ffa`0fb1d000 C:\Windows\System32\KERNELBASE.dll
ModLoad: 00007ffa`0de70000 00007ffa`0deea000 C:\Windows\system32\apphelp.dll
ModLoad: 00007ffa`017a0000 00007ffa`017f3000 C:\Windows\AppPatch\AppPatch64\AcGenral.dll
ModLoad: 00007ffa`107f0000 00007ffa`1088e000 C:\Windows\System32\msvcrt.dll
ModLoad: 00007ffa`10790000 00007ffa`107e9000 C:\Windows\System32\sechost.dll
ModLoad: 00007ffa`12780000 00007ffa`128a1000 C:\Windows\System32\RPCRT4.dll
ModLoad: 00007ffa`123a0000 00007ffa`123f2000 C:\Windows\System32\SHLWAPI.dll
ModLoad: 00007ffa`124b0000 00007ffa`12777000 C:\Windows\System32\combase.dll
ModLoad: 00007ffa`0f5b0000 00007ffa`0f6a5000 C:\Windows\System32\ucrtbase.dll
ModLoad: 00007ffa`10310000 00007ffa`1037a000 C:\Windows\System32\bcryptPrimitives.dll
ModLoad: 00007ffa`10c40000 00007ffa`10c74000 C:\Windows\System32\GDI32.dll
ModLoad: 00007ffa`0f770000 00007ffa`0f8f2000 C:\Windows\System32\gdi32full.dll
ModLoad: 00007ffa`12230000 00007ffa`12395000 C:\Windows\System32\USER32.dll
ModLoad: 00007ffa`0f6b0000 00007ffa`0f6ce000 C:\Windows\System32\win32u.dll
ModLoad: 00007ffa`109f0000 00007ffa`10b27000 C:\Windows\System32\ole32.dll
ModLoad: 00007ffa`10c80000 00007ffa`12189000 C:\Windows\System32\SHELL32.dll
ModLoad: 00007ffa`10380000 00007ffa`103c2000 C:\Windows\System32\cfgmgr32.dll
ModLoad: 00007ffa`0fb80000 00007ffa`1025a000 C:\Windows\System32\windows.storage.dll
ModLoad: 00007ffa`0f470000 00007ffa`0f4bc000 C:\Windows\System32\powrprof.dll
ModLoad: 00007ffa`12f60000 00007ffa`13002000 C:\Windows\System32\advapi32.dll
ModLoad: 00007ffa`0f4c0000 00007ffa`0f4cf000 C:\Windows\System32\kernel.appcore.dll
ModLoad: 00007ffa`10260000 00007ffa`10309000 C:\Windows\System32\shcore.dll
ModLoad: 00007ffa`0f4e0000 00007ffa`0f4f4000 C:\Windows\System32\profapi.dll
ModLoad: 00007ffa`0f0e0000 00007ffa`0f10c000 C:\Windows\SYSTEM32\SspiCli.dll
ModLoad: 00007ffa`0eaf0000 00007ffa`0eb0f000 C:\Windows\SYSTEM32\USERENV.dll
ModLoad: 00007ffa`09f70000 00007ffa`09f8b000 C:\Windows\SYSTEM32\MPR.dll
ModLoad: 00007ffa`12190000 00007ffa`121be000 C:\Windows\System32\IMM32.DLL
ModLoad: 00007ffa`12ac0000 00007ffa`12ac8000 C:\Windows\System32\PSAPI.DLL
ModLoad: 00007ff9`fdd70000 00007ff9`fde04000 C:\Program Files (x86)\Google\Chrome\Application\57.0.2987.98\chrome_elf.dll
ModLoad: 00007ffa`04510000 00007ffa`0451a000 C:\Windows\SYSTEM32\VERSION.dll
ModLoad: 00007ffa`0de40000 00007ffa`0de63000 C:\Windows\SYSTEM32\WINMM.dll
ModLoad: 00007ffa`094f0000 00007ffa`095bd000 C:\Windows\SYSTEM32\WINHTTP.dll
ModLoad: 00007ffa`0dda0000 00007ffa`0ddcb000 C:\Windows\SYSTEM32\WINMMBASE.dll
ModLoad: 00007ffa`0ef00000 00007ffa`0ef0b000 C:\Windows\SYSTEM32\CRYPTBASE.DLL
(150c.15d4): Break instruction exception - code 80000003 (first chance)
ntdll!LdrpDoDebuggerBreak+0x30:
00007ffa`130e2740 cc int 3
0:000> !peb
PEB at 000000586a959000
InheritedAddressSpace: No
ReadImageFileExecOptions: No
BeingDebugged: Yes
ImageBaseAddress: 00007ff661610000
Ldr 00007ffa131623a0
Ldr.Initialized: Yes
Ldr.InInitializationOrderModuleList: 00000167623722b0 . 000001676237fef0
Ldr.InLoadOrderModuleList: 0000016762372420 . 000001676238d590
Ldr.InMemoryOrderModuleList: 0000016762372430 . 000001676238d5a0
Base TimeStamp Module
7ff661610000 58c08db4 Mar 08 15:03:16 2017 C:\Program Files (x86)\Google\Chrome\Application\chrome.exe
7ffa13010000 5819bc32 Nov 02 03:13:06 2016 C:\Windows\SYSTEM32\ntdll.dll
7ffa12400000 57899a29 Jul 15 19:21:29 2016 C:\Windows\System32\KERNEL32.DLL
7ffa0f900000 57f4c4f0 Oct 05 02:16:32 2016 C:\Windows\System32\KERNELBASE.dll
7ffa0de70000 578999e1 Jul 15 19:20:17 2016 C:\Windows\system32\apphelp.dll
7ffa017a0000 5801a86f Oct 14 20:54:23 2016 C:\Windows\AppPatch\AppPatch64\AcGenral.dll
7ffa107f0000 57899b47 Jul 15 19:26:15 2016 C:\Windows\System32\msvcrt.dll
7ffa10790000 57899a7c Jul 15 19:22:52 2016 C:\Windows\System32\sechost.dll
7ffa12780000 57a558cf Aug 05 20:26:07 2016 C:\Windows\System32\RPCRT4.dll
7ffa123a0000 5789988d Jul 15 19:14:37 2016 C:\Windows\System32\SHLWAPI.dll
7ffa124b0000 5801a419 Oct 14 20:35:53 2016 C:\Windows\System32\combase.dll
7ffa0f5b0000 578997b5 Jul 15 19:11:01 2016 C:\Windows\System32\ucrtbase.dll
7ffa10310000 57899aef Jul 15 19:24:47 2016 C:\Windows\System32\bcryptPrimitives.dll
7ffa10c40000 57dace36 Sep 15 09:37:10 2016 C:\Windows\System32\GDI32.dll
7ffa0f770000 5819c03e Nov 02 03:30:22 2016 C:\Windows\System32\gdi32full.dll
7ffa12230000 5801a55b Oct 14 20:41:15 2016 C:\Windows\System32\USER32.dll
7ffa0f6b0000 57a05800 Aug 02 01:21:20 2016 C:\Windows\System32\win32u.dll
7ffa109f0000 5819bedb Nov 02 03:24:27 2016 C:\Windows\System32\ole32.dll
7ffa10c80000 5819bf39 Nov 02 03:26:01 2016 C:\Windows\System32\SHELL32.dll
7ffa10380000 57899b3c Jul 15 19:26:04 2016 C:\Windows\System32\cfgmgr32.dll
7ffa0fb80000 57dacb3f Sep 15 09:24:31 2016 C:\Windows\System32\windows.storage.dll
7ffa0f470000 57899a1f Jul 15 19:21:19 2016 C:\Windows\System32\powrprof.dll
7ffa12f60000 57899904 Jul 15 19:16:36 2016 C:\Windows\System32\advapi32.dll
7ffa0f4c0000 57899b97 Jul 15 19:27:35 2016 C:\Windows\System32\kernel.appcore.dll
7ffa10260000 57899893 Jul 15 19:14:43 2016 C:\Windows\System32\shcore.dll
7ffa0f4e0000 57899b70 Jul 15 19:26:56 2016 C:\Windows\System32\profapi.dll
7ffa0f0e0000 57cf9eb1 Sep 06 21:59:29 2016 C:\Windows\SYSTEM32\SspiCli.dll
7ffa0eaf0000 57899b1c Jul 15 19:25:32 2016 C:\Windows\SYSTEM32\USERENV.dll
7ffa09f70000 57899ac5 Jul 15 19:24:05 2016 C:\Windows\SYSTEM32\MPR.dll
7ffa12190000 57899b30 Jul 15 19:25:52 2016 C:\Windows\System32\IMM32.DLL
7ffa12ac0000 57899a03 Jul 15 19:20:51 2016 C:\Windows\System32\PSAPI.DLL
7ff9fdd70000 58c075cc Mar 08 13:21:16 2017 C:\Program Files (x86)\Google\Chrome\Application\57.0.2987.98\chrome_elf.dll
7ffa04510000 57899b7f Jul 15 19:27:11 2016 C:\Windows\SYSTEM32\VERSION.dll
7ffa0de40000 57899ae3 Jul 15 19:24:35 2016 C:\Windows\SYSTEM32\WINMM.dll
7ffa094f0000 5801a4d7 Oct 14 20:39:03 2016 C:\Windows\SYSTEM32\WINHTTP.dll
7ffa0dda0000 57899ade Jul 15 19:24:30 2016 C:\Windows\SYSTEM32\WINMMBASE.dll
7ffa0ef00000 57899bc7 Jul 15 19:28:23 2016 C:\Windows\SYSTEM32\CRYPTBASE.DLL
SubSystemData: 0000000000000000
ProcessHeap: 0000016762370000
ProcessParameters: 00000167623719e0
CurrentDirectory: 'C:\Program Files (x86)\Windows Kits\10\Debuggers\'
WindowTitle: 'C:\Program Files (x86)\Google\Chrome\Application\chrome.exe'
ImageFile: 'C:\Program Files (x86)\Google\Chrome\Application\chrome.exe'
CommandLine: '"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"'
DllPath: '< Name not readable >'
Environment: 0000016762370dd0
=::=::\
ALLUSERSPROFILE=C:\ProgramData
APPDATA=C:\Users\scott\AppData\Roaming
CommonProgramFiles=C:\Program Files\Common Files
CommonProgramFiles(x86)=C:\Program Files (x86)\Common Files
CommonProgramW6432=C:\Program Files\Common Files
COMPUTERNAME=DESKTOP-RU76NQ0
ComSpec=C:\Windows\system32\cmd.exe
FPS_BROWSER_APP_PROFILE_STRING=Internet Explorer
FPS_BROWSER_USER_PROFILE_STRING=Default
HOMEDRIVE=C:
HOMEPATH=\Users\scott
LOCALAPPDATA=C:\Users\scott\AppData\Local
LOGONSERVER=\\WIN-GKQ59H4SL9O
NUMBER_OF_PROCESSORS=1
OS=Windows_NT
Path=C:\Program Files (x86)\Windows Kits\10\Debuggers\x64;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Users\scott\AppData\Local\Microsoft\WindowsApps;
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
PROCESSOR_ARCHITECTURE=AMD64
PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 63 Stepping 2, GenuineIntel
PROCESSOR_LEVEL=6
PROCESSOR_REVISION=3f02
ProgramData=C:\ProgramData
ProgramFiles=C:\Program Files
ProgramFiles(x86)=C:\Program Files (x86)
ProgramW6432=C:\Program Files
PSModulePath=C:\Program Files\WindowsPowerShell\Modules;C:\Windows\system32\WindowsPowerShell\v1.0\Modules
PUBLIC=C:\Users\Public
SESSIONNAME=Console
SystemDrive=C:
SystemRoot=C:\Windows
TEMP=C:\Users\scott\AppData\Local\Temp
TMP=C:\Users\scott\AppData\Local\Temp
USERDOMAIN=DESKTOP-RU76NQ0
USERDOMAIN_ROAMINGPROFILE=DESKTOP-RU76NQ0
USERNAME=scott
USERPROFILE=C:\Users\scott
WINDBG_DIR=C:\Program Files (x86)\Windows Kits\10\Debuggers\x64
windir=C:\Windows
,
Mar 10 2017
So, looks like we're getting shimmed for ConfigurePTPScrolling whatever that is, which in turn causes the earlier-than-us DLL loads.
,
Mar 10 2017
I'm going to guess not Peer-To-Peer Scolling. How about Precision Touch(p)ad https://msdn.microsoft.com/en-us/windows/hardware/commercialize/design/component-guidelines/precision-touchpad-tests . Anyone know anything about precision touchpads, and how we might avoid being shimmed for them? Otherwise, we may as well remove chrome_elf as it's not doing anything on 10.
,
Mar 10 2017
,
Mar 11 2017
I tried this in build/win/compatibility.manifest
<windowsSettings>
<highResolutionScrollingAware
xmlns="http://schemas.microsoft.com/SMI/2013/WindowsSettings">
true
</highResolutionScrollingAware>
<ultraHighResolutionScrollingAware
xmlns="http://schemas.microsoft.com/SMI/2013/WindowsSettings">
true
</ultraHighResolutionScrollingAware>
</windowsSettings>
(and also setting it to false) but doesn't make any difference either way, we still get shimmed.
,
Mar 11 2017
Per Rob, trying to rename chrome.exe to khrome.exe changes things slightly for the better, but we still get apphelp and so advapi32 too early. CommandLine: out\release\khrome.exe ************* Symbol Path validation summary ************** Response Time (ms) Location Deferred SRV*c:\Symbols*https://msdl.microsoft.com/download/symbols Deferred SRV*c:\Symbols*https://chromium-browser-symsrv.commondatastorage.googleapis.com Deferred srv*c:\stuff\3023-symbols*https://chromium-browser-symsrv.commondatastorage.googleapis.com Symbol search path is: SRV*c:\Symbols*https://msdl.microsoft.com/download/symbols;SRV*c:\Symbols*https://chromium-browser-symsrv.commondatastorage.googleapis.com;srv*c:\stuff\3023-symbols*https://chromium-browser-symsrv.commondatastorage.googleapis.com Executable search path is: ModLoad: 002d0000 003c6000 chrome.exe ModLoad: 76ed0000 77053000 ntdll.dll ModLoad: 75b00000 75be0000 WOW64_IMAGE_SECTION ModLoad: 75b00000 75be0000 C:\WINDOWS\SysWOW64\KERNEL32.DLL ModLoad: 73a80000 73c21000 C:\WINDOWS\SysWOW64\KERNELBASE.dll ModLoad: 73880000 73912000 C:\WINDOWS\SysWOW64\apphelp.dll ModLoad: 76da0000 76e17000 C:\WINDOWS\SysWOW64\ADVAPI32.dll ModLoad: 051f0000 05263000 c:\src\cr\src\out\release\chrome_elf.dll It seems like we need to do some outreach here to Microsoft to determine why we were added, and if there's something we can fix to be removed.
,
Mar 11 2017
Microsoft seems to have recently added a blanket policy to Chrome. If the application matches the following, the shim will be applied: * Filename: chrome.exe * FILE_DESCRIPTION: Google Chrome * COMPANY_NAME: Google Inc. Creating a Hello World like program with the above will result in running with the patched environment. We'll need to talk to Microsoft to update the database.
,
Mar 12 2017
<sigh> Well that explains why this behaviour doesn't get flagged on the chrome_elf tests on win10 bot. It doesn't match the app filter - we don't test chrome_elf with a full chrome.exe. I'd be very interested to know why they added us to some rando shim policy. It might be worth adding some sort of test that launches one full chrome.exe process during chrome_elf tests. Something like ChromeElfLoadSanityTest that checks for user32.dll.
,
Mar 20 2017
That's what I saw looking at the appcompat DB in #c6 too, but even when the binary is renamed we still get advapi32 before chrome_elf.dll due to apphelp.dll (see #c10). Do we know why that's happening and why it's not caught by tests?
,
Apr 4 2017
Did we get Microsoft to engage on this or should we ping them again?
,
Apr 5 2017
Hey Rob, Scott.... I just want to confirm that one of you is reaching out to MS about the shimming for scrolling/touchpad. I had kind of assumed you were? Please assign this ticket to yourself if you're communicating with Microsoft about the shimming. WRT #13, I've opened another ticket (crbug/708756) for advapi32/usermode import dependencies sneaking in. Tests are here: https://cs.chromium.org/chromium/src/chrome_elf/elf_imports_unittest.cc Looks like advapi32 was unfortunately added to the chrome_elf import whitelist in the tests in: https://chromium.googlesource.com/chromium/src/+/69086d7673ae14680c6451cec3b1160942885327 Let's move that discussion to the new ticket and leave this ticket for the Microsoft shimming (that we have no control over from inside chrome and elf)!
,
Apr 5 2017
I get the feeling apphelp.dll might be from a shim/appcompat situation as well. Just based on the tests not blowing up.
,
Apr 5 2017
I don't think anyone has made any inquiries to Microsoft.
,
Apr 5 2017
Confirmed: apphelp.dll is the AppCompat API dll (>=vista). https://msdn.microsoft.com/en-us/library/bb432182(v=vs.85).aspx
,
Apr 5 2017
,
Apr 7 2017
brucedawson will be engaging with Microsoft support for this issue.
,
Apr 7 2017
Support request 117040715574340 created. I will update this bug as I learn more.
,
May 6 2017
,
May 7 2018
This issue has been Available for over a year. If it's no longer important or seems unlikely to be fixed, please consider closing it out. If it is important, please re-triage the issue. Sorry for the inconvenience if the bug really should have been left as Available. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
May 8 2018
Microsoft's eventual reply, from August 2017, was: "The ConfigurePTPScrolling shim has been removed from RS3 builds on or after 16259 and your input lead has been directly engaged with our input team." So, as of the Fall Creators Update this issue should be resolved. Is there anything else we need to do?
,
May 8 2018
Marking as fixed. Reopen with details if needed.
,
May 8 2018
An integration test would be nice, but I guess since we're mostly at the whim of the OS it'd be difficult to run in all the configs it'd need to run. |
||||||||||
►
Sign in to add a comment |
||||||||||
Comment 1 by scottmg@chromium.org
, Mar 10 2017