Project

General

Profile

Actions

Emulator Issues #9853

closed

Ubuntu 16.10 enables PIE by default

Added by legluondunet over 7 years ago. Updated over 7 years ago.

Status:
Fixed
Priority:
Normal
Assignee:
-
% Done:

0%

Operating system:
Linux
Issue type:
Bug
Milestone:
Regression:
No
Relates to usability:
No
Relates to performance:
No
Easy:
Yes
Relates to maintainability:
No
Regression start:
Fixed in:
5.0-1174

Description

Game Name?

ALL GAMES

What's the problem? Describe what went wrong.

Whatever the game I launch, Dolphin crashes

What steps will reproduce the problem?

When I launch a game, I obtain this message:
WriteRest: op out of range (0x412940e2 uses 0x55c7cce800e8)

I can click yes or not

If I click "not", Dolphin crashes, if I click "yes", same message appear again and again

Which versions of Dolphin did you test on? Does using an older version of Dolphin solve your issue? If yes, which versions of Dolphin used to work?

git version from the 15th October 2016

What are your PC specifications? (CPU, GPU, Operating System, more)

Config: Ubuntu 16.10 Yakkety Yak 64 bits - NVIDIA GeForce GTX 770 - official Ubuntu Nvidia drivers 367.57 - resolution 1920x1080 - Processor Intel i5-3570 3,4 Ghz - 8 Go RAM

Is there any other relevant information? (e.g. logs, screenshots,
configuration files)

I installed the last version from PPA, same bug

Actions #1

Updated by JosJuice over 7 years ago

For future reference, the latest git version as of right now (15th October, 14:36 UTC) is https://github.com/dolphin-emu/dolphin/commit/183f3c375971233213bbc4a222a76c8f3940ebe5

Does this problem happen in Dolphin 5.0 too? If it doesn't, it would be very helpful if you could bisect the exact version where it starts happening.

Actions #3

Updated by JosJuice over 7 years ago

Nope, that tool is for Windows. You can use git bisect instead.

Actions #4

Updated by legluondunet over 7 years ago

JosJuice wrote:

Nope, that tool is for Windows. You can use git bisect instead.

I don't know how to do that.
But I know how to download an older revision from git web page.
I'll give a try to the 9th october version or older...

Actions #5

Updated by JosJuice over 7 years ago

That's fine. Use whatever way you are comfortable with.

Actions #6

Updated by legluondunet over 7 years ago

I compiled two older versions:
from the 9th and 3th...same bug.

I try to install last version from this PPA:
https://launchpad.net/~dolphin-emu/+archive/ubuntu/ppa
same message

I installed the version from Ubuntu 16.10 official repo, same message...
Someone could try and tell me if it has the same bug as me on Ubuntu 16.10?

Actions #7

Updated by legluondunet over 7 years ago

I uninstalled NVIDIA drivers to test with open source drivers, same message...

Actions #8

Updated by legluondunet over 7 years ago

Same message with the dolphin nogui version.
How is it possible to obtain a debug log?

Actions #9

Updated by legluondunet over 7 years ago

I installed the last PPA version from this page https://launchpad.net/~dolphin-emu/+archive/ubuntu/ppa on another computer with Ubuntu 16.10 installed, dolphin crashed with same error message...
Please tell me how I could help you to debug this crash.

Actions #10

Updated by JosJuice over 7 years ago

Does the problem happen in the stable 5.0 version?

Actions #11

Updated by Fog over 7 years ago

Looks like it's a PIE specific issue with Ubuntu 16.10 as it's enabled by default: https://wiki.ubuntu.com/SecurityTeam/PIE

Can you try compiling from source, and use the -no-pie option?

Actions #12

Updated by legluondunet over 7 years ago

Josjuice: where is the dolphin stable version for Ubuntu? Wich version?
Did you tried to launch Dolphin on Ubuntu 16.10?

Actions #13

Updated by JosJuice over 7 years ago

The stable 5.0 version is https://github.com/dolphin-emu/dolphin/releases/tag/5.0

However, you should really try Fog's suggestion first. This is very likely to be a PIE issue, and in that case, 5.0 won't work either.

No, I haven't tried launching Dolphin on Ubuntu 16.10, because I don't use Ubuntu generally.

Actions #14

Updated by legluondunet over 7 years ago

OK, I will compile the 5.0 stable version with option:

$make CUSTOMOPT="-no-pie"

the command is correct?

Actions #15

Updated by legluondunet over 7 years ago

I compiled the 5.0 stable version with option:

$make CUSTOMOPT="-no-pie"

and I obtain the same crash...

On Ubuntu 16.04 last dolphin git version worked great...:/

Actions #16

Updated by Fog over 7 years ago

legluondunet wrote:

I compiled the 5.0 stable version with option:

$make CUSTOMOPT="-no-pie"

and I obtain the same crash...

On Ubuntu 16.04 last dolphin git version worked great...:/

Try changing this line: https://github.com/dolphin-emu/dolphin/blob/master/CMakeLists.txt#L205

To the following: set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -fno-pie -no-pie")

Actions #17

Updated by legluondunet over 7 years ago

the last git compiled and worked OK if I:

change this line: https://github.com/dolphin-emu/dolphin/blob/master/CMakeLists.txt#L205

To the following: set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -fno-pie -no-pie")

Thank you

Actions #18

Updated by Fog over 7 years ago

  • Subject changed from WriteRest: op out of range (0x412940e2 uses 0x55c7cce800e8) to Ubuntu 16.10 enables PIE by default
  • Status changed from New to Accepted
  • Easy changed from No to Yes
  • Operating system Linux added
  • Operating system deleted (N/A)
Actions #19

Updated by JosJuice over 7 years ago

Fog, I'm pretty sure that the fact that Ubuntu 16.10 enables PIE by default isn't what should be "fixed". Is the issue here that the x64 JIT doesn't support PIE, or that we should change how Dolphin is built so it won't try to build a PIE?

Actions #20

Updated by degasus over 7 years ago

I fear in the long term, we have to be PIE compatible. More plattforms will move to this way, and at some point, they'll make PIE as an requirement (eg on android right now)

Actions #21

Updated by Fog over 7 years ago

JosJuice wrote:

Fog, I'm pretty sure that the fact that Ubuntu 16.10 enables PIE by default isn't what should be "fixed". Is the issue here that the x64 JIT doesn't support PIE, or that we should change how Dolphin is built so it won't try to build a PIE?

The easy way out is adding the GCC flag to build with no PIE, but the proper solution would be to fix the JIT so that it can run in PIE.

Actions #22

Updated by Fog over 7 years ago

Can you try building this PR directly to see if it resolves the issue as well?

https://github.com/dolphin-emu/dolphin/pull/4365

Actions #23

Updated by JosJuice over 7 years ago

  • Status changed from Accepted to Fixed
  • Fixed in set to 5.0-1174

Dolphin now disables PIE automatically in a way that works on Ubuntu 16.10.

https://dolphin-emu.org/download/dev/4cf873ea7359ce2e523bff422cc8c6fc1e26beea/

Actions

Also available in: Atom PDF