Problem with Using Windows as Guest VM on ACRN


siming
 

hi,
   Following the instructions of the doc https://projectacrn.github.io/1.6/tutorials/using_windows_as_uos.html , but it did not show windows installation on the HDMI screen.
This is my build steps:
 My board is NUC7i5BNB, Clear linux verson is 32680, I update the hypervisor and kernel to release 2.0 with the boot menu ACRNGT Service VM.
root@clr-sata~ # uname -a
Linux clr-sata 5.4.43-PKT-200203T060100Z #3 SMP PREEMPT Tue Aug 4 10:24:36 CST 2020 x86_64 GNU/Linux
root@clr-sata~ # acrn-dm -v
DM version is: 2.0-64896ac9 (daily tag:acrn-2020w25.7-180000p), build by acrn@2020-08-04 10:38:21
I login the NUC with ths ssh on another pc as the second monitor. The first monitor is the hdmi of the NUC.
There is something wrong when I set the weston desktop.
# useradd cl_uos
# passwd cl_uos
# usermod -G wheel -a cl_uos
# systemctl enable weston@cl_uos
# systemctl start weston@cl_uos
reboot into Clear Linux OS (acrn) --the origin SOS,  the system show the desktop, like the picture1.
reboot into Tht ACRNGT Service VM --the updated  hypervisor and kernel SOS, the system show the login screen but can not input , like the picture2.
Run the install_win.sh in the ACRNGT Service VM,  I think the UOS is running according to the log, but the HDMI show like the picture3.
I'm not sure the set of the weston desktop and use the ssh as the second monitor.
Is there something wrong in the above steps?

my acrngt.conf is different from the instructions of the doc.  
add 
+ initrd /EFI/org.clearlinux/freestanding-00-intel-ucode.cpio
+ initrd /EFI/org.clearlinux/freestanding-i915-firmware.cpio.xz
otherwise the ACRNGT Service can't bootup.

Thanks
SiMing



root@clr-sata~/vm-win # ./install_win.sh 
cpu1 online=1
cpu2 online=1
cpu3 online=1
acrn-dm commond
passed gvt-g optargs low_gm 64, high_gm 448, fence 8
SW_LOAD: get ovmf path /usr/share/acrn/bios/OVMF.fd, size 0x200000
vm_create: win_vm1
VHM api version 1.0
vm_setup_memory: size=0x100000000
open hugetlbfs file /run/hugepage/acrn/huge_lv1/win_vm1/D279543825D611E8864ECB7A18B34643
open hugetlbfs file /run/hugepage/acrn/huge_lv2/win_vm1/D279543825D611E8864ECB7A18B34643
level 0 free/need pages:0/1 page size:0x200000
level 1 free/need pages:0/4 page size:0x40000000
to reserve more free pages:
to reserve pages (+orig 0): echo 4 > /sys/kernel/mm/hugepages/hugepages-1048576kB/nr_hugepages
to reserve pages (+orig 0): echo 1 > /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages
now enough free pages are reserved!

try to setup hugepage with:
level 0 - lowmem 0x0, biosmem 0x200000, highmem 0x0
level 1 - lowmem 0x80000000, biosmem 0x0, highmem 0x80000000
total_size 0x200000000

mmap ptr 0x0x7f7b17e5a000 -> baseaddr 0x0x7f7b40000000
mmap 0x80000000@0x7f7b40000000
touch 2 pages with pagesz 0x40000000
mmap 0x80000000@0x7f7c80000000
touch 2 pages with pagesz 0x40000000
mmap 0x200000@0x7f7c3fe00000
touch 1 pages with pagesz 0x200000

really setup hugepage with:
level 0 - lowmem 0x0, biosmem 0x200000, highmem 0x0
level 1 - lowmem 0x80000000, biosmem 0x0, highmem 0x80000000
vm_init_vdevs
No correct pm notify channel given
pci init hostbridge
pci init lpc
pci init pci-gvt
polling 34...
             Listening 34...
                            pci init virtio-blk
pci init virtio-net
pci init xhci
pci init ahci
pci init ahci
tpm: init_vtpm2:Invalid socket path!
                                    /tmp/dm.XmFQcNt     24:     Device (PCI0)
                                                                             Warning  3073 -        Multiple types ^  (Device object requires either a _HID or _ADR, but not both)

       /tmp/dm.XmFQcNt    827:     Processor (CPU0, 0x00, 0x00000000, 0x00) {}
                                                                              Warning  3168 -                          ^ Legacy Processor() keyword detected. Use Device() keyword instead.

                acrn_sw_load
                            SW_LOAD: partition blob /usr/share/acrn/bios/OVMF.fd size 2097152 copy to guest 0xffe00000
                                                                                                                      SW_LOAD: build e820 9 entries to addr: 0x7f7b400ef008
SW_LOAD: entry[0]: addr 0x0000000000000000, size 0x00000000000a0000,  type 0x1
SW_LOAD: entry[1]: addr 0x00000000000a0000, size 0x0000000000060000,  type 0x2
SW_LOAD: entry[2]: addr 0x0000000000100000, size 0x000000007ff00000,  type 0x1
SW_LOAD: entry[3]: addr 0x0000000080000000, size 0x0000000008000000,  type 0x2
SW_LOAD: entry[4]: addr 0x00000000db000000, size 0x0000000004000000,  type 0x2
SW_LOAD: entry[5]: addr 0x00000000df000000, size 0x0000000001000000,  type 0x2
SW_LOAD: entry[6]: addr 0x00000000e0000000, size 0x0000000020000000,  type 0x2
SW_LOAD: entry[7]: addr 0x0000000100000000, size 0x0000000040000000,  type 0x2
SW_LOAD: entry[8]: addr 0x0000000140000000, size 0x0000000080000000,  type 0x1
SW_LOAD: ovmf_entry 0xfffffff0
                              add_cpu


picture1:

picture2:

picture3:


Liu, Fuzhong
 

Hi Siming,

Please raise a git issue, will follow up in github.

Thanks!

 

BR.

Fuzhong

 

From: acrn-users@... <acrn-users@...> On Behalf Of siming
Sent: Saturday, August 15, 2020 12:03 PM
To: acrn-users@...
Subject: [acrn-users] Problem with Using Windows as Guest VM on ACRN

 

hi,

   Following the instructions of the doc https://projectacrn.github.io/1.6/tutorials/using_windows_as_uos.html , but it did not show windows installation on the HDMI screen.

This is my build steps:

 My board is NUC7i5BNB, Clear linux verson is 32680, I update the hypervisor and kernel to release 2.0 with the boot menu ACRNGT Service VM.

root@clr-sata~ # uname -a

Linux clr-sata 5.4.43-PKT-200203T060100Z #3 SMP PREEMPT Tue Aug 4 10:24:36 CST 2020 x86_64 GNU/Linux

root@clr-sata~ # acrn-dm -v

DM version is: 2.0-64896ac9 (daily tag:acrn-2020w25.7-180000p), build by acrn@2020-08-04 10:38:21

I login the NUC with ths ssh on another pc as the second monitor. The first monitor is the hdmi of the NUC.

There is something wrong when I set the weston desktop.

# useradd cl_uos

# passwd cl_uos

# usermod -G wheel -a cl_uos

# systemctl enable weston@cl_uos

# systemctl start weston@cl_uos

reboot into Clear Linux OS (acrn) --the origin SOS,  the system show the desktop, like the picture1.

reboot into Tht ACRNGT Service VM --the updated  hypervisor and kernel SOS, the system show the login screen but can not input , like the picture2.

Run the install_win.sh in the ACRNGT Service VM,  I think the UOS is running according to the log, but the HDMI show like the picture3.

I'm not sure the set of the weston desktop and use the ssh as the second monitor.

Is there something wrong in the above steps?

 

my acrngt.conf is different from the instructions of the doc.  

add 

+ initrd /EFI/org.clearlinux/freestanding-00-intel-ucode.cpio

+ initrd /EFI/org.clearlinux/freestanding-i915-firmware.cpio.xz

otherwise the ACRNGT Service can't bootup.

 

Thanks

SiMing

 

 

 

root@clr-sata~/vm-win # ./install_win.sh 

cpu1 online=1

cpu2 online=1

cpu3 online=1

acrn-dm commond

passed gvt-g optargs low_gm 64, high_gm 448, fence 8

SW_LOAD: get ovmf path /usr/share/acrn/bios/OVMF.fd, size 0x200000

vm_create: win_vm1

VHM api version 1.0

vm_setup_memory: size=0x100000000

open hugetlbfs file /run/hugepage/acrn/huge_lv1/win_vm1/D279543825D611E8864ECB7A18B34643

open hugetlbfs file /run/hugepage/acrn/huge_lv2/win_vm1/D279543825D611E8864ECB7A18B34643

level 0 free/need pages:0/1 page size:0x200000

level 1 free/need pages:0/4 page size:0x40000000

to reserve more free pages:

to reserve pages (+orig 0): echo 4 > /sys/kernel/mm/hugepages/hugepages-1048576kB/nr_hugepages

to reserve pages (+orig 0): echo 1 > /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages

now enough free pages are reserved!

 

try to setup hugepage with:

            level 0 - lowmem 0x0, biosmem 0x200000, highmem 0x0

            level 1 - lowmem 0x80000000, biosmem 0x0, highmem 0x80000000

total_size 0x200000000

 

mmap ptr 0x0x7f7b17e5a000 -> baseaddr 0x0x7f7b40000000

mmap 0x80000000@0x7f7b40000000

touch 2 pages with pagesz 0x40000000

mmap 0x80000000@0x7f7c80000000

touch 2 pages with pagesz 0x40000000

mmap 0x200000@0x7f7c3fe00000

touch 1 pages with pagesz 0x200000

 

really setup hugepage with:

            level 0 - lowmem 0x0, biosmem 0x200000, highmem 0x0

            level 1 - lowmem 0x80000000, biosmem 0x0, highmem 0x80000000

vm_init_vdevs

No correct pm notify channel given

pci init hostbridge

pci init lpc

pci init pci-gvt

polling 34...

             Listening 34...

                            pci init virtio-blk

pci init virtio-net

pci init xhci

pci init ahci

pci init ahci

tpm: init_vtpm2:Invalid socket path!

                                    /tmp/dm.XmFQcNt     24:     Device (PCI0)

                                                                             Warning  3073 -        Multiple types ^  (Device object requires either a _HID or _ADR, but not both)

 

       /tmp/dm.XmFQcNt    827:     Processor (CPU0, 0x00, 0x00000000, 0x00) {}

                                                                              Warning  3168 -                          ^ Legacy Processor() keyword detected. Use Device() keyword instead.

 

                acrn_sw_load

                            SW_LOAD: partition blob /usr/share/acrn/bios/OVMF.fd size 2097152 copy to guest 0xffe00000

                                                                                                                      SW_LOAD: build e820 9 entries to addr: 0x7f7b400ef008

SW_LOAD: entry[0]: addr 0x0000000000000000, size 0x00000000000a0000,  type 0x1

SW_LOAD: entry[1]: addr 0x00000000000a0000, size 0x0000000000060000,  type 0x2

SW_LOAD: entry[2]: addr 0x0000000000100000, size 0x000000007ff00000,  type 0x1

SW_LOAD: entry[3]: addr 0x0000000080000000, size 0x0000000008000000,  type 0x2

SW_LOAD: entry[4]: addr 0x00000000db000000, size 0x0000000004000000,  type 0x2

SW_LOAD: entry[5]: addr 0x00000000df000000, size 0x0000000001000000,  type 0x2

SW_LOAD: entry[6]: addr 0x00000000e0000000, size 0x0000000020000000,  type 0x2

SW_LOAD: entry[7]: addr 0x0000000100000000, size 0x0000000040000000,  type 0x2

SW_LOAD: entry[8]: addr 0x0000000140000000, size 0x0000000080000000,  type 0x1

SW_LOAD: ovmf_entry 0xfffffff0

                              add_cpu

 

 

picture1:

 

picture2:

 

picture3: