New issue
Advanced search Search tips

Issue 888883 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: Oct 4
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug

Blocked on:
issue 885007

Blocking:
issue 852302



Sign in to add a comment

tast.video.WebRTCPeerConnectionWithCamera* test failed in tricky-tot-chrome-pfq-informational

Project Member Reported by minch@chromium.org, Sep 25

Issue description

Builder info:
https://cros-goldeneye.corp.google.com/chromeos/healthmonitoring/buildDetails?buildbucketId=8934466642609516624
tast.video.WebRTCPeerConnectionWithCameraH264   [ FAILED ]
tast.video.WebRTCPeerConnectionWithCameraVP8    [ FAILED ]
tast.video.WebRTCPeerConnectionWithCameraVP8      FAIL: Timed out waiting for video device to be available: context deadline exceeded (last error: "!!(checkVideoInput())" is false)



 
Hi keiichiw@chromium.org, can you help take a look of the test failure? thanks.
Blockedon: 885007
Cc: shik@chromium.org jcliang@chromium.org
Components: OS>Kernel>Camera
Labels: OS-Chrome
Hi. These failures are intended for now.
These are caused by lack of USB camera; tricky is a Chromebox and doesn't have any camera.

Currently, we are working on  crbug.com/885007  to check device capabilities before running tests. After the issues is resolved, tast.video.WebRTC* won't be performed on tricky-tot-chrome-pfq-informational.
Cc: derat@chromium.org
Seems that this will not block PFQ, right?
Yes, these tests currently have the "informational" attribute set, so failures shouldn't block anything.
Cc: sammiequon@chromium.org agawronska@chromium.org
Status: Started (was: Assigned)
I think that https://crrev.com/c/1253490 will fix this.
Project Member

Comment 7 by bugdroid1@chromium.org, Oct 2

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/tast-tests/+/d2ca2a5de848ff886c5c1809cafcdbc799df382f

commit d2ca2a5de848ff886c5c1809cafcdbc799df382f
Author: Keiichi Watanabe <keiichiw@chromium.org>
Date: Tue Oct 02 12:19:42 2018

tast-tests: Add autocaps dependencies to WebRTC tests

Add autotest-capability:usb_camera in SoftwareDeps in WebRTC tests,
which require that DUT supports USB cameras.

BUG=chromium:852302,  chromium:888883 
TEST="tast run -checktestdeps always <guado> <testname>" skips the tests
TEST="tast run -checktestdeps always <amd64-genericVM> <testname>" run correctly

Change-Id: I9bc0830c929df17b4e1e4dde914a76f33bcc0239
Signed-off-by: Keiichi Watanabe <keiichiw@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1253490
Reviewed-by: Dan Erat <derat@chromium.org>
Reviewed-by: Shuhei Takahashi <nya@chromium.org>

[modify] https://crrev.com/d2ca2a5de848ff886c5c1809cafcdbc799df382f/src/chromiumos/tast/local/bundles/cros/video/webrtc_camera_perf.go
[modify] https://crrev.com/d2ca2a5de848ff886c5c1809cafcdbc799df382f/src/chromiumos/tast/local/bundles/cros/video/webrtc_camera.go
[modify] https://crrev.com/d2ca2a5de848ff886c5c1809cafcdbc799df382f/src/chromiumos/tast/local/bundles/cros/video/webrtc_peer_connection_with_camera_h264.go
[modify] https://crrev.com/d2ca2a5de848ff886c5c1809cafcdbc799df382f/src/chromiumos/tast/local/bundles/cros/video/webrtc_peer_connection_with_camera_vp8.go
[modify] https://crrev.com/d2ca2a5de848ff886c5c1809cafcdbc799df382f/src/chromiumos/tast/local/bundles/cros/video/webrtc_peer_connection_with_camera_vp8_perf.go
[modify] https://crrev.com/d2ca2a5de848ff886c5c1809cafcdbc799df382f/src/chromiumos/tast/local/bundles/cros/video/webrtc_peer_connection_with_camera_h264_perf.go

Im seeing these fail on the last two peach-pit-tot-chrome-informational bots now:
https://cros-goldeneye.corp.google.com/chromeos/healthmonitoring/buildDetails?buildbucketId=8933755060808010736
It's saying "Unknown dependencies: autotest-capability:usb_camera", but this dependency was already supported by crrev.com/c/1234592 in Tast.
The cause of these failure seems that latest version of Tast is not used there yet;/tast/ is a little bit old but /tast-tests/ is up to date on this board.

I think latest Tast is coming soon on this board, and this failure will disappear.

It looks like the same failure is occurring on some other board (e.g. hana).
I wonder if I should have added "CQ-DEPEND" to my CL.
https://stainless.corp.google.com/search?view=matrix&row=model&col=build&first_date=2018-10-02&last_date=2018-10-03&test=tast.video.WebRTC&exclude_cts=false&exclude_not_run=false&exclude_non_release=true&exclude_au=true&exclude_acts=true&exclude_retried=true&exclude_non_production=false
Thanks for the info, do you know when tast is coming to peach-pit. Is there another tracking issue for it?
The relevant packages on the DUT are tast-local-test-runner (built from platform/tast) and tast-local-tests-cros (built from platform/tast-tests). https://crrev.com/c/1234592 landed on Sept 28 while https://crrev.com/c/1253490 landed on Oct 2, so it's unlikely that the DUT has the new version of the second package but an older version of the first one.

A possible explanation is that the managed-capabilities.yaml file installed by autotest-capability on the DUT fails to list usb_camera. Is that the case here?
Cc: hiroh@chromium.org
I found the problem; the cause was in neither versioning nor managed-capabilities.yaml.
According to debug logs, it failed to detect capabilities with the following error:
"/usr/local/etc/autotest-capability: failed loading system info: lspci failed: exit status 1".

This caused at http://cs/chromeos_public/src/platform/tast/src/chromiumos/tast/autocaps/detect.go?l=48&rcl=0adae1cbfe137d8d76a4546ee250aa6d994a4f4d.
On some devices that doesn't have kepler (e.g. peach_pi, hana), lspci returns status 1, but it shouldn't be an error.

derat@, could you please fix this?
Blocking: 852302
Cc: keiichiw@chromium.org
Owner: derat@chromium.org
Sure, I'll do this today. Thanks for figuring it out!
I don't think that the problem is a missing kepler device, but rather a missing PCI bus. On my workstation (which has a PCI bus), "lspci -n -d 1ae0:001a" just exits with status 0 without printing anything, but on the kana DUT at chromeos15-row1-rack10-host7, it fails instead:

localhost ~ # lspci -n -d 1ae0:001a
pcilib: Cannot open /proc/bus/pci
lspci: Cannot find any working access method.
localhost ~ # echo $?
1

I've uploaded https://chromium-review.googlesource.com/c/chromiumos/platform/tast/+/1258530 to fix this.
Project Member

Comment 17 by bugdroid1@chromium.org, Oct 4

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/tast/+/e6587208a75ca536968ec7219fee644b3839b4cb

commit e6587208a75ca536968ec7219fee644b3839b4cb
Author: Daniel Erat <derat@chromium.org>
Date: Thu Oct 04 07:37:00 2018

tast: Make autocaps package ignore failing lspci command.

The autocaps package's invocation of the lspci command will
fail if the system doesn't have a PCI bus. Just report that
a kepler device isn't present in this case instead of
reporting an error.

BUG= chromium:888883 
TEST=ran tests against a hana DUT with -buildlocalrunner and
     saw autotest-capability features get returned rather
     than a "/usr/local/etc/autotest-capability: failed
     loading system info: lspci failed: exit status 1" error

Change-Id: I8db446555365efdeb6ce4c0eaa8aab42ae808625
Reviewed-on: https://chromium-review.googlesource.com/1258530
Commit-Ready: Dan Erat <derat@chromium.org>
Tested-by: Dan Erat <derat@chromium.org>
Reviewed-by: Sammie Quon <sammiequon@chromium.org>
Reviewed-by: Hirokazu Honda <hiroh@chromium.org>
Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>

[modify] https://crrev.com/e6587208a75ca536968ec7219fee644b3839b4cb/src/chromiumos/tast/autocaps/detect.go

Status: Fixed (was: Started)

Sign in to add a comment