Re: Fwd: l4shmnet and its structure

cem akpolat <[email protected]>
Newsgroups gmane.comp.micro-kernel.l4.devel
Message-ID <CAMm5Yqo0aRao8eUyqHhdVxjcvKNjfj8uVVwC8B4UUExwPkNAzQ@mail.gmail.com>
Dear Adam,

First of all, thanks again for the response. The problem is now solved. I
tried to use a .lua file in which functions such as setConsole, setRamdisk,
etc. were defined, that was a lua file that I have found while googling.
This method led to a page fault error while creating a ttyLv0 console for
the second client. I removed the function and used "console=ttyLv0"
instead. I also defined the second shm device driver as shm1 for the server
side, but as shm0 for the second client. Now it works fine. I still wonder
why I got this page fault error, though.

However, there exists another problem that I want to ask you about. Do we
actually need a server while using l4shmnet?

My final question, does fiasco has more than one console screen, for
instance for each l4linux can we use a separate log screen?

Thanks for all,
Cem


Cem Akpolat


On Tue, Jun 17, 2014 at 11:21 PM, Adam Lackorzynski <
[email protected]> wrote:

> On Mon Jun 16, 2014 at 20:49:12 +0200, cem akpolat wrote:
> > "So I understand that you configured one L4Linux with two l4shmnet
> > network interfaces and one of those two did not work? Hard to tell for
> > me what's wrong without more info."
> >
> >  I added printf lines to shmc.c file and the output I get the following
> > output while a connection is created btw. the server and the first
> client.
> >
> > //*************************************//
> > client1 |    l4shmc_create : starting
> > client1 |    l4shmc_create : l4re_ns_register_obj_srv returned error
> > client1 |    l4shmc_attach_to : starting
> > client1 |    l4shmc_attach_to : no problem, returning L4_OK
> > client1 |    l4shmc_add_chunk : starting
> > client1 |    l4shmc_add_chunk : executing chunk_get
> > client1 |    l4shmc_add_chunk : in the else side due to offs
> > client1 |    l4shmc_add_chunk : returning L4_OK
> > client1 |    l4shmc_add_signal : starting
> > client1 |    l4shmc_add_signal : returning L4_EOK
> > client1 |    l4shmc_get_chunk_to :starting
> > server  |    l4shmc_get_chunk_to :starting
> >
> > net shm0: shm0: L4ShmNet established, with 54:42:00:00:ff:01, IRQ 66
> > client1 net shm0: shm0: L4ShmNet established, with  54:42:00:00:ff:02,
> IRQ
> > 65
> >
> >
> > And the following output between the server and the second client:
> >
> > //*************************************//
> > client2 |     l4shmc_create : starting
> > client2 |     l4shmc_create : l4re_ns_register_obj_srv returned error
> > client2 |     l4shmc_attach_to : starting
> > client2 |     l4shmc_attach_to : no problem, returning L4_OK
> > client2 |     l4shmc_add_chunk : starting
> > client2 |     l4shmc_add_chunk : executing chunk_get
> > client2 |     l4shmc_add_chunk : in the else side due to offs
> > client2 |     l4shmc_add_chunk : returning L4_OK
> > client2 |     l4shmc_add_signal : starting
> > client2 |     l4shmc_add_signal : returning L4_EOK
> > client2 |     l4shmc_get_chunk_to :starting
> > server  |     l4shmc_get_chunk_to :starting
> > net shm1: shm1: L4ShmNet established, with 54:42:00:00:ff:04, IRQ 67
> > //*************************************//
> >
> > As you can see, the second client does not respond after the connection
> > established message from the server. I have two questions regarding this
> > problem:
> >
> > 1) Is the message "l4re_ns_register_obj_srv returned error" the source of
> > the problem? If so, then what might be the reason for this error? And
> also,
> > why does the connection work properly between the first server and the
> > client if that is the source of the problem?
>
> The source tells me that EEXISTS is ok as a return code. Is it this one?
>
> > 2) Could it be the case that the second client obtains the same IRQ
> number
> > with the first client(IRQ 65) or the server (IRQ66 or 67), and therefore
> > the trigger signal is not received by the second client?
>
> No. Those interrupts are virtual ones that are local to the Linux, thus
> IRQ65 is a different one in each Linux.
>
> > How can I detect
> > this problem? Which function is responsible for the IRQ numbering?
>
> The IRQ number allocation for virtual IRQs is in arch/l4/kernel/irq.c.
>
>
> Does client2+shm1 work if you do not configure client1+shm0?
>
>
>
>
> Adam
> --
> Adam                 [email protected]
>   Lackorzynski         http://os.inf.tu-dresden.de/~adam/
>
> _______________________________________________
> l4-hackers mailing list
> [email protected]
> http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers
>

_______________________________________________
l4-hackers mailing list
[email protected]
http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.