Summary: | media-libs/mesa-9.0[g3dvl,vdpau]: Segmentation fault at surface.c:366 with media-video/mplayer | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Walther <walther.md> |
Component: | [OLD] Library | Assignee: | Gentoo X packagers <x11> |
Status: | RESOLVED UPSTREAM | ||
Severity: | normal | CC: | rose |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: | Sample patch that shows one way around the crash. |
Description
Walther
2012-12-02 10:12:07 UTC
Upon further inspection, the crash is caused because vlVdpVideoSurfaceClear assumes that the surfaces pointer array returned by get_surfaces() has VL_MAX_SURFACES elements, whereas the surfaces array returned by nouveau_video_buffer_surfaces only has 3 elements (as is defined in src/gallium/drivers/nouveau/nouveau_video.h, "struct nouveau_video_buffer"). If I change surfaces[3] to surfaces[VL_MAX_SURFACES], and initialize these to null, then the crash goes away, and the video plays. However, from time to time the video stalls for several seconds before updating. With my current knowledge of the software, I cannot guess at what might be causing that problem. Created attachment 331814 [details, diff]
Sample patch that shows one way around the crash.
Is this still a problem with a more recent Mesa (try >=10.5.0_rc1)? If so, please let us know and then report to upstream. *** Bug 476120 has been marked as a duplicate of this bug. *** |