Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 829406

Summary: x11-libs/libva-intel-media-driver-21.4.2: compilation break (media_libva.cpp:1920:32: error: ‘OpenGmm’ was not declared in this scope) with media-libs/gmmlib-21.3.4
Product: Gentoo Linux Reporter: MaratIK <marat.buharov>
Component: Current packagesAssignee: Gentoo Media-video project <media-video>
Status: RESOLVED FIXED    
Severity: normal CC: candrews, gem, k2k, orodruinlair, sam, toralf, volkov
Priority: Normal Keywords: PullRequest
Version: unspecified   
Hardware: AMD64   
OS: Linux   
See Also: https://github.com/gentoo/gentoo/pull/23368
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: /var/tmp/portage/x11-libs/libva-intel-media-driver-21.4.2/temp/build.log.gz

Description MaratIK 2021-12-17 08:56:08 UTC
After updating media-libs/gmmlib to 21.3.4 the x11-libs/libva-intel-media-driver stops compiling with error:

/var/tmp/portage/x11-libs/libva-intel-media-driver-21.4.2/work/media-driver-intel-media-21.4.2/media_driver/linux/common/ddi/media_libva.cpp: In function ‘VAStatus DdiMedia_InitMediaContext(VADriverContextP, int32_t, int32_t*, int32_t*, bool)’:
/var/tmp/portage/x11-libs/libva-intel-media-driver-21.4.2/work/media-driver-intel-media-21.4.2/media_driver/linux/common/ddi/media_libva.cpp:1920:32: error: ‘OpenGmm’ was not declared in this scope
 1920 |         GMM_STATUS gmmStatus = OpenGmm(&mediaCtx->GmmFuncs);
      |                                ^~~~~~~
ninja: build stopped: subcommand failed.


Reproducible: Always

Steps to Reproduce:
1. emerge -1 =media-libs/gmmlib-21.3.4
2. emerge -1 =x11-libs/libva-intel-media-driver-21.4.2

Actual Results:  
emerging x11-libs/libva-intel-media-driver-21.4.2 is broken

Expected Results:  
emerging x11-libs/libva-intel-media-driver-21.4.2 is fine

$ emerge --info '=x11-libs/libva-intel-media-driver-21.4.2::gentoo'
Portage 3.0.28 (python 3.9.9-final-0, default/linux/amd64/17.1/desktop/plasma, gcc-11.2.0, glibc-2.33-r7, 5.10.76-gentoo-r1 x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-5.10.76-gentoo-r1-x86_64-Intel-R-_Core-TM-_i7-9850H_CPU_@_2.60GHz-with-glibc2.33
KiB Mem:    32660032 total,  25437624 free
KiB Swap:    8388604 total,   8388604 free
Timestamp of repository gentoo: Fri, 17 Dec 2021 08:36:42 +0000
Head commit of repository gentoo: d99077962e86449cb671183d929ed827ea030f1e

Timestamp of repository steam-overlay: Tue, 14 Dec 2021 03:55:55 +0000
Head commit of repository steam-overlay: ebb9b0cfdbce6c266accccc951b3a49ebf814371

sh bash 5.1_p8
ld GNU ld (Gentoo 2.37_p1 p0) 2.37
ccache version 4.4.2 [enabled]
app-misc/pax-utils:        1.3.3::gentoo
app-shells/bash:           5.1_p8::gentoo
dev-java/java-config:      2.3.1::gentoo
dev-lang/perl:             5.34.0-r3::gentoo
dev-lang/python:           2.7.18_p13::gentoo, 3.9.9::gentoo, 3.10.0_p1::gentoo
dev-lang/rust-bin:         1.56.1::gentoo
dev-util/ccache:           4.4.2::gentoo
dev-util/cmake:            3.21.4::gentoo
dev-util/meson:            0.59.4::gentoo
sys-apps/baselayout:       2.7-r3::gentoo
sys-apps/openrc:           0.44.9::gentoo
sys-apps/sandbox:          2.25::gentoo
sys-devel/autoconf:        2.13-r1::gentoo, 2.71-r1::gentoo
sys-devel/automake:        1.13.4-r2::gentoo, 1.16.4::gentoo
sys-devel/binutils:        2.37_p1::gentoo
sys-devel/binutils-config: 5.4::gentoo
sys-devel/clang:           13.0.0::gentoo
sys-devel/gcc:             11.2.0::gentoo
sys-devel/gcc-config:      2.4::gentoo
sys-devel/libtool:         2.4.6-r6::gentoo
sys-devel/llvm:            13.0.0::gentoo
sys-devel/make:            4.3::gentoo
sys-kernel/linux-headers:  5.10-r1::gentoo (virtual/os-headers)
sys-libs/glibc:            2.33-r7::gentoo
Repositories:

gentoo
    location: /var/db/repos/gentoo
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/gentoo.git
    priority: -1000

steam-overlay
    location: /var/db/repos/steam-overlay
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/steam-overlay.git
    masters: gentoo

ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="@FREE @FREE @BINARY-REDISTRIBUTABLE @EULA intel-ucode bluez-firmware grass-ipafonts free-noncomm MPEG-4 MSttfEULA Geogebra colt CC-BY-NC-SA-3.0 ValveSteamLicense"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe -march=native"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/themes/oxygen-gtk/gtk-2.0"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -pipe -march=native"
DISTDIR="/var/cache/distfiles"
EMERGE_DEFAULT_OPTS=" --jobs=12 --load-average=12"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR"
FCFLAGS="-O2 -pipe -march=native"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs ccache config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe -march=native"
GENTOO_MIRRORS="https://mirror.yandex.ru/gentoo-distfiles/ https://gentoo.osuosl.org/"
L10N="en ru"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j12"
PKGDIR="/var/cache/binpkgs"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
SHELL="/bin/bash"
USE="7z 7zip X X509 a52 aac acl acpi activities alsa amd64 archive audiofile bluetooth bluez branding bzip2 cairo ccache cdda cdr chm cli clippy context corefonts crypt cube cups cxx d3d9 dbus declarative dhclient djvu dmx dns dri dri3 drm dts dv dvd dvdr dvi ebook eigen elogind emboss emoji enca encode epspdf epub eselect-ldso exif extra ffmpeg fftw firmware flac fontconfig fonts fortran freetype ftp games gdbm gif gimp git gmp gpm graphics graphviz gtk gui gzip haptic harfbuzz hddtemp hdri heif highlight hostonly hpcups hpijs humanities hwloc iconv icu id3tag imagemagick initramfs inspector introspection ipv6 javascript jbig jemalloc jit jpeg jpeg2k json jumbo-build kde kdesu kipi kwallet lame lapack lapacke latex layers lcms lensfun libass libcaca libdrm libglvnd libnotify libtirpc libv4l llvm lm-sensors logrotate luatex lz4 lzip lzma lzo mad markdown matroska metapost mikmod mms mng mobi mod modplug mono mp3 mp4 mpeg mpi mpi-threads mplayer multilib music ncurses nls nptl ogg okular openal opencl opencv openexr opengl openmp pam pango pclm pcre pcre-jit pcre2 pcre2-jit pcx pdf pdfannotextractor perl plasma png pnm policykit posix postscript ppds psd pstricks publishers pulseaudio python qml qt5 rar raw rdp readline recode redistributable rle rls romio rtmp rustfmt samba sasl scanner science screencast sdl seccomp semantic-desktop sensord sftp sid smp sna sndfile socks5 solver speedpitch speex spell spice split-usr ssh ssh-agent ssl startup-notification steamfonts steamgames_bioshock_infinite steamgames_dirt_rally steamgames_dont_starve steamgames_dwarfs steamgames_hammerwatch steamgames_ironclad_tactics steamgames_journey_down steamgames_narcissu steamgames_painkiller steamgames_portal steamgames_shadow_mordor steamgames_shatter steamgames_source_engine steamgames_te120 steamgames_tf2 steamgames_trine2 steamgames_voidexpanse steamgames_witcher2 stemmer subversion svg tcl tcmalloc tex tex4ht texi2html theora threads tiff tk tools tray trayicon truetype tty-helpers udev udisks umfpack unicode upnp upower usb usbredir utils uuid uxa v4l v4l2 v4lutils vaapi vala visio vkd3d vlc vorbis vulkan vulkan-overlay wav wavpack webengine webkit webp webrtc webrtc-aec websocket websockets widevine widgets wifi winbind wmf woff2 wxwidgets x264 x265 x86-64 xattr xcb xdamage xetex xine xinerama xml xpm xps xrandr xv xvid xvmc xz zip zlib zstd" ABI_X86="32 64" ADA_TARGET="gnat_2020" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 f16c fma3 mmx mmxext pclmul popcnt rdrand sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="synaptics libinput" KERNEL="linux" L10N="en ru" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LLVM_TARGETS="X86 BPF WebAssembly" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php7-3 php7-4" POSTGRES_TARGETS="postgres12 postgres13" PYTHON_SINGLE_TARGET="python3_9" PYTHON_TARGETS="python3_9" QEMU_SOFTMMU_TARGETS="i386 x86_64" QEMU_USER_TARGETS="i386 x86_64" RUBY_TARGETS="ruby26 ruby27" USERLAND="GNU" VIDEO_CARDS="intel i965 iris" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq proto steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  ADDR2LINE, AR, ARFLAGS, AS, ASFLAGS, CC, CCLD, CONFIG_SHELL, CPP, CPPFLAGS, CTARGET, CXX, CXXFILT, ELFEDIT, F77FLAGS, FC, GCOV, GPROF, INSTALL_MASK, LC_ALL, LD, LEX, LFLAGS, LIBTOOL, LINGUAS, MAKE, MAKEFLAGS, NM, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, RANLIB, READELF, RUSTFLAGS, SIZE, STRINGS, STRIP, YACC, YFLAGS

=================================================================
                        Package Settings
=================================================================

x11-libs/libva-intel-media-driver-21.4.2::gentoo was built with the following:
USE="X redistributable -test" ABI_X86="(64)"
FEATURES="userpriv unmerge-logs usersync binpkg-logs assume-digests ccache xattr binpkg-docompress sandbox ipc-sandbox sfperms strict news usersandbox preserve-libs unknown-features-warn network-sandbox unmerge-orphans merge-sync protect-owned ebuild-locks binpkg-dostrip distlocks multilib-strict config-protect-if-modified parallel-fetch qa-unresolved-soname-deps userfetch pid-sandbox fixlafiles"

$ emerge -pqv '=x11-libs/libva-intel-media-driver-21.4.2::gentoo'
[ebuild   R   ] x11-libs/libva-intel-media-driver-21.4.2  USE="X redistributable -test"
Comment 1 MaratIK 2021-12-17 08:59:05 UTC
Created attachment 759390 [details]
/var/tmp/portage/x11-libs/libva-intel-media-driver-21.4.2/temp/build.log.gz

gzipped /var/tmp/portage/x11-libs/libva-intel-media-driver-21.4.2/temp/build.log
Comment 2 Karlson2k 2021-12-17 10:12:41 UTC
libva-intel-media-drive didn't release version with corresponding changes yet.
https://github.com/intel/media-driver/commit/42ffd7983a32b75cf8403c235d8d0f727191390c#diff-ac1657e7af8547a4ac085db8ed1be40becd13218c5028c0b9b49ee9e7b1f1ea5L1884

gmmlib API change was introduced by https://github.com/intel/gmmlib/commit/6143502f4e5275b9d285693704b9cfab04819f78.

The last gmmlib release with the old API is 21.3.3
Comment 3 MaratIK 2021-12-17 10:22:36 UTC
Also breaks with disabled ccache
Comment 4 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2021-12-17 10:29:35 UTC
(In reply to MaratIK from comment #3)
> Also breaks with disabled ccache

yes, it's not ccache related, see previous comment.
Comment 5 Toralf Förster gentoo-dev 2021-12-17 12:26:11 UTC
*** Bug 829449 has been marked as a duplicate of this bug. ***
Comment 6 Gary E. Miller 2021-12-17 21:22:37 UTC
Me too.
Comment 7 Larry the Git Cow gentoo-dev 2021-12-18 05:10:52 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0c270857b4c4702f4ba48e1b68250671aa788913

commit 0c270857b4c4702f4ba48e1b68250671aa788913
Author:     Karlson2k (Evgeny Grin) <k2k@narod.ru>
AuthorDate: 2021-12-17 10:43:37 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2021-12-18 05:10:42 +0000

    x11-libs/libva-intel-media-driver: fixed dependency on gmmlib version
    
    media-libs/gmmlib-21.3.4 and later break compatibility with old API.
    
    Bug: https://bugs.gentoo.org/829406
    Signed-off-by: Karlson2k (Evgeny Grin) <k2k@narod.ru>
    Signed-off-by: Sam James <sam@gentoo.org>

 x11-libs/libva-intel-media-driver/libva-intel-media-driver-20.4.5.ebuild | 1 +
 x11-libs/libva-intel-media-driver/libva-intel-media-driver-21.3.5.ebuild | 1 +
 x11-libs/libva-intel-media-driver/libva-intel-media-driver-21.4.0.ebuild | 1 +
 x11-libs/libva-intel-media-driver/libva-intel-media-driver-21.4.2.ebuild | 1 +
 4 files changed, 4 insertions(+)
Comment 8 Conrad Kostecki gentoo-dev 2022-10-03 22:42:09 UTC
I think, all work is done, so closing. Feel free to reopen, if you don't think so.