Re: vbox6-block: no policy defined for label 'vbox6-block -> block0'

2023-01-30 Thread Dan Connolly
On Mon, Jan 30, 2023 at 2:08 PM Alexander Boettcher
 wrote:
[...]
> In your vbox6 configuration file, you have to use one VMDK per Block device. 
> So in your case it would be 3 different VMDK files.

Really? 
https://genodians.org/jschlatow/2021-04-23-start-existing-linux-from-sculpt
seems to show creating one .vmdk file for 3 partitions:

VBoxManage internalcommands createrawvmdk -filename linux.vmdk \
-rawdisk /dev/sda -partitions 1,4,5 -relative


> Each VMDK file contains a /dev/XXX device, where XXX can be chosen freely by 
> you. Additionally, the size must _exactly_ match your target partition/block 
> device (otherwise corruption ahead).

Mine is at 
https://github.com/dckc/madmode-blog/blob/t430-lin-in-genode/projects/t430/linux.vmdk

It has all four:
...
RW 2048 FLAT "/dev/sda1" 0
RW 204800 ZERO
RW 20971520 ZERO
RW 52428800 FLAT "/dev/sda4" 0
RW 134217728 FLAT "/dev/sda5" 0
RW 42242703 FLAT "/dev/sda6" 0
...

The sector counts match sfdisk output
https://github.com/dckc/madmode-blog/blob/t430-lin-in-genode/projects/t430/sda-sfdisk.txt

> Your /dev/XXX must be used in the runtime file of the package at the vfs 
> component (name="XXX"). There you can start re-labeling as you desire 
> (label=root/home/shared), but you must do it consistently. In the runtime 
> file there are 3 places, at the head, at the vfs node and in the routing 
> rules (end of file). According to your posted link, at the end you seem not 
> tried to modify the routing rules for block0/block1 (at least there are no 
> out-commented lines by you as on the other 2 places), maybe you missed that ?

Aha! yes.

This XML declarative config has its upsides and down sides... it's
hard to tell which occurrences of names are definitions and which are
references, and what they refer to. I haven't built a good working
knowledge  of the "interpreter" in my head yet.

IIUC, the launcher pkg attribute refers to a path inside depot (though
I wonder how the depot root is found...). Inside the pkg, we expect to
find a runtime file, where the  things seem to guide the
components gui into prompting for something... services?
What consumes a ?
The launcher  is more straightforward; it's the config for the
init binary, documented in the book.
https://genode.org/documentation/genode-foundations/22.05/system_configuration/The_init_component.html
and in 
https://github.com/genodelabs/genode/blob/master/repos/os/src/init/config.xsd

The  seems to be input to a dynamic linker; I'm fuzzy on the
details, but so far that part "just works".

Then back to the , its  info seems to be matched with
the  part of the .

, , and  seem to have some shared structure.

What's the binary of the tool for constructing the components graph?
I'm struggling to find it in
https://github.com/genodelabs/genode/blob/master/repos/gems/run/sculpt.run
I see 
but like so many others, it contains: 

-- 
Dan Connolly
http://www.madmode.com/

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


Re: vbox6-block: AddRef failed at MachineWrap.cpp(11269)

2023-01-30 Thread Alexander Boettcher

Hi Dan,

On 30.01.23 16:13, Dan Connolly wrote:

Do these symptoms look familiar? Any suggestions on how to fix or
further diagnose?

[runtime -> vm-block -> vbox] main !!Assertion Failed!!
[runtime -> vm-block -> vbox] main Expression: state <= 1 && (
(state == 0 && count == 0) || (state == 1 && count < PR_UINT32_MAX/2))
[runtime -> vm-block -> vbox] main Location  :
/home/alex/genode/sculpt/depot/alex-ab/src/vbox6/2022-11-21/src/virtualbox6/VBoxAPIWrap/MachineWrap.cpp(11269)
virtual nsrefcnt MachineWrap::AddRef()



I'm using a local variant of https://depot.genode.org/alex-ab/pkg/vbox6-block/ .
For my exact launcher and runtime, as well as more log context, see

https://github.com/dckc/madmode-blog/issues/49#issuecomment-1408787710


According to the log, the routing to the Block device did not succeed (before 
this message). Afterwards, VBox6 goes out of service and complains that some 
internal state is wrong. Typically this message means that a mis-configuration 
happened or one of the configured routes are not valid.

Cheers,

--
Alexander Boettcher
Genode Labs

https://www.genodians.org - https://www.genode.org

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


Re: vbox6-block: no policy defined for label 'vbox6-block -> block0'

2023-01-30 Thread Alexander Boettcher

Hi Dan,

On 30.01.23 16:09, Dan Connolly wrote:

On Mon, Jan 30, 2023 at 2:52 AM Alexander Boettcher
 wrote:

You may rewrite the label to your actual Block provider, e.g. as an example 
(taken from my setup):

  



Yes, my config is like that (with 1 rather than 7), and now that I
restart this morning, I don't see the "no policy" warning. I suppose I
wasn't careful to isolate the problem when I reported it.

I'd like to use  and likewise
"root", "home" and "shared" for the block service labels (keeping the
child labels as partition numbers "1", "4", "5", "6"), but I can't get
that to work. Are the names constrained to "block0", "block1" etc.? If
so, by which part of the system?


The names can be chosen freely, but you have to be consistent at all places.

In your vbox6 configuration file, you have to use one VMDK per Block device. So 
in your case it would be 3 different VMDK files.
Each VMDK file contains a /dev/XXX device, where XXX can be chosen freely by 
you. Additionally, the size must _exactly_ match your target partition/block 
device (otherwise corruption ahead).
Your /dev/XXX must be used in the runtime file of the package at the vfs component 
(name="XXX"). There you can start re-labeling as you desire 
(label=root/home/shared), but you must do it consistently. In the runtime file there are 
3 places, at the head, at the vfs node and in the routing rules (end of file). According 
to your posted link, at the end you seem not tried to modify the routing rules for 
block0/block1 (at least there are no out-commented lines by you as on the other 2 
places), maybe you missed that ?

Hope it helps,

--
Alexander Boettcher
Genode Labs

https://www.genodians.org - https://www.genode.org

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


Re: First Rockchip port repo.

2023-01-30 Thread Michael Grunditz
On Mon, 30 Jan 2023 at 14:49, Stefan Kalkowski
 wrote:
>
> Hello Michael,
>
> thank you very much for providing your source code to everyone, and
> congratulations for rocking Genode on rk3588!
>
> Currently, I'm quite busy with preparations regarding the FOSDEM 2023.
> But after that weekend, I'm looking forward to review your crt0.s
> additions and will try to integrate it upstream into base-hw

Should be fine.. just need to lowercase the change :-)

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


Re: First Rockchip port repo.

2023-01-30 Thread Michael Grunditz
Den mån 30 jan. 2023 15:45Christian Helmuth <
christian.helm...@genode-labs.com> skrev:

> Grats Michael,
>
> On Thu, Jan 26, 2023 at 11:51:42 CET, Michael Grunditz wrote:
> > I have made a github repo for my Rockchip port.
> [...]
> > The requirement for running this is a RK3588 board
> > with uboot that support USB and HDMI. You need to run
> > "usb start" before booting.
>
> Sounds easy to reproduce. Which hardware would you recommend? It seems
> the QuartzPro64 is not (resp. no longer) for sale.
>
>
https://preorder.pine64.org/ , you need to register in order to get one.
The enduser systems
aren't out yet.

On Qp64 uboot needs a bit of help to convince  the vop ( graphic chip). I
am happy to share patch if
someone decides to get a board.


I would like to have help with the build system regarding usb drivers.

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


vbox6-block: AddRef failed at MachineWrap.cpp(11269)

2023-01-30 Thread Dan Connolly
Do these symptoms look familiar? Any suggestions on how to fix or
further diagnose?

[runtime -> vm-block -> vbox] main !!Assertion Failed!!
[runtime -> vm-block -> vbox] main Expression: state <= 1 && (
(state == 0 && count == 0) || (state == 1 && count < PR_UINT32_MAX/2))
[runtime -> vm-block -> vbox] main Location  :
/home/alex/genode/sculpt/depot/alex-ab/src/vbox6/2022-11-21/src/virtualbox6/VBoxAPIWrap/MachineWrap.cpp(11269)
virtual nsrefcnt MachineWrap::AddRef()

I'm using a local variant of https://depot.genode.org/alex-ab/pkg/vbox6-block/ .
For my exact launcher and runtime, as well as more log context, see

https://github.com/dckc/madmode-blog/issues/49#issuecomment-1408787710


-- 
Dan Connolly
http://www.madmode.com/

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


Re: vbox6-block: no policy defined for label 'vbox6-block -> block0'

2023-01-30 Thread Dan Connolly
On Mon, Jan 30, 2023 at 2:52 AM Alexander Boettcher
 wrote:
> You may rewrite the label to your actual Block provider, e.g. as an example 
> (taken from my setup):
>
>   label="7"/> 

Yes, my config is like that (with 1 rather than 7), and now that I
restart this morning, I don't see the "no policy" warning. I suppose I
wasn't careful to isolate the problem when I reported it.

I'd like to use  and likewise
"root", "home" and "shared" for the block service labels (keeping the
child labels as partition numbers "1", "4", "5", "6"), but I can't get
that to work. Are the names constrained to "block0", "block1" etc.? If
so, by which part of the system?

-- 
Dan Connolly
http://www.madmode.com/

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


Re: First Rockchip port repo.

2023-01-30 Thread Christian Helmuth
Grats Michael,

On Thu, Jan 26, 2023 at 11:51:42 CET, Michael Grunditz wrote:
> I have made a github repo for my Rockchip port.
[...]
> The requirement for running this is a RK3588 board
> with uboot that support USB and HDMI. You need to run
> "usb start" before booting.

Sounds easy to reproduce. Which hardware would you recommend? It seems
the QuartzPro64 is not (resp. no longer) for sale.

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: First Rockchip port repo.

2023-01-30 Thread Stefan Kalkowski
Hello Michael,

thank you very much for providing your source code to everyone, and
congratulations for rocking Genode on rk3588!

Currently, I'm quite busy with preparations regarding the FOSDEM 2023.
But after that weekend, I'm looking forward to review your crt0.s
additions and will try to integrate it upstream into base-hw.

Best regards
Stefan

On Thu, Jan 26, 2023 at 11:51:42AM +0100, Michael Grunditz wrote:
> Hi
> 
> I have made a github repo for my Rockchip port.
> It is only RK3588 for now, but I plan to add rk3399
> for supporting Pinebook Pro.
> 
> There are a number of things not working.Most
> irritating is USB. My old tree had driver in dde_linux
> repo. Currently if built with drivers-interactive it fails
> in a couple of library dependencies. If built from a run
> file it won't build all lx_kit files needed. Feel free to help
> me, fork and make pull request.
> 
> There is a crt0.s in the start directory that you can copy
> to base-hw. I hope it doesn't break things. It is required
> for this platform, probably because I start genode with
> "go" and not bootm. I can't get bootm to work.
> 
> The requirement for running this is a RK3588 board
> with uboot that support USB and HDMI. You need to run
> "usb start" before booting.
> 
> The video driver gets the screen mode from what uboot
> has configured with EDID. Works just fine with 1080p
> monitor. But not with a 4k monitor,
> 
> Well this is it! I have enjoyed it so far. I have tried to
> being careful with authours by adding myself and kept
> original developer where appropriate. Please fix if I
> did something wrong there. It might also be traces from
> A64 port , which you also can remove if you find any.
> 
> I also kept the license and base copyright which means
> that I give this away to The labs.
> 
> Have fun.
> 
> The repo:
> https://github.com/mickenx/genode-rockchip
> 
> 
> Michael
> 
> ___
> Genode users mailing list
> users@lists.genode.org
> https://lists.genode.org/listinfo/users

-- 
Stefan Kalkowski
Genode labs

https://github.com/skalk | https://genode.org

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


Re: compiling Sculpt

2023-01-30 Thread Martin Stein
Hi Johnny,

I just found out that you can actually run sculpt on Linux. But you have
to use another run script:

build/x86_64$
make run/sculpt_test KERNEL=linux BOARD=linux DEPOT=tar LOG=core

This script can also be used to run Sculpt in Qemu. The DEPOT and LOG
variables are optional. LOG=core [2] routes the main serial output
channel of Sculpt to your Linux console while DEPOT=tar [1] provides
your Sculpt with a TAR archive of a basic depot (program/library
packages). Note that Linux Sculpt has no access to persistent storage
(use the RAM FS instead) or network for now.

Cheers,
Martin

[1] repos/gems/run/sculpt.run -> depot_archive
[2] repos/gems/run/sculpt.run -> log_route

On 28.01.23 07:47, Martin Stein wrote:
> Hi Johnny,
> 
> AFAIK, generally, if you want to compile for execution on Linux, you
> should use 'KERNEL=linux BOARD=linux' as arguments. With this, 'make
> run/sculpt' indeed finishes successfully on my machine. However, from my
> understanding, this is of no use because Sculpt cannot be run directly
> on Linux.
> 
> Cheers,
> Martin

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


Re: vbox6-block: no policy defined for label 'vbox6-block -> block0'

2023-01-30 Thread Alexander Boettcher

Hello Dan,

On 30.01.23 01:37, Dan Connolly wrote:

I'm struggling to understand how to configure the vbox6-block component.

All seems to go well until...

[runtime -> ahci-0.part_block] Warning: no policy defined for label
'vbox6-block -> block0'


You may rewrite the label to your actual Block provider, e.g. as an example 
(taken from my setup):

  


The example routes the request to a running part_block using a ahci device, 
which provides partition 7 as a separate Block service.

Cheers,

Alex.

--
Alexander Boettcher
Genode Labs

https://www.genodians.org - https://www.genode.org

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