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

Issue 670611 link

Starred by 1 user

Issue metadata

Status: Verified
Owner:
Last visit > 30 days ago
Closed: Dec 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug-Regression



Sign in to add a comment

frecon: UI disappeared after switching back to VT1 from VT2 in Factory Test

Project Member Reported by youcheng@google.com, Dec 2 2016

Issue description

UserAgent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.100 Safari/537.36

Steps to reproduce the problem:
1. Install ChromeOS factory test suite
2. Get into ChromeOS factory test suite
3. Press Ctrl+Alt+F2 (->), see the console
4. Press Ctrl+Alt+F1

What is the expected behavior?
Should be able to see UI(Chrome browser) showing factory test suite.

What went wrong?
UI disappeared, can only see a white screen and able to type text.

Did this work before? Yes 8976.0.0

Chrome version: 54.0.2840.100  Channel: dev
OS Version: 
Flash Version: 

This bug comes with 8977.0.0 or later ChromeOS.
CL: https://chromium-review.googlesource.com/#/c/408799/
 
Cc: hungte@chromium.org h...@chromium.org chuntsen@chromium.org youcheng@chromium.org phoenixshen@chromium.org
Labels: -Via-Wizard-Other
Owner: h...@chromium.org
Summary: frecon: UI disappeared after switching back to VT1 from VT2 in Factory Test (was: UI disappeared after switching back to VT1 from VT2 )
Components: OS>Kernel>Graphics
Labels: -Pri-2 Pri-1
It's breaking all platform.
Steps to install factory test suite:
1. Switch to developer mode
2. Install test image (>=8977)
3. Download factory toolkit installer from GoldenEye
(Builds -> Factory -> choose your board -> Signed -> Images -> ChromeOS-factory-Rxx-xxxx.xx.0-BOARD.zip)
4. Extract install_factory_toolkit.run from the zip file (factory_toolkit/)
5. copy install_factory_toolkit.run into Chromebook and run it
6. reboot

Comment 4 by h...@chromium.org, Dec 2 2016

Cc: marc...@chromium.org
Owner: dbehr@chromium.org
I'm OOO today. dbehr@ - any ideas?

Comment 5 by dbehr@chromium.org, Dec 2 2016

Status: Started (was: Unconfirmed)
Yeah, splash term (VT1) is active when factory test is running because factory flow never sends DBUS message LoginPromptVisible which when received, causes frecon to destroy splash term.

So after https://chromium-review.googlesource.com/408799 splash term entry in terminal array is not NULL after splash finishes running and not cleared by LoginPromptVisible so when switching back to VT1 frecon switches to splash instead of Chrome.
Re#5: Factory does emit login-prompt-visible ( https://chromium.googlesource.com/chromiumos/platform/factory/+/master/py/goofy/test_environment.py#151 ) upstart signal, although I'm not sure if that will be properly translated into DBUS message.
Project Member

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

Labels: merge-merged-factory-gru-9017.B
The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/frecon/+/a05230fdb9e4bf4e6a8d268a4faf06dfcf5ba24d

commit a05230fdb9e4bf4e6a8d268a4faf06dfcf5ba24d
Author: You-Cheng Syu <youcheng@chromium.org>
Date: Tue Dec 06 04:56:21 2016

Revert "frecon: allow user to change font scaling with special keys"

This reverts commit 9528587602d96e5f15979332e5c7a25b759ff856.

BUG= chromium:670611 
TEST=manually, switch to VT2 and then back to VT1 under factory test

Change-Id: I8806be980311bb0c2974d823bd01e43655c6f8ea
Reviewed-on: https://chromium-review.googlesource.com/416473
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
Commit-Queue: Youcheng Syu <youcheng@chromium.org>
Tested-by: Youcheng Syu <youcheng@chromium.org>

[modify] https://crrev.com/a05230fdb9e4bf4e6a8d268a4faf06dfcf5ba24d/input.c
[modify] https://crrev.com/a05230fdb9e4bf4e6a8d268a4faf06dfcf5ba24d/term.c
[modify] https://crrev.com/a05230fdb9e4bf4e6a8d268a4faf06dfcf5ba24d/font.h
[modify] https://crrev.com/a05230fdb9e4bf4e6a8d268a4faf06dfcf5ba24d/splash.c
[modify] https://crrev.com/a05230fdb9e4bf4e6a8d268a4faf06dfcf5ba24d/term.h
[modify] https://crrev.com/a05230fdb9e4bf4e6a8d268a4faf06dfcf5ba24d/font.c

Comment 8 by dbehr@chromium.org, Dec 7 2016

#6, it is actually the other way around, Chrome sends DBUS signal which session manager later turns into initctl signal. The code you pointed to does the initctl part.
Project Member

Comment 9 by bugdroid1@chromium.org, Dec 7 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/frecon/+/6e0f6fdf64f25908ac2b8f393230979677a6ab6e

commit 6e0f6fdf64f25908ac2b8f393230979677a6ab6e
Author: Dominik Behr <dbehr@chromium.org>
Date: Sat Dec 03 01:54:08 2016

frecon: unconditionally destroy splash screen and extend life of fb

Always destroy splash object before entering main loop. We do not need
any resources from it after animation has finished and there is no need
to wait for Chrome to start.

Also, extend the life of FB by delaying rmfb till the next modeset or rmfb
or destruction of drm device. rmfb removes framebuffer from all bindings
causing black screen. This change will allow smooth transition from frecon
splash to Chrome after destroying splash object and re-creation of term after
exiting shell.

Also, fix potential drm object leak when creating of fb fails.

BUG= chromium:670611 
TEST=run factory test on kevin and switch to VT2 and back to VT1.

Change-Id: Ia97aafbf3dc129b2d8394ae543ec15f03ae3752f
Signed-off-by: Dominik Behr <dbehr@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/416313
Reviewed-by: Haixia Shi <hshi@chromium.org>

[modify] https://crrev.com/6e0f6fdf64f25908ac2b8f393230979677a6ab6e/dbus.h
[modify] https://crrev.com/6e0f6fdf64f25908ac2b8f393230979677a6ab6e/drm.c
[modify] https://crrev.com/6e0f6fdf64f25908ac2b8f393230979677a6ab6e/dbus.c
[modify] https://crrev.com/6e0f6fdf64f25908ac2b8f393230979677a6ab6e/drm.h
[modify] https://crrev.com/6e0f6fdf64f25908ac2b8f393230979677a6ab6e/main.c
[modify] https://crrev.com/6e0f6fdf64f25908ac2b8f393230979677a6ab6e/fb.c

Re#8: yes, so we'll also change the factory code to send dbus message instead so we won't fall into similar problems again in future.
Project Member

Comment 11 by bugdroid1@chromium.org, Dec 7 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/factory/+/0c70035d27cd4351cc5fb5de30bd8513790020c1

commit 0c70035d27cd4351cc5fb5de30bd8513790020c1
Author: Hung-Te Lin <hungte@chromium.org>
Date: Wed Dec 07 02:09:40 2016

goofy: Start 'login-prompt-visible' by sending dbus message.

Factory UI (Goofy) used to start login-prompt-visible upstart job
directly, but as  issue 670611  indicates, there may be processes waiting
for dbus message LoginPromptVisible instead of upstart job signals.

As a result, we should replace the initctl command by real dbus event.

BUG= chromium:670611 .
TEST=make test; manually invoked factory UI on ToT test image, able to
     switch between VT1 and VT2.

Change-Id: If631f85c83dfeaac59cefe5d44975b17d8ef8035
Reviewed-on: https://chromium-review.googlesource.com/417459
Commit-Ready: Hung-Te Lin <hungte@chromium.org>
Tested-by: Hung-Te Lin <hungte@chromium.org>
Reviewed-by: Youcheng Syu <youcheng@google.com>

[modify] https://crrev.com/0c70035d27cd4351cc5fb5de30bd8513790020c1/py/goofy/test_environment.py

Status: Fixed (was: Started)
both fixes merged (toolkit side, frecon side).

should be fine to close this.
Status: Verified (was: Fixed)
verified in nyan blaze:
https://ubercautotest.corp.google.com/afe/#tab_id=view_job&object_id=94153464
Project Member

Comment 14 by bugdroid1@chromium.org, Jan 20 2017

Labels: merge-merged-factory-reef-8811.B
The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/factory/+/0bdaf4013e6a3a96422431a306bb0188552bf04d

commit 0bdaf4013e6a3a96422431a306bb0188552bf04d
Author: Hung-Te Lin <hungte@chromium.org>
Date: Wed Dec 07 02:09:40 2016

goofy: Start 'login-prompt-visible' by sending dbus message.

Factory UI (Goofy) used to start login-prompt-visible upstart job
directly, but as  issue 670611  indicates, there may be processes waiting
for dbus message LoginPromptVisible instead of upstart job signals.

As a result, we should replace the initctl command by real dbus event.

BUG= chromium:670611 .
TEST=make test; manually invoked factory UI on ToT test image, able to
     switch between VT1 and VT2.

Change-Id: If631f85c83dfeaac59cefe5d44975b17d8ef8035
Reviewed-on: https://chromium-review.googlesource.com/417459
Commit-Ready: Hung-Te Lin <hungte@chromium.org>
Tested-by: Hung-Te Lin <hungte@chromium.org>
Reviewed-by: Youcheng Syu <youcheng@google.com>
(cherry picked from commit 0c70035d27cd4351cc5fb5de30bd8513790020c1)
Reviewed-on: https://chromium-review.googlesource.com/430514
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
Commit-Queue: Hung-Te Lin <hungte@chromium.org>
Trybot-Ready: Hung-Te Lin <hungte@chromium.org>

[modify] https://crrev.com/0bdaf4013e6a3a96422431a306bb0188552bf04d/py/goofy/test_environment.py

Project Member

Comment 15 by bugdroid1@chromium.org, Jan 20 2017

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

commit b34f9f524a73132eb948b46478d5f33a8f8b158f
Author: Hung-Te Lin <hungte@chromium.org>
Date: Wed Dec 07 02:09:40 2016

goofy: Start 'login-prompt-visible' by sending dbus message.

Factory UI (Goofy) used to start login-prompt-visible upstart job
directly, but as  issue 670611  indicates, there may be processes waiting
for dbus message LoginPromptVisible instead of upstart job signals.

As a result, we should replace the initctl command by real dbus event.

BUG= chromium:670611 .
TEST=make test; manually invoked factory UI on ToT test image, able to
     switch between VT1 and VT2.

Change-Id: If631f85c83dfeaac59cefe5d44975b17d8ef8035
Reviewed-on: https://chromium-review.googlesource.com/417459
Commit-Ready: Hung-Te Lin <hungte@chromium.org>
Tested-by: Hung-Te Lin <hungte@chromium.org>
Reviewed-by: Youcheng Syu <youcheng@google.com>
(cherry picked from commit 0c70035d27cd4351cc5fb5de30bd8513790020c1)
Reviewed-on: https://chromium-review.googlesource.com/430515
Trybot-Ready: Hung-Te Lin <hungte@chromium.org>
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
Commit-Queue: Hung-Te Lin <hungte@chromium.org>

[modify] https://crrev.com/b34f9f524a73132eb948b46478d5f33a8f8b158f/py/goofy/test_environment.py

Sign in to add a comment