Latest Muen build crash

21 views
Skip to first unread message

Lonnie Cumberland

unread,
Mar 31, 2020, 7:48:38 PM3/31/20
to muen...@googlegroups.com, Adrian-Ken Rueegsegger
Hello All,

Hope that everyone is doing well and being safe.

I am building Muen with the guidance from the website and use of the docker container environment but ran into a crash:

------------------------------------
Mar 31 2020 23:42:26 kernel: Build (debug)
Mar 31 2020 23:42:26 kernel: Executing 'gprbuild -p -j6 --RTS=/home/user/muen/muen/rts/obj -Pkernel -Xbuild=debug -Xstacksize=4096 -Xproofs=complete'
Compile
   [Ada]          sk-crash_audit.adb
   [Ada]          skp-scheduling.ads
   [Ada]          skp-hardware.ads
   [Ada]          skp.ads
   [Ada]          skp-kernel.ads
   [Ada]          skp-interrupts.ads
   [Ada]          skp-iommu.adb
   [Ada]          skp-subjects.adb
   [Ada]          skp-events.adb
   [Ada]          muschedinfo.ads
/home/user/muen/muen/kernel/src/sk-crash_audit.adb:46:04: warning: no warning suppressed by this pragma
/home/user/muen/muen/kernel/src/sk-crash_audit.adb:152:38: warning: loop range is null, loop will not execute

   compilation of sk-crash_audit.adb failed

gprbuild: *** compilation phase failed
-------------------------------------

Any ideas on how to fix this?
Thanks in advance,
Lonnie

Adrian-Ken Rueegsegger

unread,
Apr 1, 2020, 5:04:00 AM4/1/20
to Lonnie Cumberland, muen...@googlegroups.com
Hi Lonnie,

On 4/1/20 1:48 AM, Lonnie Cumberland wrote:
> Mar 31 2020 23:42:26 kernel: Build (debug)
> Mar 31 2020 23:42:26 kernel: Executing 'gprbuild -p -j6
> --RTS=/home/user/muen/muen/rts/obj -Pkernel -Xbuild=debug -Xstacksize=4096
> -Xproofs=complete'
> Compile
> [Ada] sk-crash_audit.adb
> [Ada] skp-scheduling.ads
> [Ada] skp-hardware.ads
> [Ada] skp.ads
> [Ada] skp-kernel.ads
> [Ada] skp-interrupts.ads
> [Ada] skp-iommu.adb
> [Ada] skp-subjects.adb
> [Ada] skp-events.adb
> [Ada] muschedinfo.ads
> /home/user/muen/muen/kernel/src/sk-crash_audit.adb:46:04: warning: no
> warning suppressed by this pragma
> /home/user/muen/muen/kernel/src/sk-crash_audit.adb:152:38: warning: loop
> range is null, loop will not execute
>
> compilation of sk-crash_audit.adb failed
>
> gprbuild: *** compilation phase failed
> -------------------------------------
>
> Any ideas on how to fix this?

Can you provide some more information on what source code version
(commit ID) you are using and what system you are building, i.e. the
command line invocation?

The second warning looks like the version string is empty even though
this should be generated as part of the kernel build process if it is
missing.

Regards,
Adrian

Lonnie Cumberland

unread,
Apr 1, 2020, 9:50:23 AM4/1/20
to Adrian-Ken Rueegsegger, muen...@googlegroups.com
Hi Adrian,

Thanks for getting back to me and let me see if I can provide you some information to possibly replicate the issue.

For the hardware, I wanted to build on a VPS XL server (Contabo.com) that has "Ubuntu 16.04 (64 Bit)" that has 6 cores, 30 GB RAM, and 2 TB storage. Although it is an online VPS system from a provider, I may not be able to run any demo produced but I should be able to build on this system as I have Docker installed and am using that environment for building.

Let me walk through the steps here that I did as maybe I missed some important step here.

Basically I just started at the Muen SK webpage and wanted to see if I could build up everything and run something, either on hardware or inside Bochs or Virtualbox, after it compiled. So then, starting on that page (https://muen.codelabs.ch/)

1. Get the source code: 

$ git clone --recursive https://git.codelabs.ch/git/muen.git

2. Pull the Docker Environment:  

$ docker pull codelabsch/muen-dev-env

3. Start up the Docker container and map in my local host path to Muen:

$ docker run -it -v /home/lonnie/muen:/home/user/muen --entrypoint /bin/bash codelabsch/muen-dev-env

4. Once inside the Docker container:

user@5ca53dd2d450:~$

then:

$ cd muen/muen

followed by:

user@5ca53dd2d450:~/muen/muen$ make

--- RESULT --------------------------------------------------------------------------------------------------------------------------------
user@11d2e0280078:~/muen/muen$ make
Apr 01 2020 13:01:49 ada-bfd: Download
Apr 01 2020 13:01:50 ada-bfd: Unpack
Apr 01 2020 13:01:50 ada-bfd: Configure
Apr 01 2020 13:01:54 ada-bfd: Build
Apr 01 2020 13:01:57 ada-bfd: Install
Apr 01 2020 13:01:57 alog: Download
Apr 01 2020 13:01:59 alog: Unpack
Apr 01 2020 13:01:59 alog: Build
Apr 01 2020 13:02:05 alog: Install
Apr 01 2020 13:02:05 gnatcoll: Download
Apr 01 2020 13:02:07 gnatcoll: Unpack
Apr 01 2020 13:02:07 gnatcoll: Configure
Apr 01 2020 13:02:08 gnatcoll: Build
Apr 01 2020 13:03:00 gnatcoll: Install
Apr 01 2020 13:03:00 libhwbase: Download
Apr 01 2020 13:03:02 libhwbase: Unpack
Apr 01 2020 13:03:02 libhwbase: Patch 0001-mutime-Make-Sinfo-an-imported-constant.patch
Apr 01 2020 13:03:02 libhwbase: Patch 0002-static_mmio-Disable-SPARK-for-Set_Base_Address-body.patch
Apr 01 2020 13:03:03 libhwbase: Patch 0003-time-Add-T_First-constant.patch
Apr 01 2020 13:03:03 libsparkcrypto: Download
Apr 01 2020 13:03:06 libsparkcrypto: Unpack
Apr 01 2020 13:03:06 xia: Download
Apr 01 2020 13:03:07 xia: Unpack
Apr 01 2020 13:03:07 libmuxml: XSLT system_a
Apr 01 2020 13:03:08 libmuxml: Xml2Ada system_a
Apr 01 2020 13:03:08 libmuxml: XSLT system_b
Apr 01 2020 13:03:08 libmuxml: Xml2Ada system_b
Apr 01 2020 13:03:08 libmuxml: XSLT system_src
Apr 01 2020 13:03:08 libmuxml: Xml2Ada system_src
Apr 01 2020 13:03:08 libmuxml: XSLT vcpu_profile
Apr 01 2020 13:03:08 libmuxml: Xml2Ada vcpu_profile
Apr 01 2020 13:03:08 libmuxml: XSLT system_config
Apr 01 2020 13:03:08 libmuxml: Xml2Ada system_config
Apr 01 2020 13:03:08 libmuxml: XSLT hardware_config
Apr 01 2020 13:03:08 libmuxml: Xml2Ada hardware_config
Apr 01 2020 13:03:08 libmuxml: XSLT mugenschedcfg
Apr 01 2020 13:03:08 libmuxml: Xml2Ada mugenschedcfg
Apr 01 2020 13:03:08 libmuxml: XSLT component
Apr 01 2020 13:03:08 libmuxml: Xml2Ada component
Apr 01 2020 13:03:09 libmucfgvcpu: Create native profile
Apr 01 2020 13:03:09 libmucfgvcpu: Create vm profile
Apr 01 2020 13:03:09 tools: Build
Apr 01 2020 13:04:16 policy: Merge
Apr 01 2020 13:04:17 rts: Build
Apr 01 2020 13:04:17 libmudm: Generate cspecs
Apr 01 2020 13:04:17 libmutime: Generate cspecs
Apr 01 2020 13:04:17 libdebuglog: Generate config.xml
Apr 01 2020 13:04:17 libdebuglog: Generate cspecs
Apr 01 2020 13:04:18 libxhcidbg: Generate cspecs
Apr 01 2020 13:04:18 dbgserver: Generate config.xml
Apr 01 2020 13:04:18 dbgserver: Generate dbg_config.gpr
Apr 01 2020 13:04:18 dbgserver: Generate logchannels.xml
Apr 01 2020 13:04:18 dbgserver: Generate cspecs
Apr 01 2020 13:04:18 dm: Generate cspecs
Apr 01 2020 13:04:18 ps2_drv: Generate cspecs
Apr 01 2020 13:04:18 sm: Generate config.xml
Apr 01 2020 13:04:18 sm: Generate config.gpr
Apr 01 2020 13:04:18 sm: Generate cspecs
Apr 01 2020 13:04:18 time: Generate cspecs
Apr 01 2020 13:04:19 vt: Generate cspecs
Apr 01 2020 13:04:19 components: Build SPARK (debug)
Apr 01 2020 13:04:23 components: Build SPARK (release)
Apr 01 2020 13:04:27 libmuchannel: Build (debug)
Apr 01 2020 13:04:27 libmuchannel: Build (release)
Apr 01 2020 13:04:27 libmuchannel: Check stack (release)
Apr 01 2020 13:04:27 libmuchannel: Check stack (debug)
Apr 01 2020 13:04:28 libmudm: Build (debug)
Apr 01 2020 13:04:28 libmudm: Build (release)
Apr 01 2020 13:04:28 libmudm: Check stack (release)
Apr 01 2020 13:04:28 libmudm: Check stack (debug)
Apr 01 2020 13:04:29 libmutime: Build (debug)
Apr 01 2020 13:04:29 libmutime: Build (release)
Apr 01 2020 13:04:29 libmutime: Check stack (release)
Apr 01 2020 13:04:29 libmutime: Check stack (debug)
Apr 01 2020 13:04:29 libdebuglog: Build (debug)
Apr 01 2020 13:04:30 libdebuglog: Build (release)
Apr 01 2020 13:04:30 libdebuglog: Check stack (release)
Apr 01 2020 13:04:30 libdebuglog: Check stack (debug)
Apr 01 2020 13:04:30 libmusinfo: Build (debug)
Apr 01 2020 13:04:31 libmusinfo: Build (release)
Apr 01 2020 13:04:31 libmusinfo: Check stack (release)
Apr 01 2020 13:04:31 libmusinfo: Check stack (debug)
Apr 01 2020 13:04:31 libxhcidbg: Build (debug)
Apr 01 2020 13:04:32 libxhcidbg: Build (release)
Apr 01 2020 13:04:32 libxhcidbg: Check stack (release)
Apr 01 2020 13:04:32 libxhcidbg: Check stack (debug)
Apr 01 2020 13:04:32 crypter: Build (debug)
Apr 01 2020 13:04:33 crypter: Build (release)
Apr 01 2020 13:04:33 crypter: Check stack (release)
Apr 01 2020 13:04:33 crypter: Check stack (debug)
Apr 01 2020 13:04:34 dbgserver: Build (debug)
Apr 01 2020 13:04:34 dbgserver: Build (release)
Apr 01 2020 13:04:34 dbgserver: Check stack (release)
Apr 01 2020 13:04:35 dbgserver: Check stack (debug)
Apr 01 2020 13:04:35 dm: Build (debug)
Apr 01 2020 13:04:35 dm: Build (release)
Apr 01 2020 13:04:36 dm: Check stack (release)
Apr 01 2020 13:04:36 dm: Check stack (debug)
Apr 01 2020 13:04:36 idle: Build (debug)
Apr 01 2020 13:04:36 idle: Build (release)
Apr 01 2020 13:04:37 idle: Check stack (release)
Apr 01 2020 13:04:37 idle: Check stack (debug)
Apr 01 2020 13:04:37 ps2_drv: Build (debug)
Apr 01 2020 13:04:37 ps2_drv: Build (release)
Apr 01 2020 13:04:38 ps2_drv: Check stack (release)
Apr 01 2020 13:04:38 ps2_drv: Check stack (debug)
Apr 01 2020 13:04:38 sl: Build (debug)
Apr 01 2020 13:04:38 sl: Build (release)
Apr 01 2020 13:04:39 sl: Check stack (release)
Apr 01 2020 13:04:39 sl: Check stack (debug)
Apr 01 2020 13:04:39 sm: Build (debug)
Apr 01 2020 13:04:39 sm: Build (release)
Apr 01 2020 13:04:40 sm: Check stack (release)
Apr 01 2020 13:04:40 sm: Check stack (debug)
Apr 01 2020 13:04:40 time: Build (debug)
Apr 01 2020 13:04:41 time: Build (release)
Apr 01 2020 13:04:41 time: Check stack (release)
Apr 01 2020 13:04:41 time: Check stack (debug)
Apr 01 2020 13:04:41 vt: Build (debug)
Apr 01 2020 13:04:42 vt: Build (release)
Apr 01 2020 13:04:42 vt: Check stack (release)
Apr 01 2020 13:04:42 vt: Check stack (debug)
Apr 01 2020 13:04:43 libmudm: Install cspecs
Apr 01 2020 13:04:43 libmutime: Install cspecs
Apr 01 2020 13:04:43 libdebuglog: Install cspecs
Apr 01 2020 13:04:43 libxhcidbg: Install cspecs
Apr 01 2020 13:04:43 crypter: Build (debug)
Apr 01 2020 13:04:43 crypter: Install
Apr 01 2020 13:04:43 dbgserver: Build (debug)
Apr 01 2020 13:04:44 dbgserver: Install cspecs
Apr 01 2020 13:04:44 dbgserver: Install
Apr 01 2020 13:04:44 dm: Build (debug)
Apr 01 2020 13:04:44 dm: Install cspecs
Apr 01 2020 13:04:44 dm: Install
Apr 01 2020 13:04:44 idle: Build (debug)
Apr 01 2020 13:04:45 idle: Install
Apr 01 2020 13:04:45 ps2_drv: Build (debug)
Apr 01 2020 13:04:45 ps2_drv: Install cspecs
Apr 01 2020 13:04:45 ps2_drv: Install
Apr 01 2020 13:04:45 sl: Build (debug)
Apr 01 2020 13:04:46 sl: Install cspecs
Apr 01 2020 13:04:46 sl: Install
Apr 01 2020 13:04:46 sm: Build (debug)
Apr 01 2020 13:04:47 sm: Install cspecs
Apr 01 2020 13:04:47 sm: Install
Apr 01 2020 13:04:47 time: Build (debug)
Apr 01 2020 13:04:48 time: Install cspecs
Apr 01 2020 13:04:48 time: Install
Apr 01 2020 13:04:48 vt: Build (debug)
Apr 01 2020 13:04:48 vt: Install cspecs
Apr 01 2020 13:04:48 vt: Install
Apr 01 2020 13:04:49 linux: Oldconfig
Apr 01 2020 13:04:53 linux: Build
Apr 01 2020 13:35:56 linux: Install cspecs
Apr 01 2020 13:35:57 linux: Patch and install
Apr 01 2020 13:35:58 linux: Download initramfs
Apr 01 2020 13:36:03 linux: Download initramfs.sha256
Apr 01 2020 13:36:04 linux: Check initramds.sha256
Apr 01 2020 13:36:04 linux: Install initramfs
Apr 01 2020 13:36:04 components: Proof
Apr 01 2020 13:38:30 policy: Join
Apr 01 2020 13:38:30 policy: Expand
Apr 01 2020 13:38:31 policy: Alloc
Apr 01 2020 13:38:32 policy: Validate
Apr 01 2020 13:38:34 policy: Execute mugenacpi
Apr 01 2020 13:38:34 policy: Execute mugeniobm
Apr 01 2020 13:38:34 policy: Execute mugenmsrbm
Apr 01 2020 13:38:35 policy: Execute mugenmsrstore
Apr 01 2020 13:38:35 policy: Execute mugenpt
Apr 01 2020 13:38:35 policy: Execute mugenspec
Apr 01 2020 13:38:36 policy: Execute mugenukvm
Apr 01 2020 13:38:36 policy: Execute mugenvtd
Apr 01 2020 13:38:36 policy: Execute mugenzp
Apr 01 2020 13:38:38 kernel: Build (debug)
Apr 01 2020 13:38:39 kernel: Build (release)
Apr 01 2020 13:38:40 kernel: Proof
Apr 01 2020 13:39:18 kernel: Proof summary
Apr 01 2020 13:39:18 kernel: Check stack (release)
Apr 01 2020 13:39:18 kernel: Check stack (debug)
Apr 01 2020 13:39:18 kernel: Check ELF
Apr 01 2020 13:39:19 kernel: Install
Apr 01 2020 13:39:19 tau0: Build (debug)
Apr 01 2020 13:39:19 tau0: Install
Apr 01 2020 13:39:19 pack: Generate hashes
Apr 01 2020 13:39:20 pack: Generate sinfo
Apr 01 2020 13:39:20 pack: Generate image
Apr 01 2020 13:39:20 pack: Generate image: FAILED, check '/home/user/muen/muen/pack/obj/pack.log.generate_image'
Apr 01 2020 13:39:20 pack: Generate image: FAILED, last 5 lines:
Apr 01 2020 13:39:20 mupack: Registered post-check(s) 1
Apr 01 2020 13:39:20 mupack: Registered content provider(s) 2
Apr 01 2020 13:39:20 mupack: Checking existence of 84 file(s)
Apr 01 2020 13:39:20 mupack: Processing failed, aborting
Apr 01 2020 13:39:20 mupack: File '/home/user/muen/muen/policy/obj/initramfs.cpio.gz' too large for physical memory region 'initramfs': 16#00a3_ef86# > 16#00a3_0000#

make[1]: *** [Makefile:21: /home/user/muen/muen/pack/obj/muen.img] Error 1
make: *** [Makefile:31: pack] Error 2
user@11d2e0280078:~/muen/muen$ 
------------------------------------------------------------------------------------------------------------------------------------------------

I have tried on multiple systems with the same result.
Cheers,
Lonnie



Lonnie Cumberland

unread,
Apr 1, 2020, 10:22:00 AM4/1/20
to Adrian-Ken Rueegsegger, muen...@googlegroups.com
Wanted to also send this info.

In the VPS system with 30GB RAM while running in Docker I get:

-------------------------------------------
Apr 01 2020 14:20:02 time: Build (debug)
Apr 01 2020 14:20:02 vt: Build (debug)
Apr 01 2020 14:20:03 kernel: Build (debug)
Apr 01 2020 14:20:04 kernel: Build (release)
Apr 01 2020 14:20:04 kernel: Check stack (release)
Apr 01 2020 14:20:04 kernel: Check stack (debug)
Apr 01 2020 14:20:05 tau0: Build (debug)
Apr 01 2020 14:20:05 pack: Generate image
Apr 01 2020 14:20:05 pack: Generate image: FAILED, check '/home/user/muen/muen/pack/obj/pack.log.generate_image'
Apr 01 2020 14:20:05 pack: Generate image: FAILED, last 5 lines:
Apr 01 2020 14:20:05 mupack: Registered post-check(s) 1
Apr 01 2020 14:20:05 mupack: Registered content provider(s) 2
Apr 01 2020 14:20:05 mupack: Checking existence of 84 file(s)
Apr 01 2020 14:20:05 mupack: Processing failed, aborting
Apr 01 2020 14:20:05 mupack: File '/home/user/muen/muen/policy/obj/initramfs.cpio.gz' too large for physical memory region 'initramfs': 16#00a3_ef86# > 16#00a3_0000#


make[1]: *** [Makefile:21: /home/user/muen/muen/pack/obj/muen.img] Error 1
make: *** [Makefile:31: pack] Error 2
user@fab10a863d8b:~/muen/muen$ 
-------------------------------------------

Cheers,
Lonnie

Lonnie Cumberland

unread,
Apr 1, 2020, 10:48:34 AM4/1/20
to Adrian-Ken Rueegsegger, muen...@googlegroups.com
Hi All,

Hope that you are safe today.

I actually just tried to compile everything on a system with 18GB RAM and 1 TB space (Debian 9) by installing the toolchain and not running in docker at all but still got the same results:

----------------------------------------
Apr 01 2020 10:43:01 pack: Generate hashes
Apr 01 2020 10:43:02 pack: Generate sinfo
Apr 01 2020 10:43:02 pack: Generate image
Apr 01 2020 10:43:02 pack: Generate image: FAILED, check '/home/lonnie/muen/muen/pack/obj/pack.log.generate_image'
Apr 01 2020 10:43:02 pack: Generate image: FAILED, last 5 lines:
Apr 01 2020 10:43:02 mupack: Registered post-check(s) 1
Apr 01 2020 10:43:02 mupack: Registered content provider(s) 2
Apr 01 2020 10:43:02 mupack: Checking existence of 84 file(s)
Apr 01 2020 10:43:02 mupack: Processing failed, aborting
Apr 01 2020 10:43:02 mupack: File '/home/lonnie/muen/muen/policy/obj/initramfs.cpio.gz' too large for physical memory region 'initramfs': 16#00a3_ef86# > 16#00a3_0000#

make[1]: *** [Makefile:21: /home/lonnie/muen/muen/pack/obj/muen.img] Error 1

make: *** [Makefile:31: pack] Error 2
---------------------------------------

Its hard to believe that I am running out of space on 3 systems (2 Docker environments, and 1 Native AMD64 Debian 9) system.
Cheers,
Lonnie

Adrian-Ken Rueegsegger

unread,
Apr 1, 2020, 10:54:17 AM4/1/20
to Lonnie Cumberland, muen...@googlegroups.com
On 4/1/20 3:50 PM, Lonnie Cumberland wrote:
>
> 1. Get the source code:
>
> $ git clone --recursive https://git.codelabs.ch/git/muen.git

Could you try with the latest devel branch?

$ git checkout devel
$ git submodule update --init

[...]
> --- RESULT
> --------------------------------------------------------------------------------------------------------------------------------
> user@11d2e0280078:~/muen/muen$ make
> Apr 01 2020 13:01:49 ada-bfd: Download
> Apr 01 2020 13:01:50 ada-bfd: Unpack
[...]
> Apr 01 2020 13:39:19 pack: Generate hashes
> Apr 01 2020 13:39:20 pack: Generate sinfo
> Apr 01 2020 13:39:20 pack: Generate image
> Apr 01 2020 13:39:20 pack: Generate image: FAILED, check
> '/home/user/muen/muen/pack/obj/pack.log.generate_image'
> Apr 01 2020 13:39:20 pack: Generate image: FAILED, last 5 lines:
> Apr 01 2020 13:39:20 mupack: Registered post-check(s) 1
> Apr 01 2020 13:39:20 mupack: Registered content provider(s) 2
> Apr 01 2020 13:39:20 mupack: Checking existence of 84 file(s)
> Apr 01 2020 13:39:20 mupack: Processing failed, aborting
> Apr 01 2020 13:39:20 mupack: File
> '/home/user/muen/muen/policy/obj/initramfs.cpio.gz' too large for physical
> memory region 'initramfs': 16#00a3_ef86# > 16#00a3_0000#
>
> make[1]: *** [Makefile:21: /home/user/muen/muen/pack/obj/muen.img] Error 1
> make: *** [Makefile:31: pack] Error 2
> user@11d2e0280078:~/muen/muen$

This looks like a different error than the compiler warnings in log
snippet you provided in the first email.

The error message means that the initramfs file used for the Linux
subject(s) is larger than the memory region designated for it in the
system policy. It is not due to the amount of RAM the build system has.
The error should go away once you switch to the devel branch.

Regards,
Adrian

Lonnie Cumberland

unread,
Apr 1, 2020, 11:06:38 AM4/1/20
to Adrian-Ken Rueegsegger, muen...@googlegroups.com
I'll try that and let you know. 

Will build on my local Debian 9 system and stay out of Docker for the moment. Will test that later as well.

Thanks,
Lonnie

Reply all
Reply to author
Forward
0 new messages