Re: Restarting siblings vs. restarting nieces

2023-02-05 Thread Sid Hussmann
Thank you, Martin and Christian, for the time and care you took for your
explanation.

I now better understand how to design that part of our system in a
deterministic and reliable way.

Kind regards,
Sid

On 2/6/23 07:37, Christian Helmuth wrote:
> Hello,
> 
> On Sun, Feb 05, 2023 at 13:42:06 CET, Martin Stein wrote:
>> Let me share the outcome of our offline discussion with the mailing list:
>>
>> As far as I understand it, while Genode's init has the feature of
>> restarting direct service clients when their session disappears, this
>> doesn't apply in your scenario because of the server being wrapped in an
>> additional sub-init.
>>
>> In such case, you have to manually take care for restarting your
>> clients. A client, AFAIK deliberately doesn't consider the case that the
>> outside world is terminating its session. So, it seems natural to me
>> that you run into unpredictable behavior if you don't have some kind of
>> manager that kills the client before terminating its session.
> 
> Thanks for this wrapup, Martin, it perfectly reflects my stance on the
> matter too.
> 
> Regarding the followong question...
> 
>> Exception and try to re-establish the session. The two clients use
>> the `vfs` plugin mechanism to access the `File_system` session
>> provided by `rump`. During a restart of `rump` the clients sometimes
>> page-fault and sometimes "live on" while responding to heartbeats
>> but otherwise seem to be malfunctioning. Is the `vfs` plugin
>> mechanism designed to handle these outages?
> 
> We refrained from implementing "probing" or "automatic retry" in many
> places where the it is hard to nail down a sensible default policy. I
> expect the VFS plugin misses your desired recover feature for this
> reason.
> 
> Regards

OpenPGP_0x4BC4E441F1068163.asc
Description: OpenPGP public key


OpenPGP_signature
Description: OpenPGP digital signature
___
Genode users mailing list
users@lists.genode.org
https://lists.genode.org/listinfo/users


Re: Running genode on QEMU having board support of raspberry pi for arm_v8.

2023-02-05 Thread ttcoder
Hi,

In your previous email citing the qemu command-line, I saw the command-line 
parameter "--nographic".



If parametrized with both "gui = gtk" and "no gui", it seems Qemu goes with the 
latter, so you should remove "--nographic" in order to get the GUI. It will 
probably occur "automatically" if you use another script, see below :



Regarding SculptOS, I guess if the run/log script works correctly then your 
next step could be the run/sculpt script ? I'm not familiar with the ARM side 
of Genode.



Cédric


De : DHIRAJ PRAJAPATI 
À : Genode users mailing list 
Sujet : Re: Running genode on QEMU having board support of raspberry pi for 
arm_v8.
Date : 06/02/2023 08:07:12 Europe/Paris

Hello Christian, I Followed martin's advice and build the uImage, using  
"--include image/uboot" in build.confg
but after that to get the GUI in QEMU running the sculpt os what should be the 
next step?

That's what I am looking for. Eventually, I want to boot the sculpt OS in QEMU 
to make the system runnable.








___
Genode users mailing list
users@lists.genode.org
https://lists.genode.org/listinfo/users


Re: Running genode on QEMU having board support of raspberry pi for arm_v8.

2023-02-05 Thread DHIRAJ PRAJAPATI
Hello Christian, I Followed martin's advice and build the uImage, using
"--include image/uboot" in build.confg
but after that to get the GUI in QEMU running the sculpt os what should be
the next step?
That's what I am looking for. Eventually, I want to boot the sculpt OS in
QEMU to make the system runnable.


Regards,
DHIRAJ.



On Mon, Feb 6, 2023 at 12:12 PM Christian Helmuth <
christian.helm...@genode-labs.com> wrote:

> DHIRAJ,
>
> On Sun, Feb 05, 2023 at 15:37:08 CET, DHIRAJ PRAJAPATI wrote:
> > Now to boot the image on QEMU I first tried to get the log.img using
> > *make run/log KERNEL=hw BOARD=rpi3 VERBOSE=*
> > by adding QEMU_RUN_OPT := --include image/disk
>
> Martin suggested to use "--include image/uboot". Please follow his
> advice.
>
> Regards
> --
> Christian Helmuth
> Genode Labs
>
> https://www.genode-labs.com/ · https://genode.org/
> https://twitter.com/GenodeLabs · https://genodians.org/
>
> Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden
> Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth
>
> ___
> Genode users mailing list
> users@lists.genode.org
> https://lists.genode.org/listinfo/users
>
___
Genode users mailing list
users@lists.genode.org
https://lists.genode.org/listinfo/users


Re: Running genode on QEMU having board support of raspberry pi for arm_v8.

2023-02-05 Thread Christian Helmuth
DHIRAJ,

On Sun, Feb 05, 2023 at 15:37:08 CET, DHIRAJ PRAJAPATI wrote:
> Now to boot the image on QEMU I first tried to get the log.img using
> *make run/log KERNEL=hw BOARD=rpi3 VERBOSE=*
> by adding QEMU_RUN_OPT := --include image/disk

Martin suggested to use "--include image/uboot". Please follow his
advice.

Regards
-- 
Christian Helmuth
Genode Labs

https://www.genode-labs.com/ · https://genode.org/
https://twitter.com/GenodeLabs · https://genodians.org/

Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden
Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth

___
Genode users mailing list
users@lists.genode.org
https://lists.genode.org/listinfo/users


Re: Genode on ARM Systems

2023-02-05 Thread Christian Helmuth
Divya,

On Sun, Feb 05, 2023 at 16:22:19 CET, Divya Sharma wrote:
> I want to generate an image file of genode for ARM Systems. but doesn't
> have ARM hardware so need to run the image file on qemu
> 
> so can you suggest what is the best way to do that?
> or pls suggest all possible ways

Please see the following mailing-list thread.

  https://lists.genode.org/pipermail/users/2023-February/008394.html

Regards
-- 
Christian Helmuth
Genode Labs

https://www.genode-labs.com/ · https://genode.org/
https://twitter.com/GenodeLabs · https://genodians.org/

Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden
Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth

___
Genode users mailing list
users@lists.genode.org
https://lists.genode.org/listinfo/users


Re: Restarting siblings vs. restarting nieces

2023-02-05 Thread Christian Helmuth
Hello,

On Sun, Feb 05, 2023 at 13:42:06 CET, Martin Stein wrote:
> Let me share the outcome of our offline discussion with the mailing list:
> 
> As far as I understand it, while Genode's init has the feature of
> restarting direct service clients when their session disappears, this
> doesn't apply in your scenario because of the server being wrapped in an
> additional sub-init.
> 
> In such case, you have to manually take care for restarting your
> clients. A client, AFAIK deliberately doesn't consider the case that the
> outside world is terminating its session. So, it seems natural to me
> that you run into unpredictable behavior if you don't have some kind of
> manager that kills the client before terminating its session.

Thanks for this wrapup, Martin, it perfectly reflects my stance on the
matter too.

Regarding the followong question...

> Exception and try to re-establish the session. The two clients use
> the `vfs` plugin mechanism to access the `File_system` session
> provided by `rump`. During a restart of `rump` the clients sometimes
> page-fault and sometimes "live on" while responding to heartbeats
> but otherwise seem to be malfunctioning. Is the `vfs` plugin
> mechanism designed to handle these outages?

We refrained from implementing "probing" or "automatic retry" in many
places where the it is hard to nail down a sensible default policy. I
expect the VFS plugin misses your desired recover feature for this
reason.

Regards
-- 
Christian Helmuth
Genode Labs

https://www.genode-labs.com/ · https://genode.org/
https://twitter.com/GenodeLabs · https://genodians.org/

Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden
Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth

___
Genode users mailing list
users@lists.genode.org
https://lists.genode.org/listinfo/users


Re: Running genode on QEMU having board support of raspberry pi for arm_v8.

2023-02-05 Thread DHIRAJ PRAJAPATI
Yes, I have these all files at var/run/log/boot/image.elf.gz, bender, and
grub.
when I execute the image.elf  (*qemu-system-aarch64 -s -display gtk
-nographic -serial null -serial mon:stdio -kernel
var/run/log/boot/image.elf -M raspi3 -m 1024)*I got the following messages
in the terminal.
But when I run log.img it got stuck at the kernel loading.
I think during the build process of log.img it creates an image.elf at
var/run/log/boot/image.elf.gz.

I hope I cleared my query, If is there anything missing please let me know.

Also, would you give some explanation about run/log and run/sculpt and why
you suggested me to go for run/log instead of run/sculpt?

On Sun, Feb 5, 2023 at 10:57 PM Michael Grunditz 
wrote:

> On Sun, 5 Feb 2023 at 15:37, DHIRAJ PRAJAPATI
>  wrote:
> >
> > Thanks, Michael for suggesting the uboot tools.
> >
> > I generated the uImage successfully.
> > Now to boot the image on QEMU I first tried to get the log.img using
> > make run/log KERNEL=hw BOARD=rpi3 VERBOSE=
> > by adding QEMU_RUN_OPT := --include image/disk
> > But could not figure out to resolve the problem that the kernel is not
> getting loaded.
> > Also, guide me if I can do something with
> uImage(var/run/log/boot/uImage) to get the GUI in QEMU.
>
> Reading your error log. Do you have a var/run/log/boot/image.elf?
>
> When it works qemu  should print messages in your terminal.
>
> Michael
>
> ___
> Genode users mailing list
> users@lists.genode.org
> https://lists.genode.org/listinfo/users
>


image
Description: Binary data
___
Genode users mailing list
users@lists.genode.org
https://lists.genode.org/listinfo/users


Re: Running genode on QEMU having board support of raspberry pi for arm_v8.

2023-02-05 Thread Michael Grunditz
On Sun, 5 Feb 2023 at 15:37, DHIRAJ PRAJAPATI
 wrote:
>
> Thanks, Michael for suggesting the uboot tools.
>
> I generated the uImage successfully.
> Now to boot the image on QEMU I first tried to get the log.img using
> make run/log KERNEL=hw BOARD=rpi3 VERBOSE=
> by adding QEMU_RUN_OPT := --include image/disk
> But could not figure out to resolve the problem that the kernel is not 
> getting loaded.
> Also, guide me if I can do something with uImage(var/run/log/boot/uImage) to 
> get the GUI in QEMU.

Reading your error log. Do you have a var/run/log/boot/image.elf?

When it works qemu  should print messages in your terminal.

Michael

___
Genode users mailing list
users@lists.genode.org
https://lists.genode.org/listinfo/users


Genode on ARM Systems

2023-02-05 Thread Divya Sharma
hello, genodians,

I want to generate an image file of genode for ARM Systems. but doesn't
have ARM hardware so need to run the image file on qemu

so can you suggest what is the best way to do that?
or pls suggest all possible ways

thanks and regards
Divya
___
Genode users mailing list
users@lists.genode.org
https://lists.genode.org/listinfo/users


Re: Running genode on QEMU having board support of raspberry pi for arm_v8.

2023-02-05 Thread DHIRAJ PRAJAPATI
Thanks, Michael for suggesting the uboot tools.

I generated the uImage successfully.
Now to boot the image on QEMU I first tried to get the log.img using
*make run/log KERNEL=hw BOARD=rpi3 VERBOSE=*
by adding QEMU_RUN_OPT := --include image/disk
But could not figure out to resolve the problem that the kernel is not
getting loaded.
Also, guide me if I can do something with uImage(var/run/log/boot/uImage)
to get the GUI in QEMU.


Best...,
DHIRAJ


On Sat, Feb 4, 2023 at 4:30 PM Michael Grunditz 
wrote:

> On Sat, 4 Feb 2023 at 05:58, DHIRAJ PRAJAPATI
>  wrote:
> >
> > Thanks, Martin for your quick response.
> >
> > I followed your steps and generated the
> > genode/build/arm_v8a/var/run/log/boot/image.elf.
> > While going to the real hardware I got stuck for
> > boot/uImage(var/run/log/boot/uImage) getting the following error.
> > Kindly guide me on how to proceed further.
>
> Install the tool "mkimage". In ubuntu:
> sudo apt-get install u-boot-tools
>
> Michael
>
> ___
> Genode users mailing list
> users@lists.genode.org
> https://lists.genode.org/listinfo/users
>


error
Description: Binary data
___
Genode users mailing list
users@lists.genode.org
https://lists.genode.org/listinfo/users


Re: Restarting siblings vs. restarting nieces

2023-02-05 Thread Martin Stein
Hi Sid,

Let me share the outcome of our offline discussion with the mailing list:

As far as I understand it, while Genode's init has the feature of
restarting direct service clients when their session disappears, this
doesn't apply in your scenario because of the server being wrapped in an
additional sub-init.

In such case, you have to manually take care for restarting your
clients. A client, AFAIK deliberately doesn't consider the case that the
outside world is terminating its session. So, it seems natural to me
that you run into unpredictable behavior if you don't have some kind of
manager that kills the client before terminating its session.

I hope this is of help?

Cheers,
Martin

On 03.02.23 14:19, Sid Hussmann wrote:
> Hi Martin,
> 
> Thank you very much for the list of commits! As we are still dealing with a 
> driver issue with the Genode 22.11 release [1], I cherry-picked these commits 
> to our fork based on the 22.08 release.
> 
> I'm not sure how much value it has to you when my tests are based on 22.08 
> (with the commits you mentioned), but in case you are curious here are my 
> findings.
> 
> After running my scenario multiple times, the system does not behave the same 
> way in each iteration. There are two different behaviors that I noticed:
> 
> 1. The two client crash - which for the overall system is good as a heartbeat 
> monitor can recover the system into the desired state again:
> ```
> no RM attachment (READ pf_addr=0x14 pf_ip=0x10e3e194 from pager_object: 
> pd='init -> init -> fs_client1' thread='ep')    
> Warning: page fault, pager_object: pd='init -> init -> fs_client1' 
> thread='ep' ip=0x10e3e194 fault-addr=0x14 type=no-page  
> [init -> init] Error: A fault in the pd of child 'fs_client1' was detected  
> Kernel: IPC await request: bad state, will block  
> Warning: page fault, pager_object: pd='init -> init -> fs_client2' 
> thread='pthread.0' ip=0x6f4b0 fault-addr=0x403befd0 type=no-page  
> [init -> init -> fs -> init] Error: Uncaught exception of type 
> 'Genode::Id_space::Unknown_id'  
> [init -> init -> fs -> init] Warning: abort called - thread: ep
> ```
> 
> 2. `rump` (short for a `vfs_server` with `rump` plugin) restarts while the 
> rest of the system does not print any log messages. In this case we cannot 
> recover via the heartbeat monitor as there is no change in the `init` state 
> report. Further, the clients don't seem to be functioning correctly. E.g. one 
> of them being a TCP server that won't respond to networking traffic anymore. 
> Could it be that somehow the `vfs` plugin can't handle the interruption of 
> the `File_system` session? 
> ```
> [init -> init -> fs -> init -> rump] rump: /genode: file system not clean; 
> please fsck(8)
> ```
> 
> I'm not sure if this information is of value to you. Especially when my 
> scenario is based on Genode 22.08. I will test this again once we have the 
> 22.11 or the 23.02 release in.
> 
> 
> [1] https://lists.genode.org/pipermail/users/2023-January/008356.html
> 
> Cheers,
> Sid
> 
> 
> ___
> Genode users mailing list
> users@lists.genode.org
> https://lists.genode.org/listinfo/users
> 

___
Genode users mailing list
users@lists.genode.org
https://lists.genode.org/listinfo/users