Bug 70931

Summary: Xv causes player segfaults when 4K is decoded
Product: xorg Reporter: Nikoli <nikoli>
Component: Driver/nouveauAssignee: Nouveau Project <nouveau>
Status: RESOLVED MOVED QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium CC: TomWij
Version: unspecified   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
gdb output for 'mpv -vo xv sintel.mkv'
none
sample.mkv
none
patch none

Description Nikoli 2013-10-27 19:22:26 UTC
Created attachment 88194 [details]
gdb output for 'mpv -vo xv sintel.mkv'

avprobe output:
Stream #0.0(eng): Video: h264 (High 4:4:4 Predictive), yuv444p10le, 4096x1744 [PAR 1:1 DAR 256:109], 24 fps, 24 tbr, 1k tbn, 48 tbc (default)

When trying to play 4K video with Xv video outputs mpv, mplayer2 and vlc segfault.
https://github.com/mpv-player/mpv/issues/320
"the segfault is because the XvShmCreateImage API function returns a smaller image than requested, which, if I read the manpage right, is not allowed."
My software:
Gentoo Linux amd64 stable, kernel 3.9.9-hardened, mesa-9.1.6, xf86-video-nouveau-1.0.9, libXv-1.0.10, libdrm-2.4.46, xorg-server-1.14.3, libav-9.10
Hardware:
01:00.0 VGA compatible controller: NVIDIA Corporation G86M [GeForce 8400M GS] (rev a1)

Used this file for testing:
http://rutracker.org/forum/viewtopic.php?t=4131293
Can upload sample if required.
P.S. With radeon r600g this file works fine, is any 4K playable with nouveau now?
Comment 1 Nikoli 2013-10-27 19:52:25 UTC
Created attachment 88195 [details]
sample.mkv

Added sample.
Comment 2 Ilia Mirkin 2014-08-22 01:29:34 UTC
Created attachment 105069 [details] [review]
patch

Untested patch to get rid of the wrong size check. Unfortunately at query time we aren't passed the port pointer by the DDX API. Instead check it at PutImage time and return a BadMatch if you do something bad.
Comment 3 Martin Peres 2019-12-04 08:38:49 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/xorg/driver/xf86-video-nouveau/issues/67.

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.