New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 667506 link

Starred by 1 user

Issue metadata

Status: Verified
Owner:
Closed: Dec 2016
Cc:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 3
Type: Bug



Sign in to add a comment

chromeos-fonts does not build on elm (arm64) with latest llvm

Project Member Reported by manojgupta@chromium.org, Nov 21 2016

Issue description

Building chromeos-fonts fails at installation stage.

Crash is in running qeum-arm with fc-cache.

The exact command line is:
chroot /build/elm/ /tmp/qemu-arm /usr/bin/fc-cache -f -v

qemu: uncaught target signal 11 (Segmentation fault) - core dumped
/build/elm/tmp/portage/chromeos-base/chromeos-fonts-0.0.1-r24/temp/environment: line 451: 150302 Segmentation fault      (core dumped) chroot "${ROOT}" "/tmp/${qemu[0]}" "${qemu[@]:1}" "$@"
 * ERROR: chromeos-base/chromeos-fonts-0.0.1-r24::chromiumos failed (preinst phase):
 *   (no error message)
 * 
 * Call stack:
 *     ebuild.sh, line  93:  Called pkg_preinst
 *   environment, line 360:  Called generate_font_cache
 *   environment, line 352:  Called qemu_run '/usr/bin/fc-cache' '-f' '-v'
 *   environment, line 483:  Called die
 * The specific snippet of code:
 *           chroot "${ROOT}" "/tmp/${qemu[0]}" "${qemu[@]:1}" "$@" || die;

 
Forcing fontconfig (which provides fc-cache) to be built with gcc did not help.

Comment 2 by vapier@chromium.org, Nov 22 2016

elm has an arm32 userland, although we build it for armv8+ targets

there is a new qemu version out.  you could try upgrading it and see if it works.

is it only crashing for you ?  if it's crashing on the bots, that's really bad and we need to fix it.
I have tried qemu-2.7 and it did not work. Maybe qemu 2.8_rc will work but I have not tried it yet because of build issues.

I transferred the binary to an elm device and it seemed to work ok. But without an official image, I am not sure if the binary itself is fine.
Building other dependencies of fc-cache - fontconfig, expat, libpng and freetype with gcc did not help.
Attaching log when manually running:
sudo chroot /build/elm /tmp/qemu-arm -strace /usr/bin/fc-cache -f -v

qemu.log
23.2 KB View Download
The above log is with qemu-2.8.0-rc0. 

Comment 7 by vapier@chromium.org, Nov 22 2016

but it's not failing in CQ or canaries/release bots ?

in this case, i'm not sure the strace log is useful.  it could be a crash in fontconfig, or it could be a crash in qemu itself.  you'd have to load it into gdb to find out.
Build Works after forcing zlib to gcc. So unblocks the llvm upgrade process for now.
Packages that need gcc for now: zlib, freetype and fontconfig.
clang revision number used for llvm-next builds is 285906.
Turned out to be a bug in llvm (commit r285893). The change is already reverted in ToT llvm.
Yunlian is going to cherry pick the revert changelist.


Project Member

Comment 12 by bugdroid1@chromium.org, Dec 6 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/37d4633c80f4169703deef0c84ffde3e99256ed1

commit 37d4633c80f4169703deef0c84ffde3e99256ed1
Author: Manoj Gupta <manojgupta@google.com>
Date: Mon Dec 05 21:55:31 2016

Revert "use gcc to build zlib, freetype and fontconfig."

This reverts commit aa3c0083b55e67967c909a712f603891e1926476.
That change is no longer required after upstream fix backporting.

BUG= chromium:667506 
TEST=Packages get built

CQ-DEPEND=CL:416899

Change-Id: I3eb934f362fc0c6bc7be3e1593c9d3edc5985ae6
Reviewed-on: https://chromium-review.googlesource.com/416919
Commit-Ready: Manoj Gupta <manojgupta@chromium.org>
Tested-by: Manoj Gupta <manojgupta@chromium.org>
Reviewed-by: Mike Frysinger <vapier@chromium.org>

[modify] https://crrev.com/37d4633c80f4169703deef0c84ffde3e99256ed1/chromeos/config/env/sys-libs/zlib
[delete] https://crrev.com/bf2afbc71c6af3a5549cd39223a5ae27a29ea4d3/chromeos/config/env/media-libs/fontconfig
[delete] https://crrev.com/bf2afbc71c6af3a5549cd39223a5ae27a29ea4d3/chromeos/config/env/media-libs/freetype

Status: Fixed (was: Untriaged)
I see something very similar here on my trybot launched just now:

https://uberchromegw.corp.google.com/i/chromiumos.tryserver/builders/pre_cq/builds/11528/steps/InitSDK/logs/stdio

chromeos-fonts-0.0.1-r24: >>> Installing (1 of 1) chromeos-base/chromeos-fonts-0.0.1-r24::chromiumos

chromeos-fonts-0.0.1-r24:  * Removing /usr/lib*/*.la
chromeos-fonts-0.0.1-r24:  * Removing /etc/init.d
chromeos-fonts-0.0.1-r24:  * Removing /etc/conf.d
chromeos-fonts-0.0.1-r24:  * Removing /etc/logrotate.d
chromeos-fonts-0.0.1-r24: /var/tmp/portage/chromeos-base/chromeos-fonts-0.0.1-r24/temp/environment: line 479:  3439 Segmentation fault      "$@"
chromeos-fonts-0.0.1-r24:  * ERROR: chromeos-base/chromeos-fonts-0.0.1-r24::chromiumos failed (preinst phase):
chromeos-fonts-0.0.1-r24:  *   (no error message)
chromeos-fonts-0.0.1-r24:  * 
chromeos-fonts-0.0.1-r24:  * Call stack:
chromeos-fonts-0.0.1-r24:  *     ebuild.sh, line  93:  Called pkg_preinst
chromeos-fonts-0.0.1-r24:  *   environment, line 388:  Called generate_font_cache
chromeos-fonts-0.0.1-r24:  *   environment, line 360:  Called qemu_run '/usr/bin/fc-cache' '-f' '-v'
chromeos-fonts-0.0.1-r24:  *   environment, line 502:  Called die
chromeos-fonts-0.0.1-r24:  * The specific snippet of code:
chromeos-fonts-0.0.1-r24:  *           "$@" || die;
chromeos-fonts-0.0.1-r24:  * 
chromeos-fonts-0.0.1-r24:  * If you need support, post the output of `emerge --info '=chromeos-base/chromeos-fonts-0.0.1-r24::chromiumos'`,
chromeos-fonts-0.0.1-r24:  * the complete build log and the output of `emerge -pqv '=chromeos-base/chromeos-fonts-0.0.1-r24::chromiumos'`.
chromeos-fonts-0.0.1-r24:  * The complete build log is located at '/var/log/portage/chromeos-base:chromeos-fonts-0.0.1-r24:20161220-172852.log'.
chromeos-fonts-0.0.1-r24:  * For convenience, a symlink to the build log is located at '/var/tmp/portage/chromeos-base/chromeos-fonts-0.0.1-r24/temp/build.log'.
chromeos-fonts-0.0.1-r24:  * The ebuild environment file is located at '/var/tmp/portage/chromeos-base/chromeos-fonts-0.0.1-r24/temp/environment'.
chromeos-fonts-0.0.1-r24:  * Working directory: '/usr/lib64/portage/pym'
chromeos-fonts-0.0.1-r24:  * S: '/var/tmp/portage/chromeos-base/chromeos-fonts-0.0.1-r24/work/chromeos-fonts-0.0.1'

In fact, this just started hitting pretty much every builder.  Digging.  Please IM me if you know anything about this.  I'll file a new bug, too...
Filed  bug #676013 
This bug originally happened with a newer llvm version. New llvm version has not yet been rolled out.

Comment 18 by dchan@google.com, Mar 4 2017

Labels: VerifyIn-58
Status: Verified (was: Fixed)

Sign in to add a comment