Testing drm-i915-update-38 (c6d9af5) with patched i915_gem.c, encouraging results.
Arto Pekkanen
isoa at kapsi.fi
Mon Feb 8 03:09:14 UTC 2016
Hi again.
I realized that previously the drm-i915-update-38 (c6d9af5) kernel
crashed because of a BUG_ON trap in i915_gem.c, not because of actual
code fault.
Then I found the following discussion in GitHub:
https://github.com/freebsd/freebsd-base-graphics/issues/2
There the user myfreeweb "McGyver'd" the BUG_ON trap away by replacing
it with WARN_ON -macro. I wanted to see if the driver would work, so I
did the same.
Attached is the diff that replaces BUG_ON with WARN_ON in i915_gem.c and
thus makes the kernel not crash while playing games/openarena.
The results:
- kernel boots
- vt console works
- LVDS + 2 monitors on HDMI2 and HDMI3, all work with native
resolutions,
NOTE: this is an IMPROVEMENT! Previously X.org would HANG if I enabled
more than 2 monitors!
- video playback is perfect, no tearing, minimal CPU use, tested with
- www/chromium
- multimedia/mpv (with VAAPI enabled in multimedia/mpv and
multimedia/ffmpeg)
- games/openarena works just fine
In fact, I can actually run games/openarena at the same time with
www/chromium wathing https://www.youtube.com/watch?v=5xkNy9gfKOg (full
HD tearing test video), with some stuttering on both ... but this is to
be expected, because the kernel has to serve 2 OpenGL pipes at the same
time which is problematic.
And because I can now use 3 outputs at the same time, I am very
impressed.
I see many warnings like this in dmesg:
Feb 8 04:33:15 leno kernel: error:
[drm:pid1073:i915_gem_object_move_to_inactive] *ERROR* WARN ON:
obj->base.write_domain & ~I915_GEM_GPU_DOMAINS
The frequency between these errors is about one second when I run
games/openarena. With www/chromium I do not see these warnings.
The only real gripe I have is that the FreeBSD 11 -based kernel does not
detect my Intel Wifi chip, yet stock FreeBSD 10.2 was able to do that.
Should I report this as a regression somewhere? The problem with
reporting this is that I am running FreeBSD 10.2 userland, and I feel
like the developers might not want to deal with that.
I will leave the laptop on while I sleep, leave it running the Tearing
Test -video mentioned above. If it crashes I will post core dump etc.
--
Arto Pekkanen
More information about the freebsd-x11
mailing list