#11675: ffplay causes amdgpu driver crash -------------------------------------+------------------------------------- Reporter: Maxim | Owner: (none) Cournoyer | Type: defect | Status: new Priority: normal | Component: | undetermined Version: unspecified | Resolution: Keywords: crash | Blocked By: Blocking: | Reproduced by developer: 0 Analyzed by developer: 0 | -------------------------------------+------------------------------------- Description changed by Maxim Cournoyer:
Old description: > Summary of the bug: ffplay causes amdgpu driver crash > How to reproduce: > {{{ > % ffplay -hwaccel vaapi test.mp4 > ffmpeg version 7.1.1 > built with GNU Guix (GNU/Linux) > }}} > > Full context available on the Mesa tracker: > https://gitlab.freedesktop.org/mesa/mesa/-/issues/7026#note_3020001 > > The Guix package definition for the build looks like: > {{{ > (define-public ffmpeg-7 > (package > (name "ffmpeg") > (version "7.0.2") > (source (origin > (method url-fetch) > (uri (string-append "https://ffmpeg.org/releases/ffmpeg-" > version ".tar.xz")) > (sha256 > (base32 > "1c837agaw8ljhjx6ndp2w7hffi2mkb22vnmb8v0fbfqdbqwq8fbk")))) > (outputs '("out" "debug")) > (build-system gnu-build-system) > (inputs > (append > (if (supported-package? rav1e) (list rav1e) '()) > (list dav1d > fontconfig > freetype > frei0r-plugins > gnutls > opus > ladspa > lame > libaom > libass > libbluray > libcaca > libcdio-paranoia > libdrm > libtheora > libva > libvdpau > libvorbis > libvpx > libwebp > libx11 > libx264 > mesa > openal > pulseaudio > shaderc > sdl2 > soxr > speex > spirv-tools > srt > svt-av1 > twolame > vidstab > vulkan-loader > x265 > xvid > zlib))) > (native-inputs > (list bc > perl > pkg-config > texinfo > speex > vulkan-headers > yasm)) > (arguments > (list > #:test-target "fate" > #:configure-flags > ;; possible additional inputs: > ;; --enable-avisynth enable reading of AviSynth script > ;; files [no] > ;; --enable-libaacplus enable AAC+ encoding via libaacplus > [no] > ;; --enable-libcelt enable CELT decoding via libcelt [no] > ;; --enable-libdc1394 enable IIDC-1394 grabbing using > libdc1394 > ;; and libraw1394 [no] > ;; --enable-libfdk-aac enable AAC de/encoding via libfdk-aac > [no] > ;; --enable-libflite enable flite (voice synthesis) > support via > ;; libflite [no] > ;; --enable-libgme enable Game Music Emu via libgme [no] > ;; --enable-libgsm enable GSM de/encoding via libgsm > [no] > ;; --enable-libiec61883 enable iec61883 via libiec61883 [no] > ;; --enable-libilbc enable iLBC de/encoding via libilbc > [no] > ;; --enable-libmodplug enable ModPlug via libmodplug [no] > ;; --enable-libnut enable NUT (de)muxing via libnut, > ;; native (de)muxer exists [no] > ;; --enable-libopencore-amrnb enable AMR-NB de/encoding via > ;; libopencore-amrnb [no] > ;; --enable-libopencore-amrwb enable AMR-WB decoding via > ;; libopencore-amrwb [no] > ;; --enable-libopencv enable video filtering via libopencv > [no] > ;; --enable-libopenjpeg enable JPEG 2000 de/encoding via > ;; OpenJPEG [no] > ;; --enable-librtmp enable RTMP[E] support via librtmp > [no] > ;; --enable-libschroedinger enable Dirac de/encoding via > ;; libschroedinger [no] > ;; --enable-libshine enable fixed-point MP3 encoding via > ;; libshine [no] > ;; --enable-libssh enable SFTP protocol via libssh [no] > ;; (libssh2 does not work) > ;; --enable-libstagefright-h264 enable H.264 decoding via > ;; libstagefright [no] > ;; --enable-libutvideo enable Ut Video encoding and decoding > via > ;; libutvideo [no] > ;; --enable-libv4l2 enable libv4l2/v4l-utils [no] > ;; --enable-libvo-aacenc enable AAC encoding via libvo-aacenc > [no] > ;; --enable-libvo-amrwbenc enable AMR-WB encoding via > ;; libvo-amrwbenc [no] > ;; --enable-libwavpack enable wavpack encoding via > libwavpack [no] > ;; --enable-libxavs enable AVS encoding via xavs [no] > ;; --enable-libzmq enable message passing via libzmq > [no] > ;; --enable-libzvbi enable teletext support via libzvbi > [no] > ;; --enable-opencl enable OpenCL code > #~(list > #$@(if (target-powerpc?) > ;; These tests fail on powerpc64-le (see: > ;; https://trac.ffmpeg.org/ticket/9604). > '("--ignore-tests=checkasm-sw_scale,filter- > scale2ref_keep_aspect") > '()) > "--enable-gpl" ;enable optional gpl licensed > parts > "--enable-shared" > "--enable-frei0r" > "--enable-fontconfig" > "--enable-gnutls" > "--enable-ladspa" > "--enable-libaom" > "--enable-libass" > "--enable-libbluray" > "--enable-libcaca" > "--enable-libcdio" > "--enable-libdav1d" > "--enable-libfreetype" > "--enable-libmp3lame" > "--enable-libopus" > "--enable-libpulse" > #$@(if (this-package-input "rav1e") > '("--enable-librav1e") > '()) > "--enable-libshaderc" > "--enable-libsoxr" > "--enable-libspeex" > "--enable-libsrt" > "--enable-libsvtav1" > "--enable-libtheora" > "--enable-libtwolame" > "--enable-libvidstab" > "--enable-libvorbis" > "--enable-libvpx" > "--enable-libwebp" > "--enable-libxvid" > "--enable-libx264" > "--enable-libx265" > "--enable-openal" > "--enable-opengl" > "--enable-libdrm" > "--enable-vaapi" > "--enable-vulkan" > > "--enable-runtime-cpudetect" > > ;; The HTML pages take 7.2 MiB > "--disable-htmlpages" > > ;; The static libraries are 23 MiB > "--disable-static" > > "--disable-stripping" > > #$@(if (target-riscv64?) > '("--extra-cflags=-fPIC") > '()) > > ;; Runtime cpu detection is not implemented on > ;; MIPS, so we disable some features. > "--disable-mips32r2" > "--disable-mipsdsp" > "--disable-mipsdspr2" > "--disable-mipsfpu") > #:phases > #~(modify-phases %standard-phases > #$@(if (target-x86-32?) > #~((add-before 'configure 'bypass-openal-check > ;; configure fails linking to openal when using > binutils > ;; >= 2.38 due to openal's usage of protected > visibility > ;; for its dynamic symbols. Bypass this configure > time > ;; check for now. See: > ;; https://lists.gnu.org/archive/html/guix- > devel/2024-08/msg00159.html > (lambda _ > (substitute* "configure" > ;; This string only matches on ffmpeg v6 and > above. > ;; Replace it with the one defined at ffmpeg-5 > which > ;; matches on all ffmpeg versions. See #71917. > (("alGetError \\|\\|") > "alGetError \|\| true \|\|"))))) > #~()) > (replace 'configure > ;; configure does not work followed by "SHELL=..." and > ;; "CONFIG_SHELL=..."; set environment variables instead > (lambda* (#:key outputs configure-flags #:allow-other-keys) > (let ((out (assoc-ref outputs "out"))) > (substitute* "configure" > (("#! /bin/sh") (string-append "#!" (which "sh")))) > (setenv "SHELL" (which "bash")) > (setenv "CONFIG_SHELL" (which "bash")) > (apply invoke > "./configure" > (string-append "--prefix=" out) > ;; Add $libdir to the RUNPATH of all the binaries. > (string-append "--extra-ldflags=-Wl,-rpath=" > out "/lib") > configure-flags)))) > (add-before 'check 'set-ld-library-path > (lambda _ > ;; Allow $(top_builddir)/ffmpeg to find its dependencies > when > ;; running tests. > (let* ((dso (find-files "." "\\.so$")) > (path (string-join (map dirname dso) ":"))) > (format #t "setting LD_LIBRARY_PATH to ~s~%" path) > (setenv "LD_LIBRARY_PATH" path))))))) > (home-page "https://www.ffmpeg.org/") > (synopsis "Audio and video framework") > (description "FFmpeg is a complete, cross-platform solution to > record, > convert and stream audio and video. It includes the libavcodec > audio/video codec library.") > (license license:gpl2+))) > }}} New description: Summary of the bug: ffplay causes amdgpu driver crash How to reproduce: {{{ % ffplay -hwaccel vaapi test.mp4 ffmpeg version 7.1.1 built with GNU Guix (GNU/Linux) }}} Full context available on the Mesa tracker: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7026#note_3020001 The Guix package definition for the build looks like: {{{ (define-public ffmpeg-7 (package (name "ffmpeg") (version "7.1.1") (source (origin (method url-fetch) (uri (string-append "https://ffmpeg.org/releases/ffmpeg-" version ".tar.xz")) (sha256 (base32 "1c837agaw8ljhjx6ndp2w7hffi2mkb22vnmb8v0fbfqdbqwq8fbk")))) (outputs '("out" "debug")) (build-system gnu-build-system) (inputs (append (if (supported-package? rav1e) (list rav1e) '()) (list dav1d fontconfig freetype frei0r-plugins gnutls opus ladspa lame libaom libass libbluray libcaca libcdio-paranoia libdrm libgme libplacebo libtheora libva libvdpau libvorbis libvpx libwebp libx11 libx264 mesa openal pulseaudio shaderc sdl2 soxr speex spirv-tools srt svt-av1 twolame vidstab vulkan-loader x265 xvid zlib))) (native-inputs (list bc perl pkg-config texinfo speex vulkan-headers nasm)) (arguments (list #:test-target "fate" #:configure-flags ;; possible additional inputs: ;; --enable-avisynth enable reading of AviSynth script ;; files [no] ;; --enable-libaacplus enable AAC+ encoding via libaacplus [no] ;; --enable-libcelt enable CELT decoding via libcelt [no] ;; --enable-libdc1394 enable IIDC-1394 grabbing using libdc1394 ;; and libraw1394 [no] ;; --enable-libfdk-aac enable AAC de/encoding via libfdk-aac [no] ;; --enable-libflite enable flite (voice synthesis) support via ;; libflite [no] ;; --enable-libgsm enable GSM de/encoding via libgsm [no] ;; --enable-libiec61883 enable iec61883 via libiec61883 [no] ;; --enable-libilbc enable iLBC de/encoding via libilbc [no] ;; --enable-libmodplug enable ModPlug via libmodplug [no] ;; --enable-libnut enable NUT (de)muxing via libnut, ;; native (de)muxer exists [no] ;; --enable-libopencore-amrnb enable AMR-NB de/encoding via ;; libopencore-amrnb [no] ;; --enable-libopencore-amrwb enable AMR-WB decoding via ;; libopencore-amrwb [no] ;; --enable-libopencv enable video filtering via libopencv [no] ;; --enable-libopenjpeg enable JPEG 2000 de/encoding via ;; OpenJPEG [no] ;; --enable-librtmp enable RTMP[E] support via librtmp [no] ;; --enable-libschroedinger enable Dirac de/encoding via ;; libschroedinger [no] ;; --enable-libshine enable fixed-point MP3 encoding via ;; libshine [no] ;; --enable-libssh enable SFTP protocol via libssh [no] ;; (libssh2 does not work) ;; --enable-libstagefright-h264 enable H.264 decoding via ;; libstagefright [no] ;; --enable-libutvideo enable Ut Video encoding and decoding via ;; libutvideo [no] ;; --enable-libv4l2 enable libv4l2/v4l-utils [no] ;; --enable-libvo-aacenc enable AAC encoding via libvo-aacenc [no] ;; --enable-libvo-amrwbenc enable AMR-WB encoding via ;; libvo-amrwbenc [no] ;; --enable-libwavpack enable wavpack encoding via libwavpack [no] ;; --enable-libxavs enable AVS encoding via xavs [no] ;; --enable-libzmq enable message passing via libzmq [no] ;; --enable-libzvbi enable teletext support via libzvbi [no] ;; --enable-opencl enable OpenCL code #~(list #$@(if (target-powerpc?) ;; These tests fail on powerpc64-le (see: ;; https://trac.ffmpeg.org/ticket/9604). '("--ignore-tests=checkasm-sw_scale,filter- scale2ref_keep_aspect") '()) "--enable-gpl" ;enable optional gpl licensed parts "--enable-shared" "--enable-frei0r" "--enable-fontconfig" "--enable-gnutls" "--enable-ladspa" "--enable-libaom" "--enable-libass" "--enable-libbluray" "--enable-libcaca" "--enable-libcdio" "--enable-libdav1d" "--enable-libfreetype" "--enable-libgme" "--enable-libmp3lame" "--enable-libopus" "--enable-libplacebo" "--enable-libpulse" #$@(if (this-package-input "rav1e") '("--enable-librav1e") '()) "--enable-libshaderc" "--enable-libsoxr" "--enable-libspeex" "--enable-libsrt" "--enable-libsvtav1" "--enable-libtheora" "--enable-libtwolame" "--enable-libvidstab" "--enable-libvorbis" "--enable-libvpx" "--enable-libwebp" "--enable-libxvid" "--enable-libx264" "--enable-libx265" "--enable-openal" "--enable-opengl" "--enable-libdrm" "--enable-vaapi" "--enable-vulkan" "--enable-runtime-cpudetect" ;; The HTML pages take 7.2 MiB "--disable-htmlpages" ;; The static libraries are 23 MiB "--disable-static" "--disable-stripping" #$@(if (target-riscv64?) '("--extra-cflags=-fPIC") '()) ;; Runtime cpu detection is not implemented on ;; MIPS, so we disable some features. "--disable-mips32r2" "--disable-mipsdsp" "--disable-mipsdspr2" "--disable-mipsfpu") #:phases #~(modify-phases %standard-phases #$@(if (target-x86-32?) #~((add-before 'configure 'bypass-openal-check ;; configure fails linking to openal when using binutils ;; >= 2.38 due to openal's usage of protected visibility ;; for its dynamic symbols. Bypass this configure time ;; check for now. See: ;; https://lists.gnu.org/archive/html/guix- devel/2024-08/msg00159.html (lambda _ (substitute* "configure" ;; This string only matches on ffmpeg v6 and above. ;; Replace it with the one defined at ffmpeg-5 which ;; matches on all ffmpeg versions. See #71917. (("alGetError \\|\\|") "alGetError \|\| true \|\|"))))) #~()) (replace 'configure ;; configure does not work followed by "SHELL=..." and ;; "CONFIG_SHELL=..."; set environment variables instead (lambda* (#:key outputs configure-flags #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) (substitute* "configure" (("#! */bin/sh") (string-append "#!" (which "sh")))) (setenv "SHELL" (which "bash")) (setenv "CONFIG_SHELL" (which "bash")) (apply invoke "./configure" (string-append "--prefix=" out) ;; Add $libdir to the RUNPATH of all the binaries. (string-append "--extra-ldflags=-Wl,-rpath=" out "/lib") configure-flags)))) (add-before 'check 'set-ld-library-path (lambda _ ;; Allow $(top_builddir)/ffmpeg to find its dependencies when ;; running tests. (let* ((dso (find-files "." "\\.so$")) (path (string-join (map dirname dso) ":"))) (format #t "setting LD_LIBRARY_PATH to ~s~%" path) (setenv "LD_LIBRARY_PATH" path))))))) (home-page "https://www.ffmpeg.org/") (synopsis "Audio and video framework") (description "FFmpeg is a complete, cross-platform solution to record, convert and stream audio and video. It includes the libavcodec audio/video codec library.") (license license:gpl2+))) }}} -- -- Ticket URL: <https://trac.ffmpeg.org/ticket/11675#comment:2> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
_______________________________________________ FFmpeg-trac mailing list FFmpeg-trac@avcodec.org https://ffmpeg.org/mailman/listinfo/ffmpeg-trac To unsubscribe, visit link above, or email ffmpeg-trac-requ...@ffmpeg.org with subject "unsubscribe".