On Wed, Mar 7, 2018 at 7:36 AM, Adam Lackorzynski <a...@os.inf.tu-dresden.de > wrote:
> 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 <yzmiz...@gmail.com> wrote: > > > > > > > > > > > On Tue, Mar 6, 2018 at 7:50 AM, Adam Lackorzynski < > > > a...@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? > > > Hi Adam, I have disable CONFIG_SMP, but encountered the following error. src/l4linux/arch/l4/kernel/arch-x86/dispatch.c: In function ‘utcb_to_thread_struct’: src/l4linux/arch/l4/kernel/arch-x86/dispatch.c:276:3: error: ‘struct thread_struct’ has no member named ‘gs’ t->gs = exc->gs; Any idea? BTW, is it possible to enable the previous thread model and SMP in the L4Linux simultaneously? Adam > > _______________________________________________ > l4-hackers mailing list > l4-hackers@os.inf.tu-dresden.de > http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers > -- Best Regards Zeyu Mi (糜泽羽) Institute of Parallel and Distributed Systems (IPADS), School of Software, Shanghai Jiao Tong University
_______________________________________________ l4-hackers mailing list l4-hackers@os.inf.tu-dresden.de http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers