ValveSoftware / Proton

Compatibility tool for Steam Play based on Wine and additional components
Other
24.15k stars 1.06k forks source link

Proton 4.11-4 crashes/hangs with Wacom tablet attached #3059

Closed jp7677 closed 5 years ago

jp7677 commented 5 years ago

Hi there,

I'm using a Wacom Tablet (Intous 3) instead of a "normal" mouse attached to my machine. With Proton 4.11-4 I'm experiencing a lot of games that either hang or crash during startup, not all though. Everything is fine again when switching to a regular mouse.

Games that crash:
Lego Star Wars (32440) wine: Unhandled page fault on read access to 0x00000906 at address 0x7bc72112 (thread 0030), starting debugger... steam-32440.log Lego Indiana Jone (32330) wine: Unhandled page fault on read access to 0xfeeefef2 at address 0x7bc70152 (thread 0030), starting debugger... steam-32330.log Hitman 2 (863550) Crashes only when my Steam Controller is attached too, start fine without connected Steam Controller. wine: Unhandled page fault on read access to 0xa0200000030 at address 0x7bc65b0b (thread 0036), starting debugger... steam-863550.log

Games that hang on startup: Lego Jurassic World (352400) steam-352400.log GTA 5 (271590) steam-271590.log Pro Evolution Soccer (770240) steam-770240.log Resident Evil 2 (883710) steam-883710.log

Other games, e.g. The Witcher III, Assetto Corsa Competione (Unreal Engine 4) and some others here do start fine.

The log from the device detection steam on startup looks like:

Local Device Found
  type: 28de 1102
  path: /dev/hidraw6
  serial_number:  - 1
  Manufacturer: Valve Software
  Product:      Wired Controller
  Release:      100
  Interface:    0

Local Device Found
  type: 28de 1102
  path: /dev/hidraw7
  serial_number:  - 1
  Manufacturer: Valve Software
  Product:      Wired Controller
  Release:      100
  Interface:    1

Local Device Found
  type: 056a 00b1
  path: sdl://0
  serial_number:  - 0
  Manufacturer: 
  Product:      Wacom Intuos3 6x8 Pen
  Release:      100
  Interface:    -1

Local Device Found
  type: 056a 00b1
  path: sdl://1
  serial_number:  - 0
  Manufacturer: 
  Product:      Wacom Intuos3 6x8 Pad
  Release:      100
  Interface:    -1

I have a udev rule which should prevent the Wacom tablet to appear as joystick, ~not sure if this has effect here~:

# /etc/udev/rules.d/51-these-are-not-joysticks.rules
#
# This file is inspired by:
# https://github.com/denilsonsa/udev-joystick-blacklist

SUBSYSTEM=="input", ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00b1", ENV{ID_INPUT_JOYSTICK}=="?*", ENV{ID_INPUT_JOYSTICK}=""
SUBSYSTEM=="input", ATTRS{idVendor}=="056a", ATTRS{idProduct}=="00b1", KERNEL=="js[0-9]*", MODE="0000", ENV{ID_INPUT_JOYSTICK}=""

(Edit Disabling that rule does not resolve this issue. Actually I'm not even sure that I applied that rule correctly. lsusb says Bus 003 Device 006: ID 056a:00b1 Wacom Co., Ltd PTZ-630 [Intuos3 (6x8)])

As stated above, all mentioned games do start fine when I disconnect the Wacom Tablet. I haven't had this issue with Proton Version 4.11-3.

The logs where created with WINEDEBUG": "err+all,warn+all,fixme+all,+loaddll,+debugstr". Please let me know if I can assist any further.

kisak-valve commented 5 years ago

Hello @jp7677, what is the most recent known good Proton version for you?

jp7677 commented 5 years ago

Hi @kisak-valve, thanks for responding. I have this issue only with the latest 4.11-4 Version. Version 4.11-3 does not have this issue.

aeikum commented 5 years ago

Hi @jp7677 thanks for the very nice bug report. Can you gather another log with these channels: +timestamp,+pid,+tid,+seh,+debugstr,+loaddll,+xinput,+dinput,+plugplay,+hid,+hidp,+hid_report,+wbemprox? Let's focus on just one game for now. Say, Lego Star Wars? It's up to you. The crash logs you posted all look substantially similar, so hopefully fixing one will fix all of them.

jp7677 commented 5 years ago

Hi @aeikum thanks for the compliment. Here is a log from one of the Lego games with the channels you asked for. steam-32330.log

aeikum commented 5 years ago

@jp7677 Thanks, I think I see the problem. I have a fix you can try out. To test this, head into the Proton directory and unpack this tarball proton_3059.tar.gz. It will overwrite two dinput files. Then try running a game and see if it's improved. For example:

cd "Proton 4.11/"
tar -xvvf /tmp/proton_3059.tar.gz

To restore back to the original Proton files, just delete the dist/ directory entirely and Proton will unpack it next time you run a game.

jp7677 commented 5 years ago

Hi @aeikum Thanks a lot for the very fast response. Yes, all good again with your patched dinput dll's. I have briefly started all the games I mentioned and no issues anymore. Very cool!

Should I close this issue report or do you prefer to keep it open until the next Proton release?

aeikum commented 5 years ago

Great! I'll get a new build started soon, since this is impacting a number of people. Please leave the bug open, we'll close it after the next release.

aeikum commented 5 years ago

Hello, 4.11-5 was released today and contains the fix. Please retest!

jp7677 commented 5 years ago

All good here with version 4.11-5, I have no startup issues anymore. Thanks a lot.