[PATCH] D41215: Fix crash on invalid

Rui Ueyama via llvm-commits llvm-commits at lists.llvm.org
Thu Dec 14 11:28:08 PST 2017


Looks like libwidevinecdm.so is not publicly available. I don't know much
about that binary blob, but it looks like it expects that that symbol is
handled as if it were a global symbol.

https://cs.chromium.org/chromium/src/third_party/tcmalloc/vendor/src/thread_cache.h?type=cs&q=threadlocal_heap_&sq=package:chromium&l=255

I'll send you a patch to reduce it to a warning.

On Thu, Dec 14, 2017 at 10:27 AM, Rafael Avila de Espindola <
rafael.espindola at gmail.com> wrote:

> Is libwidevinecdm.so available somewhere?
>
> We can try to make it a warning, but what is the correct thing to do
> about _ZN8tcmalloc11ThreadCache17threadlocal_heap_E? Should we skip it?
> Handle it as if it was global?
>
> Cheers,
> Rafael
>
> Hans Wennborg via Phabricator <reviews at reviews.llvm.org> writes:
>
> > hans added a comment.
> >
> > This fixes the assert, now we error on it, which breaks our build all
> the same. It's a pre-built .so, which I'm not sure exactly where it comes
> from:
> >
> > FAILED: libwidevinecdmadapter.so
> > ../../../../../../../../work/llvm/build.goma/bin/clang++ -shared
> libwidevinecdm.so -Wl,--fatal-warnings -Wl,--build-id=sha1 -fPIC
> -Wl,-z,noexecstack -Wl,-z,now -Wl,-z,relro -Wl,-z,defs -Wl,--no-as-needed
> -lpthread -Wl,--as-needed -fuse-ld=lld -Wl,--icf=all -flto=thin
> -Wl,--thinlto-jobs=8 -Wl,--thinlto-cache-dir=thinlto-cache
> -Wl,--thinlto-cache-policy,cache_size=10\% -Wl,--lto-O0
> -fwhole-program-vtables -m64 -Werror -Wl,-O1 -Wl,--gc-sections
> -Wl,--gdb-index -nostdlib++ --sysroot=../../build/linux/debian_stretch_amd64-sysroot
> -L../../build/linux/debian_stretch_amd64-sysroot/lib/x86_64-linux-gnu
> -Wl,-rpath-link=../../build/linux/debian_stretch_amd64-sysroot/lib/x86_64-linux-gnu
> -L../../build/linux/debian_stretch_amd64-sysroot/usr/lib/x86_64-linux-gnu
> -Wl,-rpath-link=../../build/linux/debian_stretch_amd64-
> sysroot/usr/lib/x86_64-linux-gnu -fsanitize=cfi-vcall
> -Wl,-rpath=\$ORIGIN/. -Wl,-rpath-link=. -o "./libwidevinecdmadapter.so"
> -Wl,-soname="libwidevinecdmadapter.so" @"./libwidevinecdmadapter.so.rsp"
> > /usr/local/google/work/chromium/src/out/release/../..
> /../../../../../../work/llvm/build.goma/bin/ld.lld: error: Found local
> symbol '_ZN8tcmalloc11ThreadCache17threadlocal_heap_E' in global part of
> symbol table in file libwidevinecdm.so
> > clang-6.0: error: linker command failed with exit code 1 (use -v to see
> invocation)
> > ninja: build stopped: subcommand failed.
> >
> > Maybe the erorr could be downgraded to a warning? (We'd need to not
> treat warnings as errors for this target on our side I suppose)
> >
> >
> > https://reviews.llvm.org/D41215
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20171214/fd8910b3/attachment.html>


More information about the llvm-commits mailing list