Bug 1222715

Summary: segmentation fault with vdr-plugin-xineliboutput and libvdpau
Product: [openSUSE] openSUSE Distribution Reporter: Peter Münster <pmlists>
Component: OtherAssignee: Stefan Seyfried <seife>
Status: RESOLVED WORKSFORME QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None CC: pmlists
Version: Leap 15.5   
Target Milestone: ---   
Hardware: x86-64   
OS: openSUSE Leap 15.5   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Peter Münster 2024-04-12 08:25:04 UTC
Hello,

With a fresh new installation of Leap-15.5 I get a segmentation fault when trying to run vdr with xineliboutput and vdpau video driver.

Steps to reproduce:

- new installation of Leap-15.5 (basic graphical interface)
- zypper ar https://download.opensuse.org/repositories/vdr/15.5/vdr.repo
- zypper in vdr-plugin-xineliboutput
- vdr -P"xineliboutput -Vvdpau"

Last lines on the terminal:
video_decoder: first_frame_flag = 2.
load_plugins: plugin dxr3-mpeg2 failed to instantiate itself.
video_out_vdpau: video surface #9 (1920 x 1080) aligned to (1920 x 1088).
video_out: vo_open (0x7f414c541640)
load_plugins: plugin vdpau_mpeg12 will be used for video streamtype 00.
video_out_vdpau: video surface #10 (704 x 576).
Segmentation fault

Last line of journal:
vdr[4629]: [4639] [xine..put] cXinelibLocal::Action - fe config OK
vdr[4629]: [4646] [demux_vdr] video fifo flush and decoder reset after still image
vdr[4629]: [4646] [demux_vdr] H.264 scanner: Possible MPEG2 start code (0xb3)
kernel: Local decoder/d[4643]: segfault at 48 ip 00007f4157688e25 sp 00007f413e9fe460 error 4 in libvdpau_r600.so.1.0.0[7f4157200000+b71000] likely on CPU 1 (core 1, socket 0)
kernel: Code: 45 00 01 f0 83 2e 01 0f 84 c0 01 00 00 0f 1f 84 00 00 00 00 00 48 8b 83 d8 00 00 00 48 89 ab e8 00 00 00 66 0f ef c0 49 89 e4 <48> 8b 68 48 0f b7 45 44 0f b7 55 40 0f 29 04 24 48 89 ee c6 43 3f

Kind regards, Peter
Comment 1 Stefan Seyfried 2024-05-22 10:21:33 UTC
Sorry, I can only test vdr-plugin-xineliboutput in remote mode (via vdr-sxfe) and that one works.
I also have no radeon card to reproduce the crash (a quick test locally on intel graphics did not segfault, but I had no input device to test with).

So unless you have a patch that I could apply, there is unfortunately not much I can do.
Does it work without VDPAU?
Comment 2 Peter Münster 2024-05-23 14:01:50 UTC
(In reply to Stefan Seyfried from comment #1)

> Does it work without VDPAU?

Yes.
Comment 3 Stefan Seyfried 2024-05-24 13:11:15 UTC
Then please check if it is a generic xine problem, with something like

xine -V vdpau file.mp4

If this also segfaults, it is a xine problem.
But even if this is not a xine but a vdr-xineliboutput problem, unless there is an upstream patch there is not much I can do to resolve this.
Comment 4 Peter Münster 2024-05-27 14:57:46 UTC
(In reply to Stefan Seyfried from comment #3)
> Then please check if it is a generic xine problem, with something like
> 
> xine -V vdpau file.mp4

No segfault here...
Comment 5 Stefan Seyfried 2024-05-28 09:14:19 UTC
Too bad ;-)

Still, nothing I can do here unless upstream has an patch for the issue.
I'd suggest to just not use VDPAU then.
Comment 6 Stefan Seyfried 2024-05-28 09:15:42 UTC
Hm, maybe it is specific to mpeg2 playback? so maybe also try playing a mpeg2 (SDTV vdr recording) with xine..., maybe this will trigger the segfault there, too?
Comment 7 Stefan Seyfried 2024-05-28 19:35:10 UTC
there is actually a new release 2.3.0 on sourceforge
But there is no mentioning of vdpau fixes in the changelog
I submitted it to the vdr project anyway after a quick smoke test, maybe this helps your issue
Comment 8 Peter Münster 2024-05-29 08:25:03 UTC
(In reply to Stefan Seyfried from comment #6)
> so maybe also try playing a mpeg2 (SDTV vdr recording) with xine

Then I have another error:

This is xine (X11 gui) - a free video player v0.99.14.
(c) 2000-2019 The xine Team.
xiTK received SIGSEGV signal, RIP.
Aborted (core dumped)
Comment 9 Peter Münster 2024-05-29 13:32:46 UTC
I’ve tried with VLC now.

Output on terminal:

VLC media player 3.0.20 Vetinari (revision 3.0.20-0-g6f0d0ab126b)
[0000559cd56ff0d0] vlcpulse audio output error: PulseAudio server connection failure: Connection refused
[0000559cd56674c0] main libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface.
[00007f22f0007da0] gl gl: Initialized libplacebo v4.208.0 (API v208)
libva info: VA-API version 1.16.0
libva info: Trying to open /usr/lib64/dri/r600_drv_video.so
libva info: Found init function __vaDriverInit_1_16
libva info: va_openDriver() returns 0
[00007f2300c07480] avcodec decoder: Using Mesa Gallium driver 22.3.5 for AMD RV730 (DRM 2.50.0 / 6.8.8-lp155.9.1-default, LLVM 15.0.7) for hardware decoding
Segmentation fault (core dumped)

Syslog:

May 29 15:29:44 media kernel: vlc[10743]: segfault at 48 ip 00007f233119d045 sp 00007f235c7fe4d0 error 4 in r600_dri.so[7f2330600000+17d6000] likely on CPU 1 (core 1, socket 0)
May 29 15:29:44 media kernel: Code: 45 00 01 f0 83 2e 01 0f 84 c0 01 00 00 0f 1f 84 00 00 00 00 00 48 8b 83 d8 00 00 00 48 89 ab e8 00 00 00 66 0f ef c0 49 89 e4 <48> 8b 68 48 0f b7 45 44 0f b7 55 40 0f 29 04 24 48 89 ee c6 43 3f
Comment 10 Stefan Seyfried 2024-06-02 13:50:21 UTC
so it looks like this is not related to vdr-xineliboutput but to something VDPAU side :-)
Comment 11 Peter Münster 2024-06-03 06:51:30 UTC
> "RESOLVED WORKSFORME"

Does this mean, that you cannot reproduce it? And that it won’t be fixed?
Comment 12 Stefan Seyfried 2024-06-03 10:22:27 UTC
This means it is not a bug in vdr-plugin-xineliboutput AFAICT and thus there is not much I could do, even if I would be able to reproduce it (which I am not as I don't have radeon hardware).

You need to report this to the maintainers of the VDPAU stuff.
Comment 13 Peter Münster 2024-06-04 15:39:14 UTC
I’ve just seen, that the error is with "r600_dri.so" instead of "libvdpau_r600.so.1.0.0", when triggered by VLC.

What do you think: 2 different issues, or the same one?
Comment 14 Stefan Seyfried 2024-06-05 07:55:32 UTC
I have no idea. I don't know anything about dri, vdpau and the likes.