Is the L4Linux running as a Fiasco.OC server?

Adam Lackorzynski adam at os.inf.tu-dresden.de
Wed Mar 7 00:36:41 CET 2018


Hi,

On Tue Mar 06, 2018 at 10:22:18 +0800, Zeyu Mi wrote:
> On Tue, Mar 6, 2018 at 9:20 AM, Zeyu Mi <yzmizeyu at gmail.com> wrote:
> 
> >
> >
> > On Tue, Mar 6, 2018 at 7:50 AM, Adam Lackorzynski <
> > adam at os.inf.tu-dresden.de> wrote:
> >
> >> Hi,
> >>
> > Hi Adam,
> >
> >>
> >> On Mon Mar 05, 2018 at 19:47:19 +0800, Zeyu Mi wrote:
> >> > I am studying the implementation of the Fiasco.OC and the L4Linux.
> >> >
> >> > I have searched on the Internet and many papers and documents record
> >> that
> >> > L4Linux runs as an L4 server and
> >> > any L4Linux user process is a new task, which has a new page table
> >> > different from that of an L4Linux server.
> >> >
> >> > However, the experiment result seems to conflict with those documents.
> >> When
> >> > I started a new program in the
> >> > L4Linux shell and used "lp" command (show present list) in JDB, I
> >> noticed
> >> > that there was one thread having "vcpu" state.
> >> > But the resulted list did not contain any new thread or task which is
> >> > related to the new program.
> >> >
> >> > I am very confused and wondering whether or not the implementation
> >> recorded
> >> > in those papers or documents are wrong or obsolete?
> >>
> >> Your obvservations are all right, however, 'lp' lists all threads in the
> >> system but not tasks (aka address spaces). For listing tasks, use 's',
> >> where you will see all the tasks for the Linux user processes.
> >>
> > I have tried 's' command, but there was alwasy a general protection fault.
> > The following is the error
> > message.
> >
> > KERNEL: Warning: No page-fault handler for 0xfffffffff0400008, error 0x0,
> > pc fffffffff000922b
> > General Protection (eip=fffffffff0042dc3, err=0000000000000000) -- jdb bug?

Strange. You might want to update your snapshot version although I
cannot remember having seen such an error. Alternatively use shift-Q and
look for tasks.

> > There has been a change in model for L4Linux. With the vcpu model there
> >> is only one thread (the vcpu) which is moving between the tasks for
> >> execution. In the previous thread mode there has been a thread in each
> >> user process. Both variants are still available through the L4Linux
> >> config.
> >>
> > Could you kindly tell me how to enable the previous thread mode?
> >
> 
> Hi Adam,
> I have disabled the vcpu exeuction mode by changing the L4Linux config.
> But there is one warning treated as an error when compiling the L4Linux.
> Following is the detailed error log:
> 
> src/l4linux/arch/l4/kernel/main.c:3853:2: error: implicit declaration of
> function ‘get_cpu_gdt_table’ [-Werror=implicit-function-declaration]
> l4x_load_percpu_gdt_descriptor(get_cpu_gdt_table(_cpu));
> 
> Do you have any suggestion to fix that?

Disable CONFIG_SMP?


Adam




More information about the l4-hackers mailing list