Closed
Bug 1382592
Opened 8 years ago
Closed 7 years ago
Cannot run Nightly 56 on Wine: err:module:attach_process_dlls "mozglue.dll" failed to initialize, aborting
Categories
(External Software Affecting Firefox :: Other, defect)
External Software Affecting Firefox
Other
Tracking
(firefox54 unaffected, firefox55 unaffected, firefox56 fixed)
RESOLVED
FIXED
Tracking | Status | |
---|---|---|
firefox54 | --- | unaffected |
firefox55 | --- | unaffected |
firefox56 | --- | fixed |
People
(Reporter: jlorenzo, Unassigned)
References
Details
(Keywords: regression)
Attachments
(1 file)
3.29 MB,
text/x-log
|
Details |
CONTEXT
While testing Windows builds coming out of the new Taskcluster infrastructure, I noticed I was unable to start them. After some investigation, the problem has been there in regular builds for some weeks.
STEPS TO REPRODUCE
1. Download a windows nightly installer on Linux.
2. Install it via `wine firefox-56.0a1.en-US.win64.installer.exe`
RESULTS
At the end of the installation, when Firefox should boot up, this error comes up on the console:
> err:module:attach_process_dlls "mozglue.dll" failed to initialize, aborting
Nightly doesn't show up.
For more information, see attached trace logs.
TESTED BINARIES
* Firefox 54.0.1 => Runs fine
* Firefox 55.0b10 => Runs fine
* https://archive.mozilla.org/pub/firefox/nightly/2017/07/2017-07-19-03-02-06-mozilla-central/firefox-56.0a1.en-US.win64.installer.exe => Not OK
* https://archive.mozilla.org/pub/firefox/nightly/2017/05/2017-05-29-03-02-04-mozilla-central/firefox-55.0a1.en-US.win64.installer.exe => Runs fine.
CONCLUSION
That's a regression that happened on central between 2017-07-19 and 2017-05-29. I don't know whether this bug should be in mozglue, or in the build config. I guess a finer regression window will help us out.
I also don't know if this is going to impact projects like wine-gecko[1], which provides mozglue.dll for the rest of the wine environment.
[1] https://wiki.winehq.org/Gecko
Comment 1•8 years ago
|
||
Can you get a narrower regression window with mozregression?
Reporter | ||
Comment 2•8 years ago
|
||
Mozregression gave: https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=7da6c99070996a8d0baa4013d4c0b515f8045fa2&tochange=37e047b6187f8a2cc9ce30268d42977e679db84e. That patch seems related to the failure given by wine. What do you think, Jeff?
For reference, using mozregression on Linux needed some hacks in mozinfo. I basically forced info['os'] to 'win' at [1]. I also changed `globals()['isWin']`, `globals()['isLinux']` and `globals()['isLinux']` at [2]. I'm not sure the second hack is needed.
Then I ran the command:
> mozregression -P stdout --command 'wine {binary}' --repo=mozilla-central --good=2017-06-28 --bad=2017-07-01
[1] https://dxr.mozilla.org/mozilla-central/rev/1b065ffd8a535a0ad4c39a912af18e948e6a42c1/testing/mozbase/mozinfo/mozinfo/mozinfo.py#115
[2] https://dxr.mozilla.org/mozilla-central/rev/1b065ffd8a535a0ad4c39a912af18e948e6a42c1/testing/mozbase/mozinfo/mozinfo/mozinfo.py#208
Blocks: 1376057
Component: mozglue → Build Config
Flags: needinfo?(jgilbert)
Keywords: regressionwindow-wanted
Comment 3•8 years ago
|
||
Does WINE not support std::exception::_Set_raise_handler somehow?
Flags: needinfo?(jgilbert)
Reporter | ||
Comment 4•8 years ago
|
||
I'm sorry, I don't know the answer. I'm not familiar with the internals of wine, either. Nonetheless, I looked up the problem, and it seems it doesn't.
I searched back in the logs I attached, and "_Set_raise_handler" doesn't appear. The closest related warning is this one:
> 111690.193:002f:0030:warn:seh:call_stack_handlers exception data not found in L"mozglue.dll"
Google doesn't return any result for "wine _Set_raise_handler". "_Set_raise_handler" alone doesn't show anything related to wine, at first.
For the record, I run wine-2.12 which is the latest available development release[1].
Would you know how to check that support with a small piece of code, Jeff?
[1] https://www.winehq.org/news/2017070701
Flags: needinfo?(jgilbert)
Updated•7 years ago
|
Reporter | ||
Comment 5•7 years ago
|
||
CC'ing Jacek who's the maintainer of wine-gecko[1]. Per the timestamps of the commits on the fork[2], it might not need an immediate fix. Could you confirm, Jacek?
[1] https://wiki.winehq.org/Gecko
[2] https://sourceforge.net/p/wine/wine-gecko
Flags: needinfo?(jacek)
Comment 6•7 years ago
|
||
Looking at attached logs, it seems to be a Wine bug. std::_Raise_handler is not implemented. It's wrongly exported as a stub, which means it's an entry point to code section that is write protected causing the observed crash. I will take a look at fixing it in Wine.
Flags: needinfo?(jacek)
Reporter | ||
Comment 7•7 years ago
|
||
Thank you very much for the details, Jacek. I'm moving this bug in another component, then. Please let us know if we should move it back or elsewhere.
Component: Build Config → Other
Flags: needinfo?(jgilbert)
Product: Core → External Software Affecting Firefox
Comment 8•7 years ago
|
||
I sent a patch to Wine:
https://source.winehq.org/patches/data/136312
I will let you know when it's accepted to the tree.
Comment 9•7 years ago
|
||
The fix is in Wine and Wine 2.14 was released today (containing the patch). Thanks for the report.
Reporter | ||
Comment 10•7 years ago
|
||
Amazing! Thank you Jacek!
I checked the broken Nightly in comment 0[1] and the latest one[2]. Both worked well on wine 2.14.
[1] https://archive.mozilla.org/pub/firefox/nightly/2017/07/2017-07-19-03-02-06-mozilla-central/firefox-56.0a1.en-US.win64.installer.exe
[2] https://archive.mozilla.org/pub/firefox/nightly/2017/08/2017-08-03-13-44-56-mozilla-central/firefox-57.0a1.en-US.win64.zip
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Updated•7 years ago
|
You need to log in
before you can comment on or make changes to this bug.
Description
•