Created attachment 55679 [details] [review] Patch to reproduce the issue Running Ubuntu 12.04 + libva(master) + i965(master) when vaPutSurface is called with VA_TOP_FIELD the machine suffer a crash and a hard reset is the only way. The issue is reproducible with mpeg2vldemo test in libva when the attached patch is applied. The issue seems to be related to bug #44554 as I've already seen the same kind of dmesg output. drm:i915_hangcheck_elapsed] *ERROR* Hangcheck timer elapsed... GPU hung
Could you try with libva (vaapi-ext) + i965(vaapi-ext) ?
Me too have the same problem with field encoded content (master branch). vaapi-ext branch won't crash with TOP and BOT filed alteration in vaPutSurface. But if the use case is to just display the field pictures , then you can render both TOP and BOT field to same surface I think.
(In reply to comment #1) > Could you try with libva (vaapi-ext) + i965(vaapi-ext) ? I'll give a try to -ext branches next week when I'll have access to the box again. But I'm worried on what is shipped in the distros as they relay on the releases instead of the branches and if the issue is not solved we will have to deactivate the support for mpeg2 in the next release of our elements on the i965 hardware.
(In reply to comment #2) > Me too have the same problem with field encoded content (master branch). > vaapi-ext branch won't crash with TOP and BOT filed alteration in vaPutSurface. > But if the use case is to just display the field pictures , then you can render > both TOP and BOT field to same surface I think. We have implemented BOB deinterlacing by rendering on the drawable the scaled fields instead of the single surface with both fields. That's the reason we use the TOP/BOTTOM field flags in vaPutSurface.
I've tried with today's master (libva & i965) and the behaviour seems to be racy but it crashes the box sooner or later. I ve got a long freeze and suddenly it started to render some frames frames. Then followed another freeze and some more frames had been rendered. I've experienced this behavior in a single attempt and for an unknown reasons the following attempts just crashed the box. As I've already had an ssh connection on the box I've been able to capture the following messages in dmesg during the freezes. [ 244.814039] [drm:i915_hangcheck_elapsed] *ERROR* Hangcheck timer elapsed... GPU hung [ 244.814051] [drm] capturing error event; look for more information in /debug/dri/0/i915_error_state [ 244.823503] [drm:i915_wait_request] *ERROR* i915_wait_request returns -11 (awaiting 4076 at 4071, next 4077) [ 251.523245] [drm:i915_hangcheck_elapsed] *ERROR* Hangcheck timer elapsed... GPU hung [ 251.523312] [drm:i915_wait_request] *ERROR* i915_wait_request returns -11 (awaiting 4167 at 4127, next 4168) I've couldn't find '/debug/dri/0/i915_error_state', let me know how to recover this info if you need it.
(In reply to comment #1) > Could you try with libva (vaapi-ext) + i965(vaapi-ext) ? I've updated as per today -ext branches with a better result. It seems that it doesn't crash the box. To build it I had to apply the following change in libva. diff --git a/configure.ac b/configure.ac index 8917b6a..6af9659 100644 --- a/configure.ac +++ b/configure.ac @@ -242,6 +242,7 @@ AC_OUTPUT([ test/encode/Makefile test/putsurface/Makefile test/vainfo/Makefile + test/transcode/Makefile va/Makefile va/dummy/Makefile va/egl/Makefile
Hi, the following patch will be pushed to master. Please give it a try. Thanks. http://lists.freedesktop.org/archives/libva/2012-March/000795.html This correctly implements the API, i.e. display only either field of a surface.
The fix is now available in master and v1.0-branch branches.
Will you please try the latest intel-vaapi driver and see whether the issue still exists?
No response for 1.5 years. I guess we can close this.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.