seL4 bring up on inmate cell of jailhouse.
Hi, I would like to bring up seL4 on inmate cell of Tx1. The jailhouse is running successfully on Tx1 board. I have created root cell and not root cell configuration on jailhouse. I able to load seL4 image successfully on inmate cell then during execution its stuck in the while extracting the program header. I checked with jailhouse forum they suggested some one might have ported seL4 or L4 kernel on jailhouse.also informed that seL4 kernel need to rebuild with some patches. Somehow I do not find the patches for seL4 or Fiasco.OC kernel to bring up on jailhouse.Please share links if you any. Also experimented by changing the PHY_ADDR higher then 2G (0x80000000) configuration ie(0x90000000 to 0xF0000000) and (0x100000000 to 0x170000000) while booting from the u-boot I observed KERNEL DATA abort after boot strapping the kernel. It means that this address cannot accessible in the seL4 kernel. Case 1: 0x90000000 to 0xF0000000 sample logs: ------------------- Bootstrapping kernel KERNEL DATA ABORT! Faulting instruction: 0x1ca9c FAR: 0x90000000 ESR (DFSR): 0x96000044 halting... Kernel entry via Interrupt, irq 0 case 2: 0x100000000 to 0x170000000 It's throwing synchronous data abort during program header extraction. sample logs: ------------------ binaries/elf64: elf64_getNumProgramHeaders "Synchronous Abort" handler, esr 0x96000044 ELR: 82002c8c LR: 820031f4 x0 : 0000000100000000 x1 : 0000000000000000 x2 : 000000000022fc10 x3 : 00000000827a5d40 x4 : 0000000000000000 x5 : 00000000000db8ab x6 : 0000000082007948 x7 : 0000000082008578 x8 : 0000000082008570 x9 : 0000000000000008 x10: 000000000000000f x11: 00000000fed87118 x12: 0000000000000047 x13: 0000000000000040 x14: 0000000000000001 x15: 00000000fed33114 x16: 0000000000000000 x17: 0000000000000000 x18: 00000000fc82ede0 x19: 00000000827a5ff0 x20: 0000000000000002 x21: 0000000082000000 x22: 00000000fc832800 x23: 0000000000000002 x24: 00000000fedaa7fc x25: 0000000000000000 x26: 0000000000000000 x27: 00000000fc8322f0 x28: 0000000000000000 x29: 00000000827a5e80 someone can give suggestion or pointers how we can bring seL4 on Jailhouse. Regards, Munees
Hi Munees, On 12 Dec 2017, at 14:52, Muneeswaran Rajendran <m.rajendran@matellio.com<mailto:m.rajendran@matellio.com>> wrote: I would like to bring up seL4 on inmate cell of Tx1. The jailhouse is running successfully on Tx1 board. I have created root cell and not root cell configuration on jailhouse. I able to load seL4 image successfully on inmate cell then during execution its stuck in the while extracting the program header. I checked with jailhouse forum they suggested some one might have ported seL4 or L4 kernel on jailhouse.also informed that seL4 kernel need to rebuild with some patches. Somehow I do not find the patches for seL4 or Fiasco.OC kernel to bring up on jailhouse.Please share links if you any. I’m sure there are no such patches because no-one bothered. I wonder why you’d want to do such a thing. Jailhouse is a big, untrustworthy hypervisor. Running a trustworthy kernel on top means you end up with something entirely trustworthy, so why bother with seL4 in the first place? There’ll be less painful ways to get no assurance. Gernot
Hi Munees, My understanding is that you cannot run unmodified guest operating systems as inmates under jailhouse. In my brief look at jailhouse I did not find any documentation of the platform that jailhouse presents to the inmates and the corresponding binary interface beyond "install this kernel module into your guest first". As such I cannot tell you what modifications would be required to seL4 to run as an inmate. Am somewhat obliged to point out that if you run seL4 under a system such as Jailhouse (or any virtualization system) then you are losing all of the benefits of seL4, whilst retaining the negatives. Unless this is transition stage of the project I would strongly encourage a design where seL4 is running at the highest privilege level. Adrian On Tue 12-Dec-2017 2:52 PM, Muneeswaran Rajendran wrote:
Hi,
I would like to bring up seL4 on inmate cell of Tx1. The jailhouse is running successfully on Tx1 board. I have created root cell and not root cell configuration on jailhouse.
I able to load seL4 image successfully on inmate cell then during execution its stuck in the while extracting the program header.
I checked with jailhouse forum they suggested some one might have ported seL4 or L4 kernel on jailhouse.also informed that seL4 kernel need to rebuild with some patches.
Somehow I do not find the patches for seL4 or Fiasco.OC kernel to bring up on jailhouse.Please share links if you any.
Also experimented by changing the PHY_ADDR higher then 2G (0x80000000) configuration ie(0x90000000 to 0xF0000000) and (0x100000000 to 0x170000000) while booting from the u-boot I observed KERNEL DATA abort after boot strapping the kernel. It means that this address cannot accessible in the seL4 kernel.
Case 1: 0x90000000 to 0xF0000000
sample logs: ------------------- Bootstrapping kernel KERNEL DATA ABORT! Faulting instruction: 0x1ca9c FAR: 0x90000000 ESR (DFSR): 0x96000044 halting... Kernel entry via Interrupt, irq 0
case 2: 0x100000000 to 0x170000000
It's throwing synchronous data abort during program header extraction.
sample logs: ------------------ binaries/elf64: elf64_getNumProgramHeaders "Synchronous Abort" handler, esr 0x96000044 ELR: 82002c8c LR: 820031f4 x0 : 0000000100000000 x1 : 0000000000000000 x2 : 000000000022fc10 x3 : 00000000827a5d40 x4 : 0000000000000000 x5 : 00000000000db8ab x6 : 0000000082007948 x7 : 0000000082008578 x8 : 0000000082008570 x9 : 0000000000000008 x10: 000000000000000f x11: 00000000fed87118 x12: 0000000000000047 x13: 0000000000000040 x14: 0000000000000001 x15: 00000000fed33114 x16: 0000000000000000 x17: 0000000000000000 x18: 00000000fc82ede0 x19: 00000000827a5ff0 x20: 0000000000000002 x21: 0000000082000000 x22: 00000000fc832800 x23: 0000000000000002 x24: 00000000fedaa7fc x25: 0000000000000000 x26: 0000000000000000 x27: 00000000fc8322f0 x28: 0000000000000000 x29: 00000000827a5e80
someone can give suggestion or pointers how we can bring seL4 on Jailhouse.
Regards, Munees
_______________________________________________ Devel mailing list Devel@sel4.systems https://sel4.systems/lists/listinfo/devel
participants (3)
-
Adrian.Danis@data61.csiro.au
-
Gernot.Heiser@data61.csiro.au
-
Muneeswaran Rajendran