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

Issue 615730 link

Starred by 2 users

Issue metadata

Status: Verified
Owner:
Closed: Jun 2016
Cc:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug

Blocking:
issue 583465
issue 616150



Sign in to add a comment

Rialto build break in libpayload: multiple definition of `video_console_init'

Project Member Reported by joth@chromium.org, May 29 2016

Issue description

https://uberchromegw.corp.google.com/i/chromeos/builders/veyron_rialto-paladin/builds/979/steps/BuildPackages/logs/stdio

depthcharge-0.0.1-r1498:     LD         depthcharge.elf.tmp
depthcharge-0.0.1-r1498: /build/veyron_rialto/firmware/libpayload//bin/../lib/libpayload.a(video.libc.o): In function `video_console_init':
depthcharge-0.0.1-r1498: /build/veyron_rialto/tmp/portage/sys-boot/libpayload-0.0.1-r2406/work/libpayload-0.0.1/payloads/libpayload/drivers/video/video.c:262: multiple definition of `video_console_init'
depthcharge-0.0.1-r1498: /build/veyron_rialto/tmp/portage/sys-boot/depthcharge-0.0.1-r1498/work/depthcharge-0.0.1/build/vboot/callbacks/headless_stub.depthcharge.o:/build/veyron_rialto/tmp/portage/sys-boot/depthcharge-0.0.1-r1498/work/depthcharge-0.0.1/src/vboot/callbacks/headless_stub.c:60: first defined here
depthcharge-0.0.1-r1498: collect2: error: ld returned 1 exit status


It's blocking canary channel builds from building - 
https://cros-goldeneye.corp.google.com/console/listBuild?boards=veyron-rialto&milestone=53&chromeOsVersion=&chromeVersion=&startTimeFrom=&startTimeTo=#/

I think it was introduced in 8381.0.0 - this is the first build where I see this error

https://crosland.corp.google.com/log/8380.0.0..8381.0.0


 

Comment 1 by joth@chromium.org, May 31 2016

Also blocking chrome-PFQ builder   http://crbug.com/616150 

Comment 2 by amstan@chromium.org, May 31 2016

Cc: h...@chromium.org x...@chromium.org adurbin@chromium.org steve...@chromium.org amstan@chromium.org joth@chromium.org
 Issue 616150  has been merged into this issue.

Comment 3 by amstan@chromium.org, May 31 2016

Blocking: 616150
Cc: dhend...@chromium.org
A few days ago Julius cleaned up a bunch of the ebuilds in the firmware, one of those was rialto's config:
https://chromium-review.googlesource.com/344950

Unfortunately rialto had a difference: https://chromium-review.googlesource.com/#/c/304072/2

So that cleanup wasn't a noop.

What's the proper way to fix this? Just add the veyron_rialto file back? Is there a cleaner way (and more in line with what the other boards are doing?)

Comment 4 by amstan@chromium.org, May 31 2016

Here's a quick workaround to unblock people who want to build_packages: amstan@cros:~/cros/src/third_party/chromiumos-overlay/sys-boot/libpayload/files (2f255c0...)% git checkout 982399bcd625ea58eb5787e9a93da65dc612748f

Comment 5 by joth@chromium.org, May 31 2016

> Just add the veyron_rialto file back? 

Does this work? If so, can you get that CL uploaded and in the review pipeline to fix the build? If there's a better fix it can be added later.

Thanks

Could you attach build/veyron_rialto/firmware/libpayload/libpayload.config?

If VIDEO_CONSOLE is enabled in libpayload then it'll break for sure. CONFIG_HEADLESS is set for rialto in depthcharge. Those 2 will definitely cause issues in combination. I think this stems from the config changes landed by Julius.

VIDEO_CONSOLE is selected by default in libpayload so if nothing is turning that off for rialto which expects HEADLESS then that would be it. However, I'm not sure what rialto is so I can't say which is the appropriate fix.

Assuming depthcharge config is correct try the following:
In src/third_party/chromiumos-overlay/sys-boot/libpayload cp files/configs/config.veyron to files/configs/config.veyron_rialto Then add the following line to the newly created file.

# CONFIG_LP_VIDEO_CONSOLE is not set


Just took a look at https://chromium-review.googlesource.com/344950 -- the veyron_rialto config does indeed have VIDEO_CONSOLE not set. So that seems to be the right answer.

Comment 7 by x...@chromium.org, May 31 2016

Agree with joth@. We need to get the PFQ fixed asap. 

Comment 8 by x...@chromium.org, May 31 2016

BTW: I can repro this failure locally. Let me know if I provide anything useful (e.g., system log).

Comment 9 by amstan@chromium.org, May 31 2016

>> Just add the veyron_rialto file back? 
>
> Does this work? If so, can you get that CL uploaded and in the review pipeline to fix the build? If there's a better fix it can be added later.

Here we go: https://chromium-review.googlesource.com/#/c/348376/

Comment 10 by joth@chromium.org, May 31 2016

Blocking: 583465
Project Member

Comment 11 by bugdroid1@chromium.org, Jun 1 2016

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

commit 699032a399cce20b940a52542d8b3b6092ec453d
Author: Alexandru M Stan <amstan@chromium.org>
Date: Tue May 31 21:23:30 2016

Reinstate custom libpayload config for veyron_rialto

"libpayload: Minimalize config files" assumed that rialto was just directly
inhereting from veyron, but we did have one small change:
"veyron_rialto: Disable LP_VIDEO_CONSOLE"

This CL restores the separate veyron_rialto config with the appropriate
options.

BUG= chromium:615730 
TEST="emerge-veyron_rialto -j 4 depthcharge libpayload coreboot chromeos-bootimage" works

Change-Id: I70f31d99373f440e13a249b0437df37187d87f58
Signed-off-by: Alexandru M Stan <amstan@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/348376
Commit-Ready: Alexandru Stan <amstan@chromium.org>
Tested-by: Alexandru Stan <amstan@chromium.org>
Reviewed-by: Xiaoqian Dai <xdai@chromium.org>

[rename] https://crrev.com/699032a399cce20b940a52542d8b3b6092ec453d/sys-boot/libpayload/libpayload-0.0.1-r2410.ebuild
[add] https://crrev.com/699032a399cce20b940a52542d8b3b6092ec453d/sys-boot/libpayload/files/configs/config.veyron_rialto

Comment 12 by joth@chromium.org, Jun 1 2016

Status: Fixed (was: Untriaged)
Looks like everything is building now, thanks Alex & Julius for the quick fix

https://uberchromegw.corp.google.com/i/chromeos/builders/veyron_rialto-paladin
https://uberchromegw.corp.google.com/i/chromeos/builders/veyron_rialto-chrome-pfq/
Status: Verified (was: Fixed)
Bulk verified

Sign in to add a comment