undefined reference to `mozilla::VideoFramePool::~VideoFramePool() when MOZ_FFVPX is unset
Categories
(Core :: Audio/Video: Playback, defect, P3)
Tracking
()
Tracking | Status | |
---|---|---|
firefox-esr91 | --- | unaffected |
firefox98 | --- | unaffected |
firefox99 | --- | wontfix |
firefox100 | --- | fixed |
People
(Reporter: glandium, Assigned: stransky)
References
(Regression)
Details
(Keywords: regression)
Attachments
(2 files)
Builds on tier-3 platforms like linux ppc64el, mips64el, s390x are failing with:
/builds/worker/workspace/obj-build/toolkit/library/gtest/../../../dom/media/platforms/ffmpeg/ffmpeg58/Unified_cpp_ffmpeg_ffmpeg580.o: in function `mozilla::DefaultDelete<mozilla::VideoFramePool>::operator()(mozilla::VideoFramePool*) const':
/builds/worker/workspace/obj-build/dist/include/mozilla/UniquePtr.h:463: undefined reference to `mozilla::VideoFramePool::~VideoFramePool()'
/builds/worker/fetches/binutils/bin/ld.bfd: /builds/worker/workspace/obj-build/toolkit/library/gtest/../../../dom/media/platforms/ffmpeg/ffmpeg58/Unified_cpp_ffmpeg_ffmpeg580.o: in function `mozilla::FFmpegVideoDecoder<58>::DoDecode(mozilla::MediaRawData*, unsigned char*, int, bool*, nsTArray<RefPtr<mozilla::MediaData> >&)':
/builds/worker/checkouts/gecko/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.cpp:823: undefined reference to `mozilla::VideoFramePool::ReleaseUnusedVAAPIFrames()'
/builds/worker/fetches/binutils/bin/ld.bfd: /builds/worker/workspace/obj-build/toolkit/library/gtest/../../../dom/media/platforms/ffmpeg/ffmpeg58/Unified_cpp_ffmpeg_ffmpeg580.o: in function `mozilla::detail::UniqueSelector<mozilla::VideoFramePool>::SingleObject mozilla::MakeUnique<mozilla::VideoFramePool>()':
/builds/worker/workspace/obj-build/dist/include/mozilla/UniquePtr.h:609: undefined reference to `mozilla::VideoFramePool::VideoFramePool()'
/builds/worker/fetches/binutils/bin/ld.bfd: /builds/worker/workspace/obj-build/toolkit/library/gtest/../../../dom/media/platforms/ffmpeg/ffmpeg58/Unified_cpp_ffmpeg_ffmpeg580.o: in function `mozilla::DefaultDelete<mozilla::VideoFramePool>::operator()(mozilla::VideoFramePool*) const':
/builds/worker/workspace/obj-build/dist/include/mozilla/UniquePtr.h:463: undefined reference to `mozilla::VideoFramePool::~VideoFramePool()'
/builds/worker/fetches/binutils/bin/ld.bfd: /builds/worker/workspace/obj-build/dist/include/mozilla/UniquePtr.h:463: undefined reference to `mozilla::VideoFramePool::~VideoFramePool()'
/builds/worker/fetches/binutils/bin/ld.bfd: /builds/worker/workspace/obj-build/toolkit/library/gtest/../../../dom/media/platforms/ffmpeg/ffmpeg58/Unified_cpp_ffmpeg_ffmpeg580.o: in function `mozilla::FFmpegVideoDecoder<58>::CreateImageVAAPI(long, long, long, nsTArray<RefPtr<mozilla::MediaData> >&)':
/builds/worker/checkouts/gecko/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.cpp:1093: undefined reference to `mozilla::VideoFramePool::GetVideoFrameSurface(_VADRMPRIMESurfaceDescriptor&, AVCodecContext*, AVFrame*, mozilla::FFmpegLibWrapper*)'
/builds/worker/fetches/binutils/bin/ld.bfd: /builds/worker/workspace/obj-build/toolkit/library/gtest/../../../dom/media/platforms/ffmpeg/ffmpeg58/Unified_cpp_ffmpeg_ffmpeg580.o: in function `mozilla::DefaultDelete<mozilla::VideoFramePool>::operator()(mozilla::VideoFramePool*) const':
/builds/worker/workspace/obj-build/dist/include/mozilla/UniquePtr.h:463: undefined reference to `mozilla::VideoFramePool::~VideoFramePool()'
/builds/worker/fetches/binutils/bin/ld.bfd: /builds/worker/fetches/binutils/bin/ld.bfd: DWARF error: could not find variable specification at offset 1576
/builds/worker/fetches/binutils/bin/ld.bfd: DWARF error: could not find variable specification at offset 169e3
/builds/worker/fetches/binutils/bin/ld.bfd: DWARF error: could not find variable specification at offset 3ec92
/builds/worker/workspace/obj-build/toolkit/library/gtest/../../../dom/media/platforms/ffmpeg/ffmpeg59/Unified_cpp_ffmpeg_ffmpeg590.o: in function `mozilla::DefaultDelete<mozilla::VideoFramePool>::operator()(mozilla::VideoFramePool*) const':
/builds/worker/workspace/obj-build/dist/include/mozilla/UniquePtr.h:463: undefined reference to `mozilla::VideoFramePool::~VideoFramePool()'
/builds/worker/fetches/binutils/bin/ld.bfd: /builds/worker/workspace/obj-build/toolkit/library/gtest/../../../dom/media/platforms/ffmpeg/ffmpeg59/Unified_cpp_ffmpeg_ffmpeg590.o: in function `mozilla::FFmpegVideoDecoder<59>::DoDecode(mozilla::MediaRawData*, unsigned char*, int, bool*, nsTArray<RefPtr<mozilla::MediaData> >&)':
/builds/worker/checkouts/gecko/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.cpp:823: undefined reference to `mozilla::VideoFramePool::ReleaseUnusedVAAPIFrames()'
/builds/worker/fetches/binutils/bin/ld.bfd: /builds/worker/workspace/obj-build/toolkit/library/gtest/../../../dom/media/platforms/ffmpeg/ffmpeg59/Unified_cpp_ffmpeg_ffmpeg590.o: in function `mozilla::detail::UniqueSelector<mozilla::VideoFramePool>::SingleObject mozilla::MakeUnique<mozilla::VideoFramePool>()':
/builds/worker/workspace/obj-build/dist/include/mozilla/UniquePtr.h:609: undefined reference to `mozilla::VideoFramePool::VideoFramePool()'
/builds/worker/fetches/binutils/bin/ld.bfd: /builds/worker/workspace/obj-build/toolkit/library/gtest/../../../dom/media/platforms/ffmpeg/ffmpeg59/Unified_cpp_ffmpeg_ffmpeg590.o: in function `mozilla::DefaultDelete<mozilla::VideoFramePool>::operator()(mozilla::VideoFramePool*) const':
/builds/worker/workspace/obj-build/dist/include/mozilla/UniquePtr.h:463: undefined reference to `mozilla::VideoFramePool::~VideoFramePool()'
/builds/worker/fetches/binutils/bin/ld.bfd: /builds/worker/workspace/obj-build/dist/include/mozilla/UniquePtr.h:463: undefined reference to `mozilla::VideoFramePool::~VideoFramePool()'
/builds/worker/fetches/binutils/bin/ld.bfd: /builds/worker/workspace/obj-build/toolkit/library/gtest/../../../dom/media/platforms/ffmpeg/ffmpeg59/Unified_cpp_ffmpeg_ffmpeg590.o: in function `mozilla::FFmpegVideoDecoder<59>::CreateImageVAAPI(long, long, long, nsTArray<RefPtr<mozilla::MediaData> >&)':
/builds/worker/checkouts/gecko/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.cpp:1093: undefined reference to `mozilla::VideoFramePool::GetVideoFrameSurface(_VADRMPRIMESurfaceDescriptor&, AVCodecContext*, AVFrame*, mozilla::FFmpegLibWrapper*)'
/builds/worker/fetches/binutils/bin/ld.bfd: /builds/worker/workspace/obj-build/toolkit/library/gtest/../../../dom/media/platforms/ffmpeg/ffmpeg59/Unified_cpp_ffmpeg_ffmpeg590.o: in function `mozilla::DefaultDelete<mozilla::VideoFramePool>::operator()(mozilla::VideoFramePool*) const':
/builds/worker/workspace/obj-build/dist/include/mozilla/UniquePtr.h:463: undefined reference to `mozilla::VideoFramePool::~VideoFramePool()'
clang-13: error: linker command failed with exit code 1 (use -v to see invocation)
Updated•11 months ago
|
Comment 1•11 months ago
|
||
Set release status flags based on info from the regressing bug 1750760
Updated•11 months ago
|
Updated•11 months ago
|
Comment 2•11 months ago
|
||
Adding ffvpx
here works for me on s390x.
Not sure, if this is the correct fix, though.
Comment 3•10 months ago
|
||
I assume since this is Tier-3, we're happy to let Firefox 99 ship without a fix for this issue?
Assignee | ||
Comment 4•10 months ago
|
||
Will look at it this week, as a simple build fix we can uplift to 99.
Updated•10 months ago
|
Assignee | ||
Comment 5•10 months ago
|
||
Updated•10 months ago
|
Assignee | ||
Comment 6•10 months ago
|
||
Depends on D141827
Assignee | ||
Updated•10 months ago
|
Pushed by stransky@redhat.com: https://hg.mozilla.org/integration/autoland/rev/1c377fb424c7 [Linux] Remove VideoFrameSurfaceVAAPI and use VideoFrameSurface only r=alwu https://hg.mozilla.org/integration/autoland/rev/00c6171a1e2a [Linux] Implement VideoFramePool as template r=alwu
Comment 8•10 months ago
|
||
Backed out for causing build bustage at FFmpegVideoFramePool.h
Backout link: https://hg.mozilla.org/integration/autoland/rev/3d4c2633c2c7287df9d98688b9fa924143656941
Failure log: https://treeherder.mozilla.org/logviewer?job_id=372101470&repo=autoland&lineNumber=18089
Assignee | ||
Comment 9•10 months ago
|
||
updated, try: https://treeherder.mozilla.org/#/jobs?repo=try&revision=bee42edacf6f049b52e605458b6508100ba6d31a
Assignee | ||
Comment 10•10 months ago
|
||
Comment 11•10 months ago
|
||
Pushed by stransky@redhat.com: https://hg.mozilla.org/integration/autoland/rev/a107df8ae87c [Linux] Remove VideoFrameSurfaceVAAPI and use VideoFrameSurface only r=alwu https://hg.mozilla.org/integration/autoland/rev/c7ca5d4c890a [Linux] Implement VideoFramePool as template r=alwu
Comment 12•10 months ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/a107df8ae87c
https://hg.mozilla.org/mozilla-central/rev/c7ca5d4c890a
Comment 13•10 months ago
|
||
This fix seems to have fixed the related issue 1759137 on FF100.
Is there any plan to backport it to FF99? As that has the same issue still?
Assignee | ||
Comment 14•10 months ago
|
||
(In reply to Stephen from comment #13)
This fix seems to have fixed the related issue 1759137 on FF100.
Is there any plan to backport it to FF99? As that has the same issue still?
99 is coming out next week - it's too late for uplift. Distros may ship local patches for it.
Comment 15•10 months ago
|
||
For some reason I still have an issue where acceleration isn't working in Firefox Nightly. I've added some additional detail in a couple comments here: https://bugzilla.mozilla.org/show_bug.cgi?id=1751363#c44
Updated•9 months ago
|
Description
•