Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Black Screen when booting NUC with Hypervisor #663

Closed
nwang-intel opened this issue Jul 11, 2018 · 4 comments · Fixed by #1054
Closed

Black Screen when booting NUC with Hypervisor #663

nwang-intel opened this issue Jul 11, 2018 · 4 comments · Fixed by #1054

Comments

@nwang-intel
Copy link

nwang-intel commented Jul 11, 2018

We found a black screen issue when boot up APL NUC with Hypervisor, After debugging we found it's ClearLinux issue. Here is the work around.

In order to successfully boot up SOS/UOS with their displays (otherwise there is NO display after boot up SOS), the following steps are needed before rebooting native Clear Linux to SOS,

  1. After launching native Clear Linux, you MUST install the desktop bundle:
    $ swupd bundle-add desktop

  2. Get the IP for clearlinux, record IP for ssh login to the SOS in case SOS display fails after the SOS is booted:
    $ ip addr

  3. Create the file /lib/systemd/system/weston.service with the following content:

    [Unit]
    Description=Weston
    Before=slices.target
    
    [Service]
    User=root
    Environment=HOME=/root
    WorkingDirectory=/tmp
    Environment=XDG_RUNTIME_DIR=/run/wayland
    ExecStartPre=-/bin/mkdir -p /run/wayland
    ExecStart=/usr/bin/weston --idle-time=0 --log=/var/log/weston.log
    ExecStop=/usr/bin/killall -s TERM weston
    StandardInput=tty
    StandardOutput=journal
    StandardError=journal
    TTYPath=/dev/tty2
    SupplementaryGroups=input
    
    [Install]
    WantedBy=multi-user.target
    
  4. Run this command to start the weston service:
    $ systemctl enable Weston

When booting up SOS:

  1. press F7
  2. choose “ACRN Hypervisor" (hypervisor name set by efibootmgr )
  3. select “The ACRN Service OS”
  4. then enter SOS

After booting up the UOS, step 1)~4) are needed for the UOS display too.

@puneetse
Copy link

Thanks for the workaround. It worked for me.

One comment on this step:

  1. Create the file /lib/systemd/system/weston.service with the following content:

I think /etc/systemd/system/weston.service is a better place to put the custom unit file, because Clear Linux is stateless and /usr is assumed to be owned by the Clear OS. More information on this here: https://clearlinux.org/features/stateless

@rustylynch
Copy link
Contributor

I don't understand why you need to install the desktop bundle just to run a command line argument to find the IP address. /usr/bin/ip is installed with os-core, so you already have that with the most basic native install and you just have to run it in the virtual terminal

@ttzeng
Copy link
Contributor

ttzeng commented Jul 25, 2018

@rustylynch , install the desktop bundle is to use the graphics tools, as the console is not visible when the system boots with the hypervisor and enable_initial_modeset=1, so what @nwang-intel is proposing is to get the IP address from a native session, then reboot the system and SSH into the SOS to setup the weston.

@NanlinXie
Copy link
Contributor

Currently Clear Linux support weston@user.service, thus we could add one user and run below commands to avoid create weston.service by self.

Below is run in native Clear linux:
swupd bundle-add desktop
useradd acrn
systemctl enable weston@acrn
systemctl start weston@acrn

ailun258-zz pushed a commit to ailun258-zz/acrn-hypervisor that referenced this issue Aug 14, 2018
1, remove Device Manager memory allocation mechanism because of no need set manually anymore
2, update the contents to meet the feedback from reviewer 
3,  add new user to SOS and enable weston to fix issue: projectacrn#663
ailun258-zz pushed a commit to ailun258-zz/acrn-hypervisor that referenced this issue Aug 15, 2018
add user and enable weston service to fix issue: projectacrn#663
ailun258-zz pushed a commit to ailun258-zz/acrn-hypervisor that referenced this issue Aug 16, 2018
verified again, with user name cl-sos. it doesn't work to fix projectacrn#663 
but cl_sos is working, so update the user name to cl_sos.  that means 
clear has naming rules for user name
dbkinder pushed a commit that referenced this issue Aug 16, 2018
verified again, with user name cl-sos. it doesn't work to fix #663 
but cl_sos is working, so update the user name to cl_sos.  that means 
clear has naming rules for user name
junjunshan1 pushed a commit to junjunshan1/acrn-hypervisor that referenced this issue Sep 3, 2018
add user and enable weston service to fix issue: projectacrn#663
junjunshan1 pushed a commit to junjunshan1/acrn-hypervisor that referenced this issue Sep 3, 2018
verified again, with user name cl-sos. it doesn't work to fix projectacrn#663 
but cl_sos is working, so update the user name to cl_sos.  that means 
clear has naming rules for user name
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants