Re: interrupts on AMD hardware

2018-05-04 Thread Alexander Boettcher
Hi John,

On 03.05.2018 17:47, John J. Karcher wrote:
> On 05/02/2018 07:42 AM, Alexander Boettcher wrote:
>>
>> Ben & John,
>>
>> may you please try my branch [0] with the run/ahci_bench and run/lwip
>> scenarios and tell me whether this change anything for your setups ?
>>
>> Thanks,
>>
>> Alex.
>>
>> [0] https://github.com/alex-ab/genode/commits/acpica_ext
> 
> Thanks Alex for all that work!
> 
> Unfortunately, I am not advanced enough in Git or the new Genode build
> tools to know how to do this.  Could you provide the commands needed to
> download/merge and build?  (I have created a clean Sculpt EA tree, as
> described in the tutorial.)

never mind, I got it now tested myself and actually could fix it
differently for Genode as VM in Virtualbox [0]. The drivers
(sata/network) of Genode will run in Virtualbox in the upcoming Sculpt TC.

Cheers,

Alex.

[0] https://github.com/genodelabs/genode/issues/2801

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: interrupts on AMD hardware

2018-05-02 Thread Alexander Boettcher
Hello,

On 15.04.2018 00:13, John J. Karcher wrote:
> On 04/12/2018 05:02 AM, Christian Helmuth wrote:
>> Ben,
>>
>> On Thu, Apr 12, 2018 at 02:14:04AM -0600, Nobody III wrote:
>>> What exactly are you referring to, and how do I do it?
>>
>> Unfortunately, you need to dig through the code, but if you dare it
>> may be really rewarding. I'm neither the author of the Genode
>> acpica-library port nor an expert in ACPICA at a whole, but find and
>> grep yielded me some hints where to look at.
>>
>> So, navigate to repos/libports/src/lib/acpica and try to find some
>> appropriate backend functions to instrument. This may not suffice, so
>> you should also navigate to contrib/acpica-/src/lib/acpica and
>> instrument source/components/executer/exregion.c
>> (AcpiExSystemMemorySpaceHandler). To be honest, from this point it's
>> up to you to invest more effort to get your platform running.
>>
>> Good luck
> 
> Nobody, I am also interesting in looking at this code, with the goal of
> getting networking to work in a VirtualBox client.  (My main machine is
> AMD-based, so I am interested in that also, but I like to do most of my
> experimenting in a VM.)
> 
> Unfortunately, I don't have much free time at the moment, but I can try
> to assist your efforts as much as I can.  I haven't worked on
> driver-level code in years, but I don't mind shaking off the rust for a
> good cause.  ;^)
> 
> If you post your discoveries / observations on this ML (or elsewhere, as
> appropriate), I will do the same.

Ben & John,

may you please try my branch [0] with the run/ahci_bench and run/lwip
scenarios and tell me whether this change anything for your setups ?

Thanks,

Alex.

[0] https://github.com/alex-ab/genode/commits/acpica_ext

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: access to tsc calibration info

2018-03-27 Thread Alexander Boettcher
Hello,

On 26.03.2018 21:42, Steven Harp wrote:
> 
> x86-specific question: Is there a generic way to get access to the
> TSC frequency calibration information, as provided by modern x86
> CPUs in MSRs?  (User mode components cannot directly read these.)
> 
>  The information is readily available in Nova's hypervisor
> information page (Hip), conveniently exported as a ROM. But I

This hypervisor information page ROM is going to be dropped with [0]
(and therefore with the upcoming release).

Essential information about the boot, which can't be gathered on another
way by Genode, are reported as "platform_info" ROM. See the commits of [0].

Cheers,

Alex.

[0] https://github.com/genodelabs/genode/issues/2710

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Sculpt EA On VirtualBox

2018-03-05 Thread Alexander Boettcher
On 05.03.2018 17:07, John J. Karcher wrote:
> On 03/05/2018 08:05 AM, Alexander Boettcher wrote:
>
>>>> Since I primarily run everything I do in VirtualBox (and don't have
>>>> the recommended hardware anyway), I created a VM as close to the
>>>> recommendations as possible.
>>
>> It will work until the point where you try to start a VM in Sculpt,
>> which will not run because VirtualBox don't support nested
>> virtualization.
> 
> That's all I need!  Could you send me the configuration for a working
> VM?  
Sorry, you got me wrong, I haven't a working configuration. I just noted
that even if you get Sculpt running in a VM, it will be limited in use.

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Sculpt EA On VirtualBox

2018-03-05 Thread Alexander Boettcher
Hi,

On 04.03.2018 08:22, John J. Karcher wrote:
> Actually, while the problems at SourceForge were delaying the mailing
> list, I solved part of my problem.  Details below...
> 
> 
> On 03/01/2018 11:14 PM, John J. Karcher wrote:
>> Hello,
>>
>> I have downloaded, built, and begun testing Sculpt EA, following the
>> instructions linked to in the 18.02 release notes.  Everything went
>> well during the build process.
>>
>> Since I primarily run everything I do in VirtualBox (and don't have
>> the recommended hardware anyway), I created a VM as close to the
>> recommendations as possible.

It will work until the point where you try to start a VM in Sculpt,
which will not run because VirtualBox don't support nested virtualization.

> [drivers -> platform_drv] Error: runtimne -> nic -> nic: assignment of
> PCI device 0:11.0 failed phys=0xdc088000 virt=0x1000

This is a normal message if you have no IOMMU support, which virtualbox
doesn't provide to guests. You may just ignore (and we have to silence
the output in the future.)

> ...
> [runtimne -> nic -> nic] bus_addr = e242 len = 2
> ...
> [drivers -> platform_drv] 0:11.0 uses IRQ, vector 0xb, non-maskable

> This is closer to the hardware than I usually get these days.  Is there
> anything I can try?

It sounds like the issue reported in
https://github.com/genodelabs/genode/issues/1044 - unfortunately there
has been no solution for ICH9 and network, but a quirk for PCIIX3 and
network exists. Maybe you can report there your findings, if you have
some news.

Cheers,

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Bender and GRUB1 "legacy"

2018-03-05 Thread Alexander Boettcher
On 01.03.2018 02:01, Valery V. Sedletski via genode-main wrote:
>> and re-create the interactive driver package (as shown above).
> Yes, I increased caps quota for fb_drv now, and commented "throw" out in
> acpi.cc, this

Can you please test commit [0], which should ignore the invalid ACPI
table in your case.

[0]
https://github.com/alex-ab/genode/commit/b2bedb8eef2d39df79db648c23d6fe8725e18f3c

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Bender and GRUB1 "legacy"

2018-02-28 Thread Alexander Boettcher


On 28.02.2018 00:58, Valery V. Sedletski via genode-main wrote:

> [1] https://imgur.com/a/kSptw

The ACPI table named ATKG seems to cause also trouble on other Linux
machines according to my search results. Maybe you can apply the latest
BIOS update to that machine, since the root cause of the issue are wrong
ACPI tables provided by the BIOS vendor. Another way we can try is to
make our ACPI parser more robust and just skip the table.

Try to uncomment in

repos/os/src/drivers/acpi/acpi.cc

after the "checksum mismatch for" message the "throw" (line ~450). Cross
fingers, maybe you have luck and you get further.

You have to re-create the drivers package by invoking:

tool/depot/create genodelabs/pkg/drivers_interactive-pc
UPDATE_VERSIONS=1 FORCE=1


Additionally, you may send me directly (not to the mailing list) the
dumped ACPI tables, so I may have a look.

> [2] https://pastebin.mozilla.org/9078740
> [3] https://pastebin.mozilla.org/9078741

> [init -> drivers -> fb_drv] resource_request: ram_quota=0, cap_quota=4
> [init -> drivers] child "fb_drv" requests resources: ram_quota=0,
cap_quota 4

Increase the "caps" value by some minor value for the fb_drv start
element in

repos/os/recipes/raw/drivers_interactive-pc/drivers.config

and re-create the interactive driver package (as shown above).

> [init -> drivers -> usb_drv] dev_info: new low-speed USB device number
2 using uhci_hcd
> no RM attachment (READ pf_addr=0x18 pf_ip=0xa15ef from pager_object:
pd='init -> drivers -> usb_drv' thread='ep')

Try adding the ohci attribute to the usb driver component, since you're
running on a AMD machine in
repos/os/recipes/raw/drivers_interactive-pc/drivers.config, e.g.:

   

(rebuild the package as noted above.)

If this does not help, try first with the simple run script usb_hid.run
in repos/dde_linux. Use objdump to find out which source line the
instruction pointer belongs to.

Cheers,

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Bender and GRUB1 "legacy"

2018-02-27 Thread Alexander Boettcher
Hello,

On 23.02.2018 18:47, Valery V. Sedletski via genode-main wrote:
> scenarios, so far. NOVA seems to hang on my three available
> machines, for some reason. So, I tried the Fiasco.OC kernel instead.
> (But VirtualBox and Seoul are working on NOVA only). So far, my
> attempts to run Sculpt was not successfull too. It looks like acpi_drv
> does not like something in ACPI tables of my test machine.

the provided information are very vague. What exactly "does
not like something" mean ?

Please note that on Genode/Fiasco.OC you see output since the
kernel prints the Genode messages also to the VGA console.

On Genode/NOVA there is no such support by the kernel for Genode. That
means, probably the NOVA kernel is booted up completely and Genode gets
running and just get stuck in your apci_drv issues you encountered.
You just don't see it. You have several options here:

a) Either debug the early boot on Genode/Fiasco.OC (having VGA output),
which could also solve your issue with Genode/NOVA bootstrap.

b) Get serial output of Genode/NOVA on you target machines.

c) Alternatively, you may try a debugging commit [0] for Genode/NOVA
which adds some very limited VGA output support. The patch is probably
outdated and you will have to adjust it.

If you really want to get your hardware running, I would go with option
b), if this is not possible with a) and if nothing
helps with c).


[0] https://github.com/alex-ab/genode/commits/experimental_vga_console_16_08

Cheers,

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Beginner : VMM with genode

2018-02-18 Thread Alexander Boettcher
Hi,
On 15.02.2018 15:08, jony jony wrote:
> i'm using an ubuntu virtual machine, and booted through dual boot genode on
> a nova kernel , the interface that shows is very basic and only has
> launchpad ,

you probably started the seoul-fancy run scenario. As soon as you click
on the blue entry called "init", a Seoul VMM + a VM will be started.

> i want to use a virtual machine monitor on top of genode to run
> virtual machines , i copied the files ob repos/ports/run/*run  on the /
> folder and the following changes were made
> root@ubuntu:/#
> root@ubuntu:/# cat /etc/grub.d/49_genode1
> #!/bin/sh -e
> echo "Genode@NOVA"
> cat << EOF
> menuentry "Genode@NOVA" {
> insmod ext2
> multiboot /hypervisor
> module /seoul-auto.run
> module /seoul-disc.run
> module /seoul-fancy.run
> module /seoul-genode.run
> module /seoul-kernelbuild.run
> module /seoul-net.run

This is not going to work. The *.run files are just scripts runnable on
your ubuntu machine - nothing you can boot directly.

Again, as I suggested already some emails before:

>>>> Please consult the Genode Foundations book, which describes the
>>>> framework and also _run_ mechanism in more detail.

Cheers,

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: noux_bash failure

2018-01-25 Thread Alexander Boettcher
Hi,

On 23.01.2018 22:37, genode user wrote:
> I still cannot get sel4 to work properly.  The qemu VM opens up and says
> "Booting Genode on seL4" but gets no further.  On the terminal on the host
> I see this:

> [init -> timer] Error: IO_PORT-session creation failed (ram_quota=6K,
> cap_quota=2, io_port_base=64, io_port_size=4)
> [init -> timer] Error: __cxa_guard_abort called
> Kernel: Thread 'ep' died because of an uncaught exception
> [init -> timer] Error: Uncaught exception of type 'Genode::Service_denied'
> [init -> timer] Warning: abort called - thread: ep

> [init -> drivers -> platform_drv] Error: IO_PORT-session creation failed
> (ram_quota=6K, cap_quota=2, io_port_base=3320, io_port_size=4)
> [init -> drivers -> platform_drv] Error: __cxa_guard_abort called
> Kernel: Thread 'ep' died because of an uncaught exception
> [init -> drivers -> platform_drv] Error: Uncaught exception of type
> 'Genode::Service_denied'
> [init -> drivers -> platform_drv] Warning: abort called - thread: ep
> [init -> drivers] child "platform_drv" exited with exit value 1
> 
> Any suggestions?

it seems to be a packaging problem of Genode/seL4. Re-building core
instead of using core from the package, as quick quirk, works for me on
x86_32:

--- a/repos/ports/run/noux_bash.run
+++ b/repos/ports/run/noux_bash.run
@@ -131,6 +131,7 @@ Hello world !!
    
 }

-build_boot_image { }
+build { core }
+build_boot_image { core }

 run_genode_until forever

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Problem with running sel4 on Genode

2018-01-23 Thread Alexander Boettcher
Hi,

On 23.01.2018 13:59, Subhadeep Sarkar wrote:
> patch:  Can't create file 
> src/kernel/sel4/libsel4/arch_include/arm/sel4/arch/types.h.orig : Permission 
> denied 

due to your sudo's before, the file got probably created as root user.

> /home/subhadeep/Git/genode/tool/ports/mk/install.mk:129: recipe for target 
> 'phony/ patches//home 
> /subhadeep/Git/genode/repos/base-sel4/patches/arm_cache.patch' failed 
> make[2]: *** 
> [phony/patches//home/subhadeep/Git/genode/repos/base-sel4/patches/arm_cache.patch]
>  Error 2 
> /home/subhadeep/Git/genode/tool/ports/mk/prepare_single_port.mk:38: recipe 
> for target '_install_in_port_dir' failed 
> make[1]: *** [_install_in_port_dir] Error 2 
> tool/ports/prepare_port:33: recipe for target 'sel4' failed 
> make: *** [sel4] Error 2 
> 
> 
> Do you think the highlighted part in the message has something to do with the 
> error or is it normal? 
> 

No, it is not normal. I would suggest to delete all contrib/sel4-
sources and redo the prepare step of sel4. Avoid usage of sudo.

Cheers,
-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Problem with running sel4 on Genode

2018-01-23 Thread Alexander Boettcher
Hi,

On 23.01.2018 11:20, Subhadeep Sarkar wrote:
> I am facing some trouble while launching Sel4 on top of Genode. I am trying 
> to do it by the document at 
> https://genode.org/documentation/articles/sel4_part_1 . 
> 
> When I run the command: sudo ./tool/ports/prepare_port sel4, I get the 
> following error, which I am unable to bypass. 

on which Genode commit you are working respectively Genode release ?

Please don't use sudo - you don't need root privileges to build Genode
in general - or do you ?

Cheers,

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: noux_bash failure

2018-01-23 Thread Alexander Boettcher
Hello,

On 21.01.2018 18:44, genode user wrote:
> I have tried to build the noux_bash run file using the sel4 , nova and

noux_bash.run will not run on Genode/Linux.

> linux kernel options and so far have not had any success.  Nova and sel4
> both fail with:

> [init -> drivers -> acpi_drv] Segmentation fault (signum=11), see Linux
> kernel log for details

The message above give the hint that you are executing Genode/Linux -
and not Genode/NOVA nor Genode/seL4.

Please setup your build directory correctly for the Microkernels. You
may specify on the command line the kernel you would like to have on
each run, e.g. :

user@muster:~/genode.git$ tool/create_builddir x86_64
(enable all required repositories in build/x86_64/etc/build.conf)

user@muster:~/genode.git$ KERNEL=nova make -C build/x86_64 run/noux_bash
or
user@muster:~/genode.git$ KERNEL=sel4 make -C build/x86_64 run/noux_bash

If you are running on a 64bit Linux machine, also

user@muster:~/genode.git$ KERNEL=linux make -C build/x86_64 run/log

will work. (If you're running on a 32bit Linux, you would need a x86_32
build directory created by tool/create_builddir x86_32).


Cheers,

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Beginner : VMM with genode

2018-01-15 Thread Alexander Boettcher
Hello,

On 11.01.2018 15:00, jony jony wrote:
> I'm new at genode , i just booted genode 17.11 with a nova kernel based on
> the demo from the hard disk,  i was wondering how can i run a seoul or xbox
> vmm on top of genode since genode only has the launchpad in the demo and i
> don't think i can do much with that. I want to be able to use genode freely

please look for *.run files, which build and configure a scenario (as
the demo.run file you already used). You will find e.g. virtualbox.run
and some seoul*.run files. They may serve as starting point to
experiment with.

Please also consult the Genode Foundations book, which describes the
framework and also run mechanism in more detail.

Cheers,

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Roadmap 2018

2018-01-11 Thread Alexander Boettcher
Hello all,

attached my ideas and plans.

Review 2017
---

In January of 2017 I was not able to boot Genode on
my brand-new notebook side by side with other OSes installed in UEFI
mode. To overcome the issue, I choose to change this as side project and
managed to get the Genode framework, Genode's hw kernel, the seL4 kernel
and the NOVA kernel ready for UEFI. Also thanks to the external
contribution of Johannes Kliemann, we have graphical support in UEFI
mode even beside Intel graphic cards.

seL4 was also a weak UEFI target, just to trigger _some_ community
interaction. Fortunately, the experiment went well and the seL4 kernel
changes got accepted after some re-work rounds. Notable, that the seL4
kernel developers are open for external contributions. Unfortunately,
this is not given for all mircokernel projects we had to deal with.

The other bigger working field was to finish the Virtualbox 5 port for
Genode/NOVA, paused in 2016. According to the signals from
our customers and also from our "Sculpt" cook, the move from VirtualBox
4 to 5 was relatively smooth.

With the raising "Sculpt" at end of 2017, several items triggered to be
solved, e.g. for me in the NOVA kernel and the platform driver.

2018

2018 will continue as 2017 ended - by work triggered by "Sculpt".
I imagine topics like _working_ restarted driver (not all do) or ordered
shutdown/restart of the system.

For my personal "Sculpt" setup I started and tend to continue to split
up, as far as maintainable, my working environment in several (minimal)
VMs (e.g browser, eMail, compiler, tftp VM and more). I hope to replace
some of the VMs over the year by native Genode components as soon as the
alternatives become available and/or performance become acceptable.
Where possible, I also tend to use the Seoul VMM.

The other area I would like to tackle, is to move some of Genode/NOVA
only features to other Genode/kernel combinations, e.g. virtualization
leveraging our 3 x86 VMMs and IOMMU support. The harmonization of the
Genode interface to the kernel interfaces will cause some headaches,
especially when not just functionality but also performance
matters.

As pointed out by Stefan, Genode's hw kernel will have to get some
feature extensions - here I tend to participate.

Finally, I would like to see/to address some (fmpov to low prioritized)
work in Genode's core. Beside some modernization - read only dataspace
capabilities and removing physical address information from the
Dataspace interface come to my mind.

Happy hacking,

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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




signature.asc
Description: OpenPGP digital signature
--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Side-channel attacks (Meltdown, Spectre)

2018-01-08 Thread Alexander Boettcher
Hello Matthias,

thank you for the information !

Alex.

On 08.01.2018 10:47, Matthias Lange wrote:
> Hi,
> 
> On 2018-0105 at 20:24:19 +0100, Alexander Boettcher wrote:
>> Hi Udo,
>>
>> On 05.01.2018 17:36, Udo Steinberg wrote:
>>> Norman Feske (NF) wrote:
>>>
>>> NF> In contrast to monolithic kernels, a microkernel like base-hw, NOVA,
>>> NF> or seL4 does not deal with any user-level content like cryptographic
>>> NF> secrets, or the content of files. There is hardly any credential to
>>> NF> leak to begin with. User content stays outside the microkernel.
>>>
>>> While it is true that a microkernel stores significantly fewer secrets than
>>> a monolithic kernel, like Linux, most microkernels actually have a full
>>> mapping of the entire physical memory in the kernel portion of each address
>>> space, which allows an attacker to peek anywhere into physical memory.
>>
>> before starting to dig/read through all our supported kernels (I'm not
>> all familiar with the internals) - can you please elaborate a bit about
>> which microkernels, according to your knowledge, have all physical
>> memory mapped in the kernel ?
>>
>> The currently supported microkernels for Genode are Pistachio, OKL4,
>> L4/Fiasco, Fiasco.OC, Nova, seL4 and our own hw kernel.
> 
> I would like to give a comment on Fiasco.OC. Fiasco.OC / L4Re is vulnerable to
> Meltdown-like attacks because the kernel is mapped into each task. However, 
> the
> kernel does not map all physical memory but only memory it requires for its 
> own
> data structures + kernel-user memory required for e.g. UTCBs and vCPU state
> save areas. Depending on the amount of physical memory and the available page
> sizes, Fiasco.OC may map it little bit more than that to save TLB entries. 
> That
> means there can be a slight overlap of user memory that is visible to the
> kernel. But it is not possible for a thread to read _all_ memory.
> 
> Because we think that no thread should read information from other threads
> (pagetables, capability arrays, UTCBs etc.) we will change Fiasco.OC to 
> execute
> in its own address space on Intel CPUs.
> 
> Against Spectre we do not plan to implement anything right now. We think the
> attack surface of the kernel is very little (if any) and may be even further
> reduced with Intel's microcode updates and future compiler/tool mitigations.
> However, we will observe future discussions and developments and may reassess
> this in the future.
> 
> Thank you and regards,
> Matthias.
> 
> 

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Help : booting genode with nova: kernel not found

2018-01-08 Thread Alexander Boettcher
Hello,

On 08.01.2018 10:20, jony jony wrote:
> and created a symbolic link as follow: ln -s /genode
>  /genode/nova_build_dir/var/run/demo
> 
> i also tried copying in another scenario only the content of
> /genode/nova_build_dir/var/run/demo which contains
> 
> drwxr-xr-x 3 root root4096 Jan  7 06:24 ./
> drwxr-xr-x 3 root root4096 Jan  7 06:24 ../
> drwxr-xr-x 3 root root4096 Jan  7 06:24 boot/
> lrwxrwxrwx 1 root root7 Jan  7 06:24 genode -> /genode/
> -rwxr-xr-x 1 root root  125676 Jan  7 06:24 hypervisor*
> -rwxr-xr-x 1 root root 2878008 Jan  7 06:24 image.elf.gz*
> 

ssuming you are running the latest Genode 17.11 release,
you will find a ready to use iso image in


/genode/nova_build_dir/var/run/demo.iso

(if used with "RUN_OPT += --include image/iso" in the build.conf)



or a uefi bootable image in
/genode/nova_build_dir/var/run/demo.img

(if used with "RUN_OPT += --include image/uefi" in the build.conf)



Both you may dd to a USB stick and boot (for the UEFI image you will
have to disable secure boot in your UEFI setup of your PC).



However, if you intend to boot Genode by adding it manually to an
existing GRUB2 installation, see for some hints below:

> then i created a file in /etc/grub.d/49_genode1
> 
> cat 49_genode1
> #!/bin/sh -e
> echo "Genode@NOVA"
> cat << EOF
> menuentry "Genode@NOVA" {
> insmod ext2
> multiboot /genode/hypervisor
> module /genode/core
> module /genode/config config
> module /genode/init init
>   module /genode/timer timer
> module /genode/nitpicker nitpicker
> module /genode/liquid_fb liquid_fb
> module /genode/launchpad launchpad
> module /genode/scout scout
> module /genode/testnit testnit
> module /genode/nitlog nitlog
> module /genode/pci_drv pci_drv
> module /genode/vesa_drv vesa_drv
> module /genode/ps2_drv ps2_drv
> }
> 

This won't work. The image.elf.gz you have shown/seen above contains
already all Genode components of your scenario.


Please have a look into the generated grub.cfg in the boot directory of

/genode/nova_build_dir/var/run/demo/boot/grub.cfg

You should try to reuse this grub.cfg, instead of manually editing your
genode_41 file. The 'configfile' command of GRUB2 may help.

> Genode@NOVA appears on the grub once i try to load it , but i get the error
> file '/genode/hypervisor' not found
> and for the other module i get the message : you need to load the kernel
> first

Maybe try first without symbolic link, e.g. make a copy of hypervisor
and image.elf.gz to your desired location.

> 
> I tried different possibilities but none of them is working , can i get
> some help please;
> thanks

Hope it helps.

Cheers,

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Side-channel attacks (Meltdown, Spectre)

2018-01-05 Thread Alexander Boettcher
> I am not following the recent development of all those kernels, so I
> think it's best to directly consult the individual developers/teams for
> statements (like the one from Stefan above).
> 
> For my part, I can tell you that the NOVA microhypervisor (at least the
> official version) does not map physical RAM into the kernel virtual address
> space, other than the RAM in which microhypervisor itself resides. NOVA maps
> certain devices (like APIC, IOMMU), but those can't be speculatively
> accessed anyway. I cannot comment on modified NOVA versions.

I for my part, can confirm that the slightly, cough, modified NOVA
version [1], as used by Genode, kept the original behavior of the
official NOVA version [0] in that regard.

> Some commercial kernels and L4/Fiasco certainly used to map as much physical
> memory as can fit into the kernel address space. Not sure if Fiasco.OC
> retains that behavior. Check for Physmem in class Mem_layout.
> 
> Also any kernel that performs certain things like long IPC via a lazily
> flushed IPC window may have transient mappings of memory belonging
> to other user processes.

Thanks for the insights,

Alex.

[0] https://github.com/udosteinberg/NOVA
[1] https://github.com/alex-ab/NOVA/tree/r9
-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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



signature.asc
Description: OpenPGP digital signature
--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Side-channel attacks (Meltdown, Spectre)

2018-01-05 Thread Alexander Boettcher
Hi Udo,

On 05.01.2018 17:36, Udo Steinberg wrote:
> Norman Feske (NF) wrote:
> 
> NF> In contrast to monolithic kernels, a microkernel like base-hw, NOVA,
> NF> or seL4 does not deal with any user-level content like cryptographic
> NF> secrets, or the content of files. There is hardly any credential to
> NF> leak to begin with. User content stays outside the microkernel.
> 
> While it is true that a microkernel stores significantly fewer secrets than
> a monolithic kernel, like Linux, most microkernels actually have a full
> mapping of the entire physical memory in the kernel portion of each address
> space, which allows an attacker to peek anywhere into physical memory.

before starting to dig/read through all our supported kernels (I'm not
all familiar with the internals) - can you please elaborate a bit about
which microkernels, according to your knowledge, have all physical
memory mapped in the kernel ?

The currently supported microkernels for Genode are Pistachio, OKL4,
L4/Fiasco, Fiasco.OC, Nova, seL4 and our own hw kernel.

Thanks,

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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



signature.asc
Description: OpenPGP digital signature
--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Disk images for ARM based Genode Scenarios

2018-01-04 Thread Alexander Boettcher
Hello,

On 02.01.2018 19:42, Baconicsynergy via genode-main wrote:
> I built a simple log Genode scenario for wand_quad for testing purposes, and 
> I am previously used to receiving iso images for x86_32/x86_64.
> 
> However, there is no iso image! I am left with a log.core file in the var/run 
> directory and I don't know how to construct a bootable microSD card image 
> from these files.

by default you will find a file
build/wand_quad/var/run//image.elf, which could be used by
your u-boot with the 'bootelf' command (if supported by the bootloader
on your sd-card).

You may also build an Genode image to be used with 'bootm' command of
your u-boot. Add to the RUN_OPT in your build/wand_quad/etc/build.conf

RUN_OPT += --include image/uboot

After you invoked the re-run the run script you will find the image
under build/wand_quad/var/run//uImage

The u-boot (and SD-card) you have to setup yourself. Either you have one
already shipped with your board or you may try to create a u-boot using
our tool in "tool/create_uboot".

Hope it helps,

Alex.

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: wifi: assignment of PCI device failed

2017-12-18 Thread Alexander Boettcher
Hi Johannes,

On 07.12.2017 10:11, Johannes Kliemann wrote:
> Yet this doesn't explain the second error that iwl is timing out waiting
> for the hardware.

as discussed off-line, I could reproduce it on one of our machines. May
you please give the commits of [0] a spin, which solves the issue for
the one machine from us.

Thanks,

Alex.

[0] https://github.com/genodelabs/genode/issues/2620

> 
> Regards,
> Johannes
> 
> Am 05.12.2017 um 17:06 schrieb Johannes Kliemann:
>> Hi Alex,
>>
>> thanks to your hint with Issue #2207 I was able to get the value of res
>> which is 9. What I find interesting is the fact that it now seems to be
>> able to assign the PCI device as you can see in [1].
>>
>>> [platform_drv] wifi_drv -> : assignment of PCI device 4:0.0 succeeded
>>
>> Yet everything else seems to behave as before. The timeout errors still
>> appear and there doesn't seem to be any actual connection attempt.
>>
>> I have built this from [2] which currently incorporates log_core_kernel,
>> NOVA VGA support and benders fix free memory calculation (if this
>> information is useful to you).
>>
>> Regards,
>> Johannes
>>
>> [1]: https://imgur.com/a/osaVJ
>> [2]:
>> https://github.com/jklmnn/genode/tree/8a64415f52df2dee30e8fcd279e16d1b18eb2fb9
>>
>> Am 04.12.2017 um 22:14 schrieb Alexander Boettcher:
>>> Hello,
>>>
>>> On 04.12.2017 10:04, Johannes Kliemann wrote:
>>>> Hi all,
>>>>
>>>> I tried to use the Wifi driver for Intel wifi chips.
>>>> When running the driver I get the following messages:
>>>>
>>>>> [platform_drv] Error: wifi_drv -> : assignment of PCI device 4:0.0
>>>> failed phys=0xf840 virt=0x10
>>>> and
>>>>
>>>>> [wifi_drv] [iwl_trans_pcie_grap_nic_access] *WARN* Timeout waiting for
>>>> hardware access (CSR_GP_CNTRL 0x)
>>>>
>>>> The corresponding run file [1] is explicitly written without any default
>>>> routes. I can only provide a photo of the log output [2] (at least the
>>>> visible part) as I don't have any other debug method yet on this hardware.
>>>>
>>>> I thought that this was a missing route but I couldn't find a related
>>>> message and assigning default routes didn't fix it.
>>>> The error seems to appear in
>>>> repos/base-nova/src/core/pd_session_support.cc:assign_pci returning
>>>> false but I couldn't find out why this happens.
>>>> Does anyone have an idea?
>>>
>>> What is or maybe are the value(s) for the variable 'res' in
>>> repos/base-nova/src/core/pd_session_support.cc:assign_pci ?
>>>
>>
>> --
>> Check out the vibrant tech community on one of the world's most
>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
>> ___
>> genode-main mailing list
>> genode-main@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/genode-main
>>
> 
> --
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> ___
> genode-main mailing list
> genode-main@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main
> 

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: wifi: assignment of PCI device failed

2017-12-05 Thread Alexander Boettcher
On 04.12.2017 22:14, Alexander Boettcher wrote:
>> I thought that this was a missing route but I couldn't find a related
>> message and assigning default routes didn't fix it.
>> The error seems to appear in
>> repos/base-nova/src/core/pd_session_support.cc:assign_pci returning
>> false but I couldn't find out why this happens.
>> Does anyone have an idea?
> 
> What is or maybe are the value(s) for the variable 'res' in
> repos/base-nova/src/core/pd_session_support.cc:assign_pci ?

Is my assumption right, that you have no kernel log messages in your
setup ? In that case issue #2207 may be possibly of help to you if you
get it integrated into your setup.

Alex

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: wifi: assignment of PCI device failed

2017-12-04 Thread Alexander Boettcher
Hello,

On 04.12.2017 10:04, Johannes Kliemann wrote:
> Hi all,
> 
> I tried to use the Wifi driver for Intel wifi chips.
> When running the driver I get the following messages:
> 
>> [platform_drv] Error: wifi_drv -> : assignment of PCI device 4:0.0
> failed phys=0xf840 virt=0x10
> and
> 
>> [wifi_drv] [iwl_trans_pcie_grap_nic_access] *WARN* Timeout waiting for
> hardware access (CSR_GP_CNTRL 0x)
> 
> The corresponding run file [1] is explicitly written without any default
> routes. I can only provide a photo of the log output [2] (at least the
> visible part) as I don't have any other debug method yet on this hardware.
> 
> I thought that this was a missing route but I couldn't find a related
> message and assigning default routes didn't fix it.
> The error seems to appear in
> repos/base-nova/src/core/pd_session_support.cc:assign_pci returning
> false but I couldn't find out why this happens.
> Does anyone have an idea?

What is or maybe are the value(s) for the variable 'res' in
repos/base-nova/src/core/pd_session_support.cc:assign_pci ?

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Virtual machines from .vdi images

2017-10-27 Thread Alexander Boettcher
ng PCI
> command 0003->0007
> [init -> nic_drv]
> [ 0] sys_assign_pci: Invalid Hint (0x300)
> [init -> platform_drv] Error: nic_drv -> : assignment of PCI device 3:0.0
> failed phys=0xe030 virt=0x1000
> [init -> ps2_drv] Error: failed to read from port
> [init -> nic_drv] PCI device 03:00.0 latency timer is unreasonably low at
> 0. Setting to 32.
> [init -> ahci_drv] AHCI found (vendor: 4130 device: 30721 class: 67073)
> [init -> ps2_drv] Warning: could not reset mouse (unexpected response)
> [init -> nic_drv]
> [init -> nic_drv] bus_addr = fea18000 len = 100
> [ 0] sys_assign_pci: Invalid Hint (0x88)
> [init -> platform_drv] Error: ahci_drv -> : assignment of PCI device 0:11.0
> failed phys=0xe0088000 virt=0x1000
> [init -> platform_drv] 0:11.0 adjust IRQ as reported by ACPI: 10 -> 19
> [init -> platform_drv] 0:11.0 uses MSI 64bit, vector 0x9f, address
> 0xfee1, non-maskable
> [init -> ahci_drv] version: major=0x1 minor=0x300
> [init -> nic_drv] snprintf not implemented
> [init -> platform_drv] 3:0.0 adjust IRQ as reported by ACPI: 11 -> 18
> [init -> ahci_drv] command slots: 32
> [init -> ahci_drv] native command queuing: yes
> [init -> platform_drv] 3:0.0 uses MSI 64bit, vector 0x9e, address
> 0xfee1, non-maskable
> [init -> ahci_drv] 64-bit support: yes
> [init -> ahci_drv] number of ports: 6 pi: 0x3f
> [init] child "nic_drv" announces service "Nic"
> [init -> ps2_drv] Error: failed to read from port
> [init -> nic_drv] MAC address f4:4d:30:b9:16:f5
> [init -> nic_bridge] --- NIC bridge started (mac=f4:4d:30:b9:16:f5) ---
> [init] child "nic_bridge" announces service "Nic"
> [init -> ps2_drv] Warning: could not enable stream
> [init -> fb_drv] Found: VESA BIOS version 3.0
> [init -> ahci_drv]  #0: ATA
> [init -> ahci_drv]  #1: off (unknown device signature)
> [init -> fb_drv] OEM: AMD ATOMBIOS
> [init -> ahci_drv]  #2: off (unknown device signature)
> [init -> ahci_drv]  #3: off (unknown device signature)
> [init -> ahci_drv]  #4: off (unknown device signature)
> [init -> ahci_drv]  #5: off (unknown device signature)
> [init -> platform_drv] PS2 uses IRQ, vector 0x1
> [init -> platform_drv] PS2 uses IRQ, vector 0xc
> [init] child "ps2_drv" announces service "Input"
> [init -> fb_drv] Found: physical frame buffer at 0xc000 size: 16777216
> [init -> fb_drv] fb mapped to 0xb00
> [init -> fb_drv] using video mode: 1920x1080@16
> [init] child "nitpicker" announces service "Nitpicker"
> [init] child "nit_fb1" announces service "Framebuffer"
> [init] child "nit_fb2" announces service "Framebuffer"
> [init] child "nit_fb1" announces service "Input"
> [init -> nit_fb1] using xywh=(10,10,1024,768)
> [init] child "nit_fb2" announces service "Input"
> [init -> nit_fb2] using xywh=(890,890,1024,768)
> [init] child "rtc_drv" announces service "Rtc"
> [init -> vbox1]   0xa000 .. 0xafff: stack area
> [init -> vbox1]   0x3 .. 0x13bfff: ld.lib.so
> [init -> vbox1]   0x1ae4000 .. 0x1c96fff: libc.lib.so
> [init -> vbox2]   0xa000 .. 0xafff: stack area
> [init -> vbox1]   0x1c97000 .. 0x1c9: libc_pipe.lib.so
> [init -> vbox1]   0x1ca .. 0x1ca: libc_terminal.lib.so
> [init -> vbox2]   0x3 .. 0x13bfff: ld.lib.so
> [init -> vbox2]   0x1ae4000 .. 0x1c96fff: libc.lib.so
> [init -> vbox1]   0x1cb .. 0x1d97fff: libiconv.lib.so
> [init -> vbox2]   0x1c97000 .. 0x1c9: libc_pipe.lib.so
> [init -> vbox2]   0x1ca .. 0x1ca: libc_terminal.lib.so
> [init -> vbox1]   0x1d98000 .. 0x1dc1fff: libm.lib.so
> [init -> vbox1]   0x1dc2000 .. 0x1dcdfff: pthread.lib.so
> [init -> vbox2]   0x1cb .. 0x1d97fff: libiconv.lib.so
> [init -> vbox1]   0x1dce000 .. 0x1e10fff: qemu-usb.lib.so
> [init -> vbox1]   0x1e11000 .. 0x1fc6fff: stdcxx.lib.so
> [init -> vbox2]   0x1d98000 .. 0x1dc1fff: libm.lib.so
> [init -> vbox2]   0x1dc2000 .. 0x1dcdfff: pthread.lib.so
> [init -> vbox2]   0x1dce000 .. 0x1e10fff: qemu-usb.lib.so
> [init -> vbox2]   0x1e11000 .. 0x1fc6fff: stdcxx.lib.so
> [init -> vbox2] using the pipe libc plugin
> [init -> vbox2] Warning: issetugid called, not yet implemented, returning 1
> [init -> vbox2] Warning: issetugid called, not yet implemented, returning 1
> [init -> vbox2] Error: fcntl(): command 2 not supported
> [init -> vbox2] Log created: 2017-10-26T20:29:00.0Z
> [init -> vbox2] main Executable: /virtualbox
> [init -> vbox2] Error: SystemProperties : Cannot determine default Guest
> Additions ISO location. Most likely they are not available
> [init -> vbox2] Warning: _fpathconf: _fpathconf not implemented
> [init -> vbox2] Warning: statfs provides bogus values for '//test.iso'
> (probably a shared folder)
> [init -> vbox2] Warning: fcntl(): command 4 args 4 not supported - terminal
> [init -> vbox2] Warning: _sigaction: _sigaction not implemented
> [init -> vbox2] Using SVM virtualization extension.
> [init -> vbox2] Error: fireRuntimeErrorEvent : 0 DrvHostSerialFail Ioctl
> failed for serial host device '/dev/terminal' (VERR_NOT_SUPPORTED). The
> device will not work properly
> [init -> vbox2] fb resize : 1024x768@16 -> 720x400@0
> [init -> vbox2] fb resize : 720x400@16 -> 640x480@32
> [init -> vbox2] fb resize : 640x480@16 -> 720x400@0
> [init -> vbox2] fb resize : 720x400@16 -> 1024x768@32
> 
> 
> 
> 
> 
> 
> 
> --
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> 
> 
> 
> ___
> genode-main mailing list
> genode-main@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main
> 

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: vbox4_ubuntu_16_04_64.run recipe

2017-10-16 Thread Alexander Boettcher
Hello,

On 13.10.2017 17:01, Chris Rothrock wrote:
> I am trying to get a working virtual machine in Genode with the
> recipe vbox4_ubuntu_16_04_64.run but I am unsure where the virtual disk
> image file (.vdi) should reside so that the VirtualBox module loads it
> properly.  I am able to get a good compile and it seems to boot to Genode
> just fine and I even see the CPU status meter but I don't get the virtual
> machine booting up.  I created a VirtualBox VM with this same name with a
> VDI and completed a full install of Ubuntu 16.04 64 bit and am trying to
> use this image file.  As far as I can tell, the VDI meets all the
> parameters and works fine with using both Linux and Windows VirtualBox to
> run.  Any instructions on getting this (and possibly Windows VMs to work)
> would be greatly appreciated.

the vbox4_* and vbox5* run scripts are specifically setup for our test
machine. The scripts are executed automatically by our tests every day.

If you want to use those run scripts, you have to manually prepare your
test target machine beforehand similar to ours.

All the vbox4_*.run and vbox5_*.run scripts expect that the .vdi image
is placed on the target test machine. In the test machine a AHCI disc is
expected to appear as device 0 with a MBR partition scheme. The 4.
partition must contain a ext2 filesystem (see
repos/ports/run/virtualbox_auto.inc, look for ahci_drv and part_blk).

On the ext2 filesystem the vdi must lie in the root directory, and
additionally a "ram" directory is expected with a empty overlay vdi
image. The overlay image is loaded and kept during run script execution
just in RAM. All writes to the vdi goes to this overlay image instead of
the original Ubuntu image, to make sure that the original vdi file is
not modified.

So, for vbox4_ubuntu_16_04_64.run (using
repos/ports/run/vm_ubuntu_16_04_64.vbox) it looks like:

/ubuntu_16_04_64.vdi
/ram/overlay_ubuntu_16_04_64.vdi

on the target test machine.

For the Windows VMs it is similar, just look into the corresponding
Virtualbox configuration *.vbox files for the vdi image names and add
the files to the filesystem on the target machine beforehand.

Information about creating the overlay images you will find in the
Internet or you may read the beginning of repos/ports/run/vbox_share.inc
for some hints.

Cheers,

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: UEFI support for x86

2017-10-02 Thread Alexander Boettcher
Hello,

On 01.10.2017 15:38, Edward Sandberg wrote:
> Hello,
> 
> I sent the following email to the sel4 mailing list but this may be a
> better fit.  I built Genode 17.08 with run option "image/uefi" and
> platform option "sel4_x86_32". I have tried booting the resulting image
> on a variety of machines but am not getting the behavior I expect.  The
> machines I have tried are:
> 
> * Up board (a Windows compatible Atom-based system)
> * Dell M3800 laptop
> * Dell Latitude 7280 laptop
> * HP ProLiant DL380 Gen9 Server
> * Dell Optoplex 990
> * Asus P9X79 WS Motherboard with Intel Core i7-3930K
> 
> The furthest I have gotten was on the UP board, which only supports UEFI
> boot:
> 
> https://www.intel.com/content/www/us/en/support/emerging-technologies/intel-realsense-technology/22699.html
> 
> I saw serial output but no graphical output (see below).  The other
> machines I tried to boot on didn't even give me serial output.  The

The seL4 kernel has a option to manually specify the ioports for a
serial device. If you find them out for your machine (using
Linux/Windows), you may add the cmdline option 'console_port' with the
io_port information to the seL4 kernel in

tool/run/boot_dir/sel4

(I never tried it, but reading from the source code it should do)

> serial output seems to indicate that an attempt to create a framebuffer
> failed.
> 
> Is this the correct build procedure?

Graphical support with UEFI boot for Genode/seL4 may work with the Intel
framebuffer driver (example in intel_fb.run), if you have a Intel
graphic card.

The second option, the fb_drv, which uses the VESA Bios, will not work.
(We had no luck with it, but did also not investigated too much.)

The third framebuffer option (fb_boot_drv component) will not work with
Genode/seL4, but with Genode/NOVA. Grub2 can initialize the framebuffer
utilizing UEFI interfaces/mechanism. The information about the
framebuffer location, size, color depth etc. are propagated by GRUB2
(when using Multiboot 2) to the kernel. For NOVA we have support to
propagate this information further to Genode and further to fb_boot_drv.
This support of propagation of the framebuffer information is however
missing in the seL4 kernel and in Genode/seL4 version of 'core' (the
roottask in seL4 speak).

> What hardware have you used to test UEFI boot?

Recent Lenovo notebooks, with intel_fb_drv and fb_boot_drv.

> Does the trace below suggest any experiments to try?

As pointed out above, for Genode/seL4 the only option for now is the
Intel driver (if you have the hardware of course). The effort to support
the framebuffer initialized by Grub2/UEFI is expected to be not too hard
(as it already done for Genode/NOVA).

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: VirtualBox with Networking

2017-09-26 Thread Alexander Boettcher
Chris,

please have a look at [0]. There are already some information about
Virtualbox and nic_router and nic_bridge. Static IP addresses seem to
not work with nic_bridge and VBox.


[0] https://github.com/genodelabs/genode/issues/2373

Alex.

On 25.09.2017 14:09, Chris Rothrock wrote:
> Alexander,
> 
> As a second part to thatm I took the DHCP part completely out of the
> equation and set a static IP on both VMs and I was unable to ping between
> the two VMs thereby taking the outside network completely out of the
> picture.  In this case, the ping should have gone from one VM to the NIC
> bridge then back to the second VM but that didn't occur either.  I will
> also try Martin's suggestion with the NIC dump but there is certainly
> something not routing properly with the bridge.
> 
> Chris
> 
> On Mon, Sep 25, 2017 at 7:48 AM, Alexander Boettcher <
> alexander.boettc...@genode-labs.com> wrote:
> 
>> Hello,
>>
>> On 24.09.2017 19:16, Chris Rothrock wrote:
>>> I have been able to make a working environment with
>> Genode/NOVA/VirtualBox
>>> a single VM running TinyCore with networking enabled and can communicate
>>> across the network.  So far, only on VirtualBox 4, 5 still has issues
>> that
>>> I am still trying to work out that I will get into at a later time but my
>>> goal is multiple VMs with networking.
>>>
>>> With VirtualBox 4, I have successfully made two VM environments and both
>>> VMs see eth0, I can assign an IP address to each but neither VM can
>>> communicate outside their own VM.  Unlike with the single VM, I was
>>> unsuccessful to get an IP via DHCP (hence why I used a static IP), they
>>
>> just a guess:
>>
>> If you using the nic_bridge, make sure that the MAC addresses generated
>> by and assigned by the nic_bridge to the VMs
>> (repos/os/src/server/nic_bridge/README) actually are not ignored/are
>> permitted by your DHCP server.
>>
>> In the single VM use-case (running without the nic_bridge), the MAC
>> address of the network card is assigned to your VM, which is probably
>> permitted/white-listed by your DHCP server in your network, I guess.
>>
>>
>>> could not ping the other VM, they could not ping anything on the network
>> to
>>> which they were attached.  Is there a setting in the test.vbox file
>>> different than for a single VM mode that I need to make to make the
>> bridge
>>> work for this?
>>>
>>>
>>>
>>> 
>> --
>>> Check out the vibrant tech community on one of the world's most
>>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
>>>
>>>
>>>
>>> ___
>>> genode-main mailing list
>>> genode-main@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/genode-main
>>>
>>
>> --
>> Alexander Boettcher
>> Genode Labs
>>
>> http://www.genode-labs.com - http://www.genode.org
>>
>> Genode Labs GmbH - Amtsgericht Dresden - HRB 28424 - Sitz Dresden
>> Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth
>>
>> 
>> --
>> Check out the vibrant tech community on one of the world's most
>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
>> ___
>> genode-main mailing list
>> genode-main@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/genode-main
>>
> 
> 
> 
> 
> 
> --
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> 
> 
> 
> ___
> genode-main mailing list
> genode-main@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main
> 

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: VirtualBox with Networking

2017-09-25 Thread Alexander Boettcher
Hello,

On 24.09.2017 19:16, Chris Rothrock wrote:
> I have been able to make a working environment with Genode/NOVA/VirtualBox
> a single VM running TinyCore with networking enabled and can communicate
> across the network.  So far, only on VirtualBox 4, 5 still has issues that
> I am still trying to work out that I will get into at a later time but my
> goal is multiple VMs with networking.
> 
> With VirtualBox 4, I have successfully made two VM environments and both
> VMs see eth0, I can assign an IP address to each but neither VM can
> communicate outside their own VM.  Unlike with the single VM, I was
> unsuccessful to get an IP via DHCP (hence why I used a static IP), they

just a guess:

If you using the nic_bridge, make sure that the MAC addresses generated
by and assigned by the nic_bridge to the VMs
(repos/os/src/server/nic_bridge/README) actually are not ignored/are
permitted by your DHCP server.

In the single VM use-case (running without the nic_bridge), the MAC
address of the network card is assigned to your VM, which is probably
permitted/white-listed by your DHCP server in your network, I guess.


> could not ping the other VM, they could not ping anything on the network to
> which they were attached.  Is there a setting in the test.vbox file
> different than for a single VM mode that I need to make to make the bridge
> work for this?
> 
> 
> 
> --
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> 
> 
> 
> ___
> genode-main mailing list
> genode-main@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main
> 

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Genode on i.MX6Q Sabre Lite

2017-09-13 Thread Alexander Boettcher
On 13.09.2017 08:48, Alexander Boettcher wrote:
>> to enable it on Sabre Lite platform, and currently I have no problems
>> running test scenarios under default hw kernel. But when attempting to run
>> Genode with seL4, the boot process hangs up once it reaches "Jumping to
>> kernel-image entry point..."
>>
>> ELF-loader started on CPU: ARM Ltd. Cortex-A9 r2p10
>>  paddr=[2000..201bc01f]
>> ELF-loading image 'kernel'
>>  paddr=[1000..10039fff]
>>  vaddr=[e000..e0039fff]
>>  virt_entry=e000
>> ELF-loading image 'genode.elf'
>>  paddr=[1003a000..10261fff]
>>  vaddr=[200..2227fff]
>>  virt_entry=200
>> Enabling MMU and paging
>> Jumping to kernel-image entry point...
> 
> The UART for Sabre Lite and Wand Quad are not the same, as far as I know.

Sorry, my assumption seems to be wrong, since the messages above are
from the seL4 elfloader already.

So I presume you have just to adjust the seL4 kernel autoconf.h to match
the Sabre lite board.

> Also, the seL4 kernel configuration (autoconf.h) is adjusted to match
> the Wand Quad board, and not the Sabre Lite board, see
> 
> repos/base-sel4/patches/wand_quad.config
> repos/base-sel4/ports/sel4.port

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Genode on i.MX6Q Sabre Lite

2017-09-13 Thread Alexander Boettcher
 information. In
>>>> contrast, on ARM, everything (seL4 kernel + Genode) must be contained in
>>>> a single image. The details of how such an image is assembled is
>>>> kernel-specific. Consequently, there must exist a seL4-specific tool for
>>>> creating it. Can you please elaborate, which tool you use and which
>>>> particular steps you take?
>>>>
>>>> Another potential pitfall would be the use of the wrong UART or the use
>>>> of a kernel configuration without debug support. The latter is needed
>>>> for the kernel-provided UART driver. Have you tried to run a
>>>> non-Genode-based seL4 image on the hardware? I would not try to run
>>>> Genode on the device before running a simple seL4 example first.
>>>
>>> Hi,
>>>
>>> I'm using a fork of seL4's elfloader-tool that I've hacked together to
>>> create an image that acutally boots (at least it gets into the genode
>>> userland image where it is failing).
>>> To be clear: I need to add calls to kernel_debugger_outstring as I get
>>> a data fault before the logging infrastructure works (I guess due to
>>> exception handling not being initialized before the fail occurs).
>>>
>>> I'm using an am335x based board so I can't test if this works for other
>>> hardware, but if anyone is interested you can find my elfloader fork at
>>> https://github.com/N8Fear/elfloader-tool
>>>
>>> The bootable image is then created by running the script from the
>>> elfloader dir
>>> TOOLPREFIX=arm-none-eabi- PLAT=am335x ./gen_boot_image.sh
>>> /build/wega_am335x/var/run/log/sel4
>>> /build/wega_am335x/var/run/log/image.elf
>>> /tmp/out.elf
>>>
>>> PLAT and TOOLPREFIX need to be changed accordingly and when building the
>>> prelinked elfloader binary PLAT and ARMV needs to be adjusted as well
>>> (take a look at the Makefile).
>>>
>>> I guess for your board you should try PLAT=imx6 for building and for
>>> creating the image.
>>>
>>> I guess I should do some cleanup if anyone else wants to use the
>>> stuff...
>>>
>>> With kind regards,
>>> Hinnerk
>>>
>>>
>>>
>>> 
>>> --
>>> Check out the vibrant tech community on one of the world's most
>>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
>>> ___
>>> genode-main mailing list
>>> genode-main@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/genode-main
>>>
>>
>>
> 
> 
> 
> --
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> 
> 
> 
> ___
> genode-main mailing list
> genode-main@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main
> 

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: ACPI _PS0 failing with UNINITIALIZED_ARG

2017-08-16 Thread Alexander Boettcher
Hi,

just a minor idea: the acpi rsdp revision is currently hard-corded in
base-nova's core platform.cc to '2'. I don't really believe that this
could make a difference, but maybe check that this actually matches the
revision as reported by grub2 to the kernel. The revision is currently
not exported to Genode 'core'.

Just an idea.

Alex.

On 04.08.2017 13:05, Johannes Kliemann wrote:
> Hi,
> 
> thanks for your answer. Well the I2C controller is already enabled. I
> can successfully run \_SB_.I2C4._PS(0|3). I even can measure the effect
> since the magic value in the mmio is only available if _PS0 was called
> on the I2C controller.
> 
> I have traced the initialization on Linux (exactly said the calls of
> evaluate object) and there doesn't seem to be anything unusual.
> 
>> \_SB_.I2C4._STA
>> \_SB_.I2C4.TCS2._STA
>> \_SB_.I2C4.SSCN
>> \_SB_.I2C4.FMCN
>> \_SB_.I2C4.FPCN
>> \_SB_.I2C4.HSCN
>> \_SB_.I2C4._STA
>> \_SB_.I2C4.TCS2._STA
>> \_SB_.I2C4._PS3
>> \_SB_.I2C4._STA
>> \_SB_.I2C4.TCS2._STA
>> \_SB_.I2C4._PS0
>> \_SB_.I2C4.TCS2._PS3
>> \_SB_.I2C4.TCS2._PS0
> 
> This is the sequence called by Linux (shortened, double entries are
> omitted). Beside the status calls I can't see anything special.
> 
> Regards,
> Johannes
> 
> Am 04.08.2017 um 11:12 schrieb Alexander Boettcher:
>> Hi,
>>
>> On 03.08.2017 13:29, Johannes Kliemann wrote:
>>>> I have a touchscreen controller (which is an I2C slave) that I need to 
>>>> enable via APCI. This should be done by calling the _PS0 ACPI method. I 
>>>> call this method by using AcpiEvaluateObject with no arguments and no 
>>>> return values.
>>
>> just guessing. Since the touchscreen controller is a slave of the I2C
>> controller, you have to have a (ACPI) driver to enable the I2C and
>> potentially also the right I2C slaves.
>>
>>>> what am I missing to successfully enable the touchscreen device via ACPI? 
>>>> Is there something the Linux kernel is initializing implicitly (I couldn't 
>>>> find something like this)?
>>>
>>> The current workaround for this issue is to use the GPIO pins to enable
>>> the controller. But this isn't the desired way since it requires an
>>> additional GPIO driver that takes ~100 LOC and also a separate ACPI
>>> initialization for this driver.
>>
>> again, just guessing. Your workaround sounds bit like a part of the
>> initialize sequence of the I2C controller.
>>
>>> Besides that other functions that are needed to get initial parameters
>>> return errors. On the specific device I have the following examples:
>>>
>>>> \_SB_.I2C4.SSCN
>>>> \_SB_.I2C4.FMCN
>>>> \_SB_.I2C4.FPCN
>>>> \_SB_.I2C4.HSCN
>>
>> again, just guessing. Probably you need/have to find the right acpi
>> method to initialize the I2C controller, so that the slaves, as your
>> touchscreen, may work properly.
>>
>>>> what am I missing to successfully enable the touchscreen device via
>> ACPI? Is there something the Linux kernel is initializing implicitly (I
>> couldn't find something like this)?
>>
>> ... just guessing: the Linux kernel initialize the I2C controller for
>> sure fully, thats why the I2C method in the ACPI tables of your I2C
>> slave work in Linux ?
>>
>>
>> If all my guessing above is wrong, another direction could be to check
>> the version of the acpica library used by Genode and the ACPICA version
>> you have in the Linux kernel. I know that ACPICA library code and Linux
>> code does not exactly match (but they have common roots), so that one
>> may possibly deduce the difference in the behavior. Maybe a update to a
>> new ACPICA library version for Genode can help (since there a features
>> and fixes in the upstream ACPICA library according to the changelog) ?
>>
>> Good luck,
>>

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: ACPI _PS0 failing with UNINITIALIZED_ARG

2017-08-04 Thread Alexander Boettcher
Hi,

On 03.08.2017 13:29, Johannes Kliemann wrote:
>> I have a touchscreen controller (which is an I2C slave) that I need to 
>> enable via APCI. This should be done by calling the _PS0 ACPI method. I call 
>> this method by using AcpiEvaluateObject with no arguments and no return 
>> values.

just guessing. Since the touchscreen controller is a slave of the I2C
controller, you have to have a (ACPI) driver to enable the I2C and
potentially also the right I2C slaves.

>> what am I missing to successfully enable the touchscreen device via ACPI? Is 
>> there something the Linux kernel is initializing implicitly (I couldn't find 
>> something like this)?
> 
> The current workaround for this issue is to use the GPIO pins to enable
> the controller. But this isn't the desired way since it requires an
> additional GPIO driver that takes ~100 LOC and also a separate ACPI
> initialization for this driver.

again, just guessing. Your workaround sounds bit like a part of the
initialize sequence of the I2C controller.

> Besides that other functions that are needed to get initial parameters
> return errors. On the specific device I have the following examples:
> 
>> \_SB_.I2C4.SSCN
>> \_SB_.I2C4.FMCN
>> \_SB_.I2C4.FPCN
>> \_SB_.I2C4.HSCN

again, just guessing. Probably you need/have to find the right acpi
method to initialize the I2C controller, so that the slaves, as your
touchscreen, may work properly.

>> what am I missing to successfully enable the touchscreen device via
ACPI? Is there something the Linux kernel is initializing implicitly (I
couldn't find something like this)?

... just guessing: the Linux kernel initialize the I2C controller for
sure fully, thats why the I2C method in the ACPI tables of your I2C
slave work in Linux ?


If all my guessing above is wrong, another direction could be to check
the version of the acpica library used by Genode and the ACPICA version
you have in the Linux kernel. I know that ACPICA library code and Linux
code does not exactly match (but they have common roots), so that one
may possibly deduce the difference in the behavior. Maybe a update to a
new ACPICA library version for Genode can help (since there a features
and fixes in the upstream ACPICA library according to the changelog) ?

Good luck,

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Nova without Bender

2017-08-04 Thread Alexander Boettcher
Hi,

On 03.08.2017 13:11, Johannes Kliemann wrote:
> I tried to use Nova without Bender with Multiboot2. Basically it works,
> but when I omit Bender, there's no serial output from either Nova or
> Genode. I couldn't find out what Bender does different to enable serial
> on Nova.

the task of Bender is to relocate modules to higher physical memory and
to detect PCI serial cards and determine the I/O ports to use them
actually. Bender writes this information to a area called Bios Data Area
(BDA).

The NOVA microhypervisor and 'core' of Genode look into this area and
use the information obtained from there to program and to drive the
UART/serial device.

By removing Bender, you effectively have no valid information in the BDA
anymore, and so you don't get any serial output.

> What is missing to enable serial on Nova alone?

If you don't want to use Bender, but want to have serial output, then
you have to hardcode the I/O ports for your target machine specifically
in the sources of NOVA and 'core', see [0] and [1].

[0] https://github.com/alex-ab/NOVA/blob/r9/src/console_serial.cpp#L35
[1]
https://github.com/genodelabs/genode/blob/master/repos/base-nova/src/core/core_log.cc#L25

> PS: It also seems that Benders Multiboot2-header [1] is not
> specification conform. The tags type and flags are defined as double
> word but according to the specification [2] these are u16 so this should
> be a word only.

You're right, I'm going to change it. Thanks!

Cheers,

Alex.

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: lwip and seL4

2017-07-31 Thread Alexander Boettcher
Hello,

On 28.07.2017 20:08, Steven Harp wrote:
> Observed a problem testing lwip under seL4 (run/lwip). 
> This succeeds with kernels okl4, foc, and nova, but under
> seL4 there are complaints from acpi_drv (see below).
> The "Error: I/O memory [1ffe1000,1ffe2000) not available"
> seems most concerning.
> 
> Build architecture is x86_32, relying on drivers dde_ipxe,
> testing in qemu on Xenial.  Theories / workarounds (seL4)?

yes. Try to change the memory for Qemu in tool/run/power_on/qemu from
512M to something else, e.g. 511M. This workaround should help.

We have seen this already some weeks ago and analyzed it. I turns out
that the seL4 kernel memory management and the physical memory location
of some ACPI tables collide in an unfortunate way. (seL4 kernel version
3.2.0 as used by Genode/seL4 in 17.05 release respectively on current
master)

Since we were already in progress of upgrading the used kernel to seL4
5.2.0, we decided not to fix it (by building a kernel patch against 3.2.0)

With the update to seL4 kernel 5.2.0 (currently on staging for testing
and scheduled for 17.08 release), the issue went away.

Cheers,

Alex.

> 
> // Steve
> 
>> [init -> nic_drv] --- iPXE NIC driver started ---
>> [init -> nic_drv] -- init iPXE NIC
>> [init -> acpi_drv] Error: ROM-session creation failed (ram_quota=6144, 
>> cap_quota=3, label="platform_info")
>> [init -> acpi_drv] Error: Could not open ROM session for "platform_info"
>> [init] child "timer" announces service "Timer"
>> [init] child "acpi_report_rom" announces service "Report"
>> Warning: void Genode::Rpc_cap_factory::free(Genode::Native_capability) not 
>> implemented - resources leaked: 0x10
>> [init] child "acpi_report_rom" announces service "ROM"
>> Error: I/O memory [1ffe1000,1ffe2000) not available
>> Error: Local MMIO mapping failed!
>> [init -> acpi_drv] Error: IO_MEM-session creation failed (cap_quota=3, 
>> ram_quota=6K, base=0x1ffe1000, size=0x1000, wc=no)
>> [init -> acpi_drv] Warning: 1 dangling allocation at allocator destruction 
>> time
>> Warning: unmapping of managed dataspaces not yet supported
>> [init -> acpi_drv] Error: Unknown exception occured - failure
>> [init -> acpi_drv] Error: __cxa_guard_abort called
>> Kernel: Thread 'ep' died because of an uncaught exception
>> [init -> acpi_drv] Error: Uncaught exception of type 'Genode::Service_denied'
>> [init -> acpi_drv] Warning: abort called - thread: ep
>> [init] child "acpi_drv" exited with exit value 1
>> Error: Test execution timed out
>> Makefile:309: recipe for target 'run/lwip' failed
> 
> 
> ------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> ___
> genode-main mailing list
> genode-main@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main
> 

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Networking Support in VirtualBox

2017-07-10 Thread Alexander Boettcher
On 06.07.2017 22:10, Chris Rothrock wrote:
> leaves me back at my starting point - I have no means of obtaining serial
> log data from a hardware boot.

Seriously ? I can't believe.

Getting a test machine with the minimal requirement of getting serial
log output is fundamental to be productive. (There are so cheap (for a
company/project) refurbished Intel notebooks available with Intel AMT
SOL on board ...)

Nevertheless,

I updated [0] and added some (experimental/untested) features. Mainly
they take care to capture the log output in 'core' and a graphical
terminal will show them. Obviously, this only make sense if you managed
to boot Genode into the graphical environment and all went fine. (Which
sounds so in your case).

Good luck,

Alex.

[0] https://github.com/alex-ab/genode/commits/staging_vbox_run

> 
> On Thu, Jul 6, 2017 at 4:00 PM, Alexander Boettcher <
> alexander.boettc...@genode-labs.com> wrote:
> 
>> Hi,
>>
>> On 06.07.2017 21:40, Chris Rothrock wrote:
>>> Scratch that, I found the issue with this specific error (I had in the
>>> virtualbox.run recipe the nic_drv and nic_bridge commented out for
>>> troubleshooting).  I have enabled these again and now have new errors
>>> listed below.  The entire serial output listed below:
>>>
>>> NOVA Microhypervisor v7-8bcd6fc (x86_64): Jun  6 2017 12:07:06 [gcc
>> 6.3.0]
>>>
>>> [ 0] TSC:2637247 kHz BUS:1017434 kHz
>>> [ 0] CORE:0:0:0 6:f:b:0 [0] Intel(R) Core(TM)2 Duo CPU T7700  @
>> 2.40GHz
>>> Hypervisor reports 1x1 CPU
>>> Warning: CPU has no invariant TSC.
>>> CPU ID (genode->kernel:package:core:thread) remapping
>>>  remap (0->0:0:0:0) boot cpu
>>
>> You either running in a VM (looks bit like Qemu as VMM? [on XEN ?]) or
>> your CPU is really old, not to say odd. The invariant TSC is suspicious.
>> Only 1 CPU is more suspicious. According to Intel [0] it has 2 cores and
>> has hardware virtualization support (Vt-x).
>>
>> [0]
>> http://ark.intel.com/products/29762/Intel-Core2-Duo-
>> Processor-T7700-4M-Cache-2_40-GHz-800-MHz-FSB
>>
>>> [init -> vbox1] Warning: No virtualization hardware acceleration
>> available
>>> [init -> vbox2] Warning: No virtualization hardware acceleration
>> available
>>
>> Your CPU has no hardware support for virtualization. You either are not
>> running on real hardware or the feature is not turned on in your BIOS
>> (which sometimes is disabled by default by the PC vendors.)
>>
>> Cheers,
>>
>> --
>> Alexander Boettcher
>> Genode Labs
>>
>> http://www.genode-labs.com - http://www.genode.org
>>
>> Genode Labs GmbH - Amtsgericht Dresden - HRB 28424 - Sitz Dresden
>> Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth
>>
> 
> 
> 

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Genode on i.MX6

2017-07-07 Thread Alexander Boettcher
Hi Hinnerk and Yevgeny,

On 06.07.2017 03:06, Hinnerk van Bruinehsen wrote:
> On Wed, Jul 05, 2017 at 12:43:29PM +0200, Alexander Boettcher wrote:
>> Thanks to your work I could get the tool integrated into the run tool
>> infrastructure of Genode in within one day. And the best, it boots and I
>> get the serial life sign of Genode/seL4 on ARM.
> nice to hear thank it helps. I guess the next step will be to split out
> the x86 specific code from the generic parts and implement arm specific
> stuff.

this is now done, see the issue 2451 [0] and the referenced branch.

> Let me know if I can help. I'm kind of fiddling around with this for
> quite a while now.

You may now try to re-add your desired board. In theory you should just
add some *.mk files at the right places, some minor patches to the
autoconfig.h, but without actually changing (hopefully) the code of
'core' on Genode/seL4.

I'm interested to hear from you, whether my assumption is right in that
regard.

Cheers,

Alex.

[0] https://github.com/genodelabs/genode/issues/2451

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Networking Support in VirtualBox

2017-07-06 Thread Alexander Boettcher
Hi,

On 06.07.2017 21:40, Chris Rothrock wrote:
> Scratch that, I found the issue with this specific error (I had in the
> virtualbox.run recipe the nic_drv and nic_bridge commented out for
> troubleshooting).  I have enabled these again and now have new errors
> listed below.  The entire serial output listed below:
> 
> NOVA Microhypervisor v7-8bcd6fc (x86_64): Jun  6 2017 12:07:06 [gcc 6.3.0]
> 
> [ 0] TSC:2637247 kHz BUS:1017434 kHz
> [ 0] CORE:0:0:0 6:f:b:0 [0] Intel(R) Core(TM)2 Duo CPU T7700  @ 2.40GHz
> Hypervisor reports 1x1 CPU
> Warning: CPU has no invariant TSC.
> CPU ID (genode->kernel:package:core:thread) remapping
>  remap (0->0:0:0:0) boot cpu

You either running in a VM (looks bit like Qemu as VMM? [on XEN ?]) or
your CPU is really old, not to say odd. The invariant TSC is suspicious.
Only 1 CPU is more suspicious. According to Intel [0] it has 2 cores and
has hardware virtualization support (Vt-x).

[0]
http://ark.intel.com/products/29762/Intel-Core2-Duo-Processor-T7700-4M-Cache-2_40-GHz-800-MHz-FSB

> [init -> vbox1] Warning: No virtualization hardware acceleration available
> [init -> vbox2] Warning: No virtualization hardware acceleration available

Your CPU has no hardware support for virtualization. You either are not
running on real hardware or the feature is not turned on in your BIOS
(which sometimes is disabled by default by the PC vendors.)

Cheers,

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Networking Support in VirtualBox

2017-07-06 Thread Alexander Boettcher
Hello,

On 06.07.2017 20:50, Chris Rothrock wrote:
> I have a serial output available now to help isolate the issue.  Below is
> the entire output but it seems that the issue is nic_drv and nic_bridge (as
> well as log_terminal) are being denied the ROM session necessary.  Any
> thoughts as to why?

In the list of available ROM modules, the nic_bridge, the nic_drv and
the log_terminal is missing:

> :rom_fs: ROM modules:
>  ROM: [7fe07000,7fe1a7e0) acpi_drv
>  ROM: [7db6c000,7db6de6a) config
>  ROM: [7fb0f000,7fdfccf8) core.o
>  ROM: [7f8fb000,7f977cd8) device_pd
>  ROM: [7ff9d000,7ffdedd0) fb_drv
>  ROM: [00019000,0001a000) hypervisor_info_page
>  ROM: [7e89,7e8cc6d0) init
>  ROM: [7db6e000,7dc19bf8) ld.lib.so
>  ROM: [7d9db000,7db0c050) libc.lib.so
>  ROM: [7db4b000,7db53130) libc_pipe.lib.so
>  ROM: [7fa01000,7fa0fd70) libc_terminal.lib.so
>  ROM: [7fa1,7faf4d40) libiconv.lib.so
>  ROM: [7f9d9000,7fa004a0) libm.lib.so
>  ROM: [7db54000,7db6b9c8) nit_fb
>  ROM: [7db0d000,7db4a2e0) nitpicker
>  ROM: [7f99e000,7f9d8790) platform_drv
>  ROM: [7f8cd000,7f8e5cf8) ps2_drv
>  ROM: [7fdfd000,7fe066f0) pthread.lib.so
>  ROM: [7f978000,7f99de18) qemu-usb.lib.so
>  ROM: [7e878000,7e88f770) report_rom
>  ROM: [7fe1b000,7fe2ba08) rtc_drv
>  ROM: [7fe2d000,7ff9cae0) stdcxx.lib.so
>  ROM: [7e8cd000,7f8cd000) test.iso
>  ROM: [7fe2c000,7fe2cfb1) test.vbox
>  ROM: [7f8e6000,7f8fa6a8) timer
>  ROM: [7faf5000,7fb0e0a0) vbox_pointer
>  ROM: [7dc1a000,7e877678) virtualbox5-nova

Please check that the files are part of your boot_module list in your
run script and actually really got added.

Cheers,

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Networking Support in VirtualBox

2017-06-23 Thread Alexander Boettcher
Hello,

On 22.06.2017 20:29, Chris Rothrock wrote:
> Here is what I tried to fix this:
> I have increased the caps on the nic_bridge to 200
> increased the caps on the vbox1 and vbox2 to 500
> I removed the nic bridge from the config for one vbox in the virtualbox.run
> (to see if I can get video on even one)

your serial log output would tell you what goes wrong and you could fix
it (with high probably) in less then 5 minutes.

If you have some Intel vPro machine, there you me use the Intel AMT SOL
(SerialOverLine) feature to capture the log (if you managed to configure
it correctly).

In principle, without serial output (PCI serial card, Mini PCI
card/PCMCIA for notebooks, builtin UART/serial device ...) this kind of
try and error play is useless.

> Nothing I changed made any difference.  As long as enabled="true" was set,
> neither VM loaded at all.  This is booting from physical hardware, not in a
> virtualized environment.  Thoughts?

Is the network device in your native machine supported by our network
driver? lwip.run can be used for a simple test first.

I attached my serial log output of virtualbox.run with network and 2 VMs
from a oldish Lenovo X201 Thinkpad (using amtterm to get Intel AMT SOL
output.)

Regards,

>> [0] https://github.com/alex-ab/genode/commits/staging_vbox_run

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

Genode Labs GmbH - Amtsgericht Dresden - HRB 28424 - Sitz Dresden
Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth
make[1]: Leaving directory '/home/user/genode.staging/build/x86_64'
genode build completed
using 'core-nova.o' as 'core.o'
using 'ld-nova.lib.so' as 'ld.lib.so'
using 'nova_timer_drv' as 'timer'
using 'ld-nova.lib.so' as 'ld.lib.so'
spawn amttool x201-amt.test.labs reset
host x201.test.labs, reset [y/N] ? y
execute: reset
result: pt_status: success
 Warning: could not check AMT SOL redirection service because of missing wsman 
tool, --amt-tool==amttool
spawn /bin/sh -c amtterm -u admin -v x201-amt.test.labs
amtterm: NONE -> CONNECT (connection to host)
ipv4 x201-amt.test.labs [10.0.0.232] 16994 open
amtterm: CONNECT -> INIT (redirection initialization)
amtterm: INIT -> AUTH (session authentication)
amtterm: AUTH -> INIT_SOL (serial-over-lan initialization)
amtterm: INIT_SOL -> RUN_SOL (serial-over-lan active)
serial-over-lan redirection ok
connected now, use ^] to escape
Bender: Hello World.

Need 0797e000 bytes to relocate modules.

Relocating to 78682000: 

Copying 127240640 bytes...

Copying 149000 bytes...



NOVA Microhypervisor v7-2006635 (x86_64): Jun 23 2017 11:36:18 [gcc 6.3.0] 
[MBI]



[ 0] TSC:2399940 kHz BUS:10 kHz

[ 0] CORE:0:0:0 6:25:5:4 [3] Intel(R) Core(TM) i5 CPU   M 520  @ 2.40GHz

[ 1] CORE:0:0:1 6:25:5:4 [3] Intel(R) Core(TM) i5 CPU   M 520  @ 2.40GHz

[ 2] CORE:0:2:0 6:25:5:4 [3] Intel(R) Core(TM) i5 CPU   M 520  @ 2.40GHz

[ 3] CORE:0:2:1 6:25:5:4 [3] Intel(R) Core(TM) i5 CPU   M 520  @ 2.40GHz

[ 0] DMAR:0x81036078 FRR:0 FR:0x5 BDF:0:2:0 FI:0xff7fff000

Hypervisor features VMX

Hypervisor reports 4x1 CPUs

CPU ID (genode->kernel:package:core:thread) remapping

 remap (0->0:0:0:0) boot cpu

 remap (1->2:0:2:0) 

 remap (2->1:0:0:1) 

 remap (3->3:0:2:1) 

Hypervisor info page contains 41 memory descriptors:

core image  [0010,07a58000)

binaries region [00226000,07a58000) free for reuse

detected physical memory: 0x - size: 0x00089400

use  physical memory: 0x - size: 0x00089000

detected physical memory: 0x0010 - size: 0xbb17c000

use  physical memory: 0x0010 - size: 0xbb17c000

detected physical memory: 0xbb282000 - size: 0x000dd000

use  physical memory: 0xbb282000 - size: 0x000dd000

detected physical memory: 0xbb40f000 - size: 0x0006

use  physical memory: 0xbb40f000 - size: 0x0006

detected physical memory: 0xbb70f000 - size: 0x8000

use  physical memory: 0xbb70f000 - size: 0x8000

detected physical memory: 0xbb71f000 - size: 0x0004c000

use  physical memory: 0xbb71f000 - size: 0x0004c000

detected physical memory: 0xbb7ff000 - size: 0x1000

use  physical memory: 0xbb7ff000 - size: 0x1000

detected physical memory: 0x0001 - size: 0x3800

use  physical memory: 0x0001 - size: 0x3800

:virt_alloc: Allocator 0x1e76f0 dump:

 Block: [2000,3000) size=4K avail=0 max_avail=0

 Block: [3000,4000) size=4K avail=0 max_avail=0

 Block: [

Re: Genode on i.MX6Q Sabre Lite

2017-06-22 Thread Alexander Boettcher
Hi,

On 21.06.2017 21:41, lavro...@critical.com wrote:
> Yes, default_log.cc is listed in core-sel4.mk file. However, I've recently
> noticed that not all of the components listed in SRC_CC actually get to
> compile (including default_log.cc), which results in incomplete core-sel4
> library. After taking a closer look, it turned out that
> io_port_session_support.cc and io_port_session_component.cc are the source
> of this problem. I had them out commented for my sabre_lite build as
> you've previously suggested. Removing them from core-sel4.mk for
> seL4_x86_32 build gave me the same results as for sabre_lite: incomplete
> core-seL4 library

now I get the same error. You can't just uncomment it with '#', because
all followed files will _not_ be added anymore. Just remove the lines
completely. The issue here is that all files are concatenated by the '\'
at the end of each line. If you uncomment one in between, all lines (and
therefore files) below will not be compiled anymore.

> 
> Library core-sel4
> COMPILE  cpu_session_component.o
> COMPILE  cpu_session_support.o
> COMPILE  cpu_thread_component.o
> COMPILE  io_mem_session_component.o
> COMPILE  io_mem_session_support.o
> COMPILE  main.o
> COMPILE  pd_assign_pci.o
> COMPILE  pd_session_component.o
> COMPILE  pd_upgrade_ram_quota.o
> COMPILE  ram_session_component.o
> COMPILE  ram_session_support.o
> COMPILE  rom_session_component.o
> COMPILE  rpc_cap_factory.o
> COMPILE  version.o
> MERGEcore-sel4.lib.a
> 
> and the same "undefined reference" errors at the end.
> Now that I know where the problem is: what can I do from here?
> 
>>> Please check that you compile and link the
>>> file to core. Check that the symbol actually shows up as symbol in
>>> core.o, e.g. by examining the output of "readelf -s
>>> build//core/sel4/core.o".

In case it is successful, on x86 I get:

readelf -s build/x86_32/core/sel4/core-sel4.o | grep log | grep Log

 7729:  0 NOTYPE  GLOBAL DEFAULT  UND _ZN6Genode3Log3logEv

Here you see the symbol part of core.o.


-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Genode on i.MX6Q Sabre Lite

2017-06-19 Thread Alexander Boettcher
Hello,

On 16.06.2017 08:39, Yevgeny Lavrov wrote:
> Are there any suggestions on what might be causing linking between seL4 and
> Genode to fail?
> It fails once it reaches /tool/run/run: proc build_core {lib
> modules target link_address} with "undefined reference" errors.

Which "undefined references" ? If it is still the Log* methods, see below.

> Do I need to add bootstrap to my build? The similar way it is done when
> compiling Genode with hw kernel?
> I would really appreciate any suggestions or ideas on where to look.

no, bootstrap of hw is a wrong direction. (It's specific for hw and
can't be used with any other kernel.)

>> genode build completed
>> using 'ld-sel4.lib.so' as 'ld.lib.so'
>> using 'sel4/core.o' as 'core.o'
>> core/sel4/core.o: In function `error> (&)[18], void*&, char const (&)[35], void*, char const (&)[2]>':
>> ../genode-17.02/repos/base/include/base/log.h:131: undefined reference to
>> `Genode::Log::log()'
>> core/sel4/core.o: In function `warning> (&)[21], char const*, char const (&)[31]>':
>> ../genode-17.02/repos/base/include/base/log.h:119: undefined reference to
>> `Genode::Log::log()'
>> core/sel4/core.o: In function `error> Genode::Avl_node_base*&, char const (&)[22]>':
>> ../genode-17.02/repos/base/include/base/log.h:131: undefined reference to
>> `Genode::Log::log()'
>> ...

Log::log, e.g., is implemented in repos/base/src/lib/base/default_log.cc
and normally compiled by repos/base-sel4/lib/mk/core-sel4.mk.

It seems that it is missing. Please check that you compile and link the
file to core. Check that the symbol actually shows up as symbol in
core.o, e.g. by examining the output of "readelf -s
build//core/sel4/core.o".

Cheers,

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Networking Support in VirtualBox

2017-06-19 Thread Alexander Boettcher
Hello,

On 16.06.2017 20:20, Chris Rothrock wrote:
> I'm working with the VirtualBox run recipe where I have set use_net 1,
> added the repositories for dde_linux and dde_ipxe for the NIC driver.  The
> build runs successfully and I can boot to the 2 virtual machines (I have
> one as TinyCore and one as DSL - Damn Small Linux) and interact with the
> OS's but there is no network adapter detected.  To resolve this, I set the
> Adapter 0 to enabled in the test.vbox file but when I do this, I no longer
> get any video within the frame for the virtual machine (not even the
> bootloader for that frame).  I have tried increasing the cap for the
> virtualbox module in the virtualbox.run recipe but still have nothing.  I
> need to be able to test network communication between the two virtual
> machines (and to the wider network on which they are attached) but this is
> preventing me from this process.  Any help in this would be greatly
> appreciated.

please try the commit named "virtualbox.run: support network for
multiple VMs" of [0].

Mainly, the configuration used in test.vbox is wrong for Genode and in
the virtualbox.run script a Network multiplexer is missing, to run 2 VMs
with network.

[0] https://github.com/alex-ab/genode/commits/staging_vbox_run

Hope it helps,

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Bender cannot relocate

2017-06-09 Thread Alexander Boettcher
Hello,

may you please try to cherry-pick the commit [0] (currently on staging
for testing).

Does it help ?

Cheers,

Alex.

[0]
https://github.com/genodelabs/genode/commit/4062c63afe7241272cbddc269d88f6a9c0a8308c

On 09.06.2017 07:28, Nobody III wrote:
> When I try to run arora on Genode (tried with both nova and hw) in Qemu,
> even with plenty of ram (-ram 4096), I run into the following error:
> 
> spawn qemu-system-x86_64 -machine type=pc,accel=kvm -display sdl -cpu
> core2duo -vga cirrus -net nic,model=e1000 -net user -serial mon:stdio
> -cdrom var/run/arora.iso
> warning: host doesn't support requested feature: CPUID.01H:EDX.ss [bit 27]
> Bender: Hello World.
> Modules might overlap.
> Relocate to f4, but module at 00226000-072a0b17.
> Cannot relocate.
> phdr 20+1e70 overlaps with module 201000-225078 200d+25'/hypervisor
> iommu serial novpid novga'
> 
> Exit with status 1.
> Rebooting...
> 
> I haven't tested x86_32, given how long it takes to compile Qt, so I don't
> know whether the issue is just for x86_64 or for all x86.
> 
> Any ideas on what's going wrong and how to fix it?
> 
> 
> 
> --
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> 
> 
> 
> ___
> genode-main mailing list
> genode-main@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main
> 

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Genode OS Framework version 17.05 released

2017-06-07 Thread Alexander Boettcher
Hello,

On 06.06.2017 23:02, Chris Rothrock wrote:
> The AMD issue aside, with 17.05 I can't get VirtualBox to work at all now.
> I have tried clean download and compiles but after the boot process, the
> VirtualBox module is now not displaying anything.  I have tried with and
> without the gui, VirtualBox 4 and 5, all with the same results on hardware
> that was working with 16.08.

may you please try [0], which fixes some configuration issues on 17.05
for virtualbox.run on native hardware for me. Tinycore runs fine for me
with vbox4 and vbox5.

Still, the adjusted quotas may be too low, depending on the hardware you
use.

Hope it helps.

[0]
https://github.com/alex-ab/genode/commit/5a1fbe0c31262273d07ae07c96fdd70de8fe21bc

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: lighttpd.run

2017-05-10 Thread Alexander Boettcher
Hello,

On 09.05.2017 09:30, Baconicsynergy wrote:
> Hello! I've successfully compiled lighttpd.run on both seL4 and NOVA and set 
> a static ip in the  node as described in an earlier mailing list post.
> 
> The lighttpd server runs perfectly under qemu! But when I burn the iso to a 
> usb and attempt to boot from virtualbox and a variety of different hardware 
> devices, it gets stuck at the original "Genode on sel4".boot_ and I'm 
> just left with a blinking cursor after boot. Am I missing something?

if I understand you correctly, that you try to run the iso in
Virtualbox, check that you have the I/O APIC enabled and the serial
device enabled to "see" actual something.

Hope it helps,

Alex.
-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Grub2 efi files

2017-05-03 Thread Alexander Boettcher
Hi,

On 03.05.2017 15:55, Johannes Kliemann wrote:
> Hi Alex,
> 
> how have you built the efi files for grub2? I tried to build them from
> master and from the commit you used in Genode [1].
> If I run configure with --with-platform=efi some headers are missing for
> the build and if I configure without it grub-mkimage fails with error:
> no symbol table.
> 

below are the notes I have taken during building the grub2 efi files,
hope they are helpful.


Cheers,

Alex.



git clone git://git.savannah.gnu.org/grub.git grub.git
commit 972765fe8245cdf44d465329f33b5aa9ac6c2f47 (12.1.2017)

cd grub.git
./autogen.sh


export EFI_ARCH=x86_64
./configure --prefix=/home/alex/grub2/install64 --with-platform=efi
--target=${EFI_ARCH}

or

export EFI_ARCH=i386
./configure --prefix=/home/genode/grub2/install32 --with-platform=efi
--target=${EFI_ARCH}


make
make install


install64/bin/grub-mkimage -O x86_64-efi -d
install64/lib/grub/x86_64-efi -o grub2_64.efi part_msdos iso9660
part_gpt ext2 multiboot multiboot2 fat normal configfile setpci lspci
serial -p "/boot/grub"

or

install32/bin/grub-mkimage -O i386-efi -d install32/lib/grub/i386-efi -o
grub2_32.efi part_msdos iso9660 part_gpt ext2 multiboot multiboot2 fat
normal configfile setpci serial -p "/boot/grub"


-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: VirtualBox subsystem on reconfigurable init

2017-04-28 Thread Alexander Boettcher
Hello,

On 28.04.2017 15:24, Martijn Verschoor wrote:
>   
> + 
> + 
> + 

I think this is not good. The sub-init gets started on the highest
possible priority(band) - you need at least priority="-2" here (as it
was for the virtualbox instance beforehand.

(You may also enable in your run script cpu_monitor variable to see who
get what part of the CPU share).

Hope it helps,

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: compiling genode with Virtual box tiny core Linux

2017-04-26 Thread Alexander Boettcher
Hello,

On 25.04.2017 11:08, Janardhan wrote:
> From: Christian Helmuth <christian.helm...@genode-labs.com>
>
> From this little information, it is hard to identify the cause of the
> issue. Please always provide thorough information about your test
> scenario including used hardware platform resp. Qemu version, make
> command line, and complete log output.

as written already by Christian, there are still information missing to
make a useful guess:

- which Qemu version you are using (beginning with 2.5 until 2.8 there
are known issues)
- which Genode (release/master/staging .. branch) you are using
- which Tinycore image (core/tinycore/coreplus) and which version
7.1,7.2, 8.* you are using ...

Beside all that missing information, running this setup in Qemu is at
this point of no real value to you (especially if it happen that you
running your Qemu on your developer Linux distro as VM).

You would need to have a patience of a saint until it boots to a usable
state.

Just copy the generated iso (build/x86_*/var/run/*.iso) to your favorite
usb stick (via dd) and boot it on some Intel based test machine.

Cheers,

Alex.

> 
> Greets
> --
> Christian Helmuth
> Genode Labs
> 
> https://www.genode-labs.com/ · https://genode.org/
> https://twitter.com/GenodeLabs · /ˈdʒiː.nəʊd/
> 
> Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden
> Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth
> 
> --
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> ___
> genode-main mailing list
> genode-main@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main
> 
> 
> 
> --
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> 
> 
> 
> ___
> genode-main mailing list
> genode-main@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main
> 

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Nova demo with GUI

2017-04-20 Thread Alexander Boettcher
Hello,

On 20.04.2017 15:43, Chris Rothrock wrote:
> In the release notes of Genode version 14.02 there is a screenshot of a GUI
> environment that has two VirtualBox windows, one running TinyCore, one
> running Windows 7 (https://genode.org/documentation/release-notes/14.02).

actual no - not two VirtualBox instances. As written in the text and
below the picture, it is running:

- Tinycore managed by the Seoul VMM
- and Windows 7 managed by the VirtualBox-4 VMM

on top of the micro-hypervisor NOVA.

> How do I reproduce this example?  

We have no ready-to-use run script for this scenario anymore, I fear.
One would have to create such a run script again (and maintain it ...).

> When I run the make run/virtualbox demo
> there is no GUI (until I get into one guest OS GUI, TinyCore), there is
> only a text-based boot environment then the hand-off to VirtualBox in that
> text environment.

The virtualbox.run script mainly exists to showcase the simplest
possible VM scenario (without [mostly] any fancy stuff - even no GUI).
We use it mainly for very tiny VMs like Tinycore ISO or Genode ISOs.

> I need to be able to successfully boot up into that GUI
> environment and demonstrate two distinct VM's are running.  Any assistance
> in this effort would be greatly appreciated.

In repos/port/run/ you may find several flavors of vbox*.run scripts,
which are executed every night on our test machines.

One specific scenario is called vbox*_multiple.run, which starts on our
test machine 6 Win7 VMs in parallel and has also some really simple GUI
setup (nitpicker - so no window manager, no decorations etc.).
However the run script is non-trivial, it expects the machine well
prepared (ahci hard disk, right partition scheme, win7 vdi names,
overlay vdi names, correct uuid of the vdis and so on and so on).

There are of course several seoul*.run scripts in reports/port/run to
start VMs via the Seoul VMM - seoul-fancy.run also contains some simple
GUI and multiple VM setup.

And as last option I have the virtualbox.run script [0] bit extended to
start 2 VBox VMMs using the same ISO image for the VMs with
nitpicker/nit_fb. I did not tested it throughly, but it comes up in Qemu
at least for me. Maybe it can serve as starting point. (set the use_gui
variable to 1 to get two VMs).

Cheers,

Alex.

[0]
https://github.com/alex-ab/genode/commit/955d9ea638437e974ebd8e058f6237b3add2f3c7
-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Now: Understanding Muen and base_hw kernel from docs, [Earlier] Re: Problem with make run/demo ....

2017-04-19 Thread Alexander Boettcher
Hi,

On 18.04.2017 20:44, Nobody III wrote:
> By the way, NOVA doesn't seem to be maintained anymore, except a bit by
> Genode developers. Is this observation correct?

the version of NOVA shipped with Genode is very well maintained. This
kernel derivate (compared to the original version of the original
author) got extended by various features (read the Genode book) which
are essential to run smoothly with Genode. Calling this a 'bit' is
plainly wrong. Maybe we don't advertise it all over the day, but it is
the kernel with the best/most supported feature set on Genode/x86.

Cheers,

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Genode, seL4 and VirtualBox

2017-04-18 Thread Alexander Boettcher
Hello,

On 18.04.2017 18:09, Chris Rothrock wrote:
> Let me first start off with saying that Genode, Nova and VirtualBox works
> flawlessly - I can boot (an Intel-based machine) and go into either a
> command line or GUI environment.  The problem is when I try using seL4.  I
> can compile this without any errors.  The ISO image is made perfectly, it
> boots to this image on the same hardware - but that's where it stops.  One
> time only I was able to see the loading screen of TinyCore Linux within
> VirtualBox but the boot time for this took about 45 minutes and I was
> unable to reproduce this boot.

what you are executing is Virtualbox without any hardware assisted
virtualization support. Mainly you were running Virtualbox just with the
module called "Recompiler" (REM), which is based on some older Qemu version.

Solely Genode/hw on Muen (32bit VM, one vCPU) and Genode/NOVA (32/64 bit
VMs and multiple vCPUs) are supported on x86 with full hardware assisted
virtualization (Intel's VT-x).

> I guess my first question is this - does seL4 have the necessary
> virtualization support for this module?

No, afaik. The supported version of Genode/seL4 is based on seL4 3.2.0.

According to [0] and [1] the required virtualization features for x86
got added later to seL4 master. Probably seL4 4.0 have the required
support, if I'm not mistaken.

> If so, how can I make this work reliably?

Without updating Genode/seL4 to a recent seL4 kernel version - as first
step - I think you can't. So, in principle all the limitations as
mentioned in the 16.08 Genode release for our Genode/seL4 support still
apply [2].

[0] https://sel4.systems/pipermail/devel/2016-December/001161.html
[1] https://sel4.systems/Info/Roadmap/
[2] https://genode.org/documentation/release-notes/16.08#Limitations


Regards,

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Genode on i.MX6Q Sabre Lite

2017-04-03 Thread Alexander Boettcher
Hi,

On 03.04.2017 04:49, Yevgeny Lavrov wrote:
> This did the trick and sd_card_bench successfully executed :)

Good !

> On seL4 side I got this far:
> The error occurs once the build process hits one of the files within this
> directory: base-sel4/src/core and these files appear to be Genode specific.
> I was able to clear out errors that are caused by wrong object types, but I
> hit dead end once I reach io_port_session_support.c

io_ports are a speciality on x86, so on ARM you have to skip the
io_port* files completely. (On base-hw, which runs x86 and arm, look
there into the mk files, where the io_port* files depended on the
platform are added or not).

Cheers,

Alex.

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: noux_bash + gcc

2017-04-03 Thread Alexander Boettcher
Hello,

On 02.04.2017 18:21, Humblenoob wrote:
> My ideal system that I would like to create in the meantime would be 
> noux_bash with gcc, g++, and make. How would I suppliment the existing 
> noux_bash.run script to include these packages?

have a look into the following scripts: noux_tool_chain_auto.run,
noux_tool_chain_foc.run and noux_tool_chain_nova.run.

They already setup gcc, g++, make in noux in order to compile
Genode/core in base-hw/base-foc/base-nova. The script don't contain
everything to build all, but they are at least a starting point to get
an idea.

Cheers,

Alex.

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Genode on i.MX6Q Sabre Lite

2017-03-30 Thread Alexander Boettcher
Hi,

On 29.03.2017 15:06, Martin Stein wrote:
>> And if it is possible, can you please suggest me a starting point for
>> Genode/seL4 on i.MX6? I'm currently going through files in
>> repos/base-sel4 directory and trying to make sense out of it. I'm still
>> quite new to ARM platforms, as well as Genode and seL4 kernel, so I
>> would greatly appreciate any thoughts or ideas of where to begin.
> 
> Unfortunately, I'm not that familiar with base-sel4. Maybe someone else
> can answer this?

Look for any x86 specific configuration/files in base-sel4 and come up
with imx6 specific ones, I would guess. E.g. if you search for x86* you
find in

repos/base-sel4/lib/mk/spec/x86_32

several files which setup the sel4 kernel for x86 (build the sel4
kernel, sel4 kernel bindings etc.). This must be (probably) also added to

repos/base-sel4/lib/mk/spec/imx6/

(somehow similar as base-hw does).

For example in repos/base-sel4/lib/mk/spec/x86_32/kernel-sel4.mk the
seL4 kernel is build for x86_32. Here you have to come up with a
kernel-sel4.mk in the imx6 folder which builds the sel4 kernel for
imx6/Sabre lite. How this is exactly is done, you have to check the
documentation of seL4.

Cheers,

Alex.

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Thinkpad X250 vs X260 ?

2017-01-17 Thread Alexander Boettcher
Hello,

On 14.01.2017 22:51, Peter Lindener wrote:
> I was ready to give it a try, when I also noticed reliance on the VESA
> video...
> my DELL XPS 15 (32gig) boots in UEFI mode..

we had never official UEFI support in Genode - it's not expected to work
out-of-the-box that way.

> this boot image is seeming dated, running in 32bit mode... am I missing
> somethng here?

At the time of integrating Genode with seL4 (version 3.2 [0]) there was
simply solely 32 bit support available in the seL4 master branch - so -
no surprise at all. 64 bit support is available with seL4 4.0 [1].

Cheers,

Alex.

[0] https://wiki.sel4.systems/seL4%203.2.0
[1] https://wiki.sel4.systems/seL4%204.0.0


-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com · http://genode.org

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

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Assigning PCI device to device_pd

2016-11-22 Thread Alexander Boettcher
Hi,

On 22.11.2016 00:54, Alexander Senier wrote:
> gets called for 0:2:0. The only place I see where assign_device() is used in 
> the code, is in config_write() when writing PCI_CMD_DMA to
> PCI_CMD_REG. However, when doing such a config_write() manually in my 
> component, I get an Out_of_metadate exception. How can I assign the PCI
> device to my drivers device_pd?

by calling config_write() successfully ;-). You have to handle the
Out_of_metadata exception and then the assignment will succeed. Just
look into the other drivers as this is handled there, e.g.

https://github.com/genodelabs/genode/blob/master/repos/os/src/drivers/ahci/spec/x86/platform.cc#L101

Cheers,

Alex.

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com · http://genode.org

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

--
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Linking genode processes at different address space

2016-10-18 Thread Alexander Boettcher
On 18.10.2016 11:16, Parfait Tokponnon wrote:
> My real problem is this :
> When an EC (Execution Context) traps into the kernel, how the kernel can
> know which component it belongs to or which component originates this trap,
> and when the kernel, returning to userspace, elects an EC, which component
> this EC belongs to. I would like to get from the kernel at runtime the
> component an Ec belongs to. Is it Possible?

You will need to add your own support code in the kernel and Genode/NOVA
to correlate things.

If you haven't yet a fully high dynamic setup, I would advise to enable
in the kernel the debug output in the beginning of

sys_create_ec
sys_create_pd

and accordingly in Genode add debug output of the names of the process
and thread before all occurrences of

create_ec
create_pd

in repos/base-nova.

With the information you are able to correlate EC and PD pointers in the
kernel with Genode names for the process and threads.

Hope it helps,

Alex.
-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com · http://genode.org

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

--
Check out the vibrant tech community on one of the world's most 
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Genode 16.08 nova.iso rebooting on real Core 2 Duo after relocating modules

2016-09-22 Thread Alexander Boettcher
Hello,

we use as a chained-boot loader bender[0], which relocates the boot
modules before the NOVA kernel actually starts. You may try to remove it
and see whether this changes things. For this you have to edit in

/tool/run/boot_dir/nova

the lines where bender is used and make the hypervisor the first entry.

Than recompile some simple setup like printf.run and start it on your
target machine. If you don't see any serial messages anymore, you may
have to add the i/o ports of your serial device manually to the NOVA
kernel source code [1]. Bender has also now a option 'norelocate' as
used for sel4 [2], which you may also try.

Cheers,

Alex.

[0] tool/boot/README
[1] contrib/nova-/src/kernel/nova/src/console_serial.cpp
[2] /tool/run/boot_dir/sel4

On 22.09.2016 00:48, Paul Dufresne wrote:
> 2016-09-21 8:20 GMT-04:00 Christian Helmuth 
> <christian.helm...@genode-labs.com>:
>>> Need 05df2000 bytes to relocate modules.
>>> Relocating to 7980d000:
>>> Copying 483168 bytes...
>> [...]
>>> Copying 114820 bytes...
>>
>> If my calculations from this output are correct the boot modules cover
>> RAM from 0x7980d000 to 0x7f5e9000. Maybe there's a collision in this
>> region?
>>
>>> paul@arcturus:~$ cat /proc/meminfo
>>> MemTotal:2041768 kB
>>
>> Could you please compare the region above against
>>
>>   cat /proc/iomem'
>>
>> and check if it fits completely into "System RAM"?
> Ehhh... At first I thought there was a problem... but i think it goes
> just before ACPI Non-volatile Storage
> 0010-7f5ffbff : System RAM
>   0100-015cb5d4 : Kernel code
>   015cb5d5-01b10aff : Kernel data
>   01c67000-01d34fff : Kernel bss
> 7f5ffc00-7f601bff : ACPI Non-volatile Storage
> 7f601c00-7f603bff : RAM buffer
> 7f603c00-7fff : reserved
>   7f80-7ff7 : Graphics Stolen Memory
> 
> It sure looks like a Nova bug (had time to load modules, but not to
> show Nova welcome message).
> In src/init I see:
> void init (mword mbi)
> {
> // Setup 0-page and 1-page
> memset (reinterpret_cast(_0), 0, PAGE_SIZE);
> memset (reinterpret_cast(_1), ~0u, PAGE_SIZE);
> for (void (**func)() = _G; func != _E; (*func++)()) ;
> Hip::build (mbi);
> for (void (**func)() = _C; func != _G; (*func++)()) ;
> // Now we're ready to talk to the world
> Console::print ("\fNOVA Microhypervisor v%d-%07lx (%s): %s %s [%s]\n",
> CFG_VER, reinterpret_cast(_VER), ARCH, __DATE__, __TIME__,
> COMPILER_STRING);
> Idt::build();
> Gsi::setup();
> Acpi::setup();
> Console_vga::con.setup();
> Keyb::init();
> }
> 
> I believe Hip::(build(mbr) reads the module, and I suppose do the
> relocations shown.
> 
> I am thinking about adding some Console::print inside the loop:
> for (void (**func)() = _C; func != _G; (*func++)()) ;
> which I barely understand as calling each functions in an array of
> Constructors (CTORS_C).
> 
> Wish I would knew where CTORS_C is defined, but I guess I need not to know.
> I am not so good with coding... so it might be just to the limit of my
> abilities to do and test that.
> 
> --
> ___
> genode-main mailing list
> genode-main@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main
> 


-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com · http://genode.org

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

--
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: VirtualBox on Genode

2016-09-10 Thread Alexander Boettcher
Hello,

On 09.09.2016 18:29, Chris Rothrock wrote:
> Neither of the two machines I have tried this on have a native serial
> port.  Will a USB to serial connection work or will I need to add the
> dde_linux component for the USB drivers?

No, this is not going to work.

You may check whether the machines support Intel AMT in your UEFI/BIOS.
It provides a feature called SOL (SerialOverLan) with that you can route
the serial output to some other machine.

Otherwise you will need some PCI/Serial card for your desktop/server
machines or for notebooks there are mini PCIe cards if you have such a slot.

Alex.

> On Fri, Sep 9, 2016 at 12:15 PM, Alexander Boettcher <
> alexander.boettc...@genode-labs.com> wrote:
> 
>> Hello,
>>
>> On 09.09.2016 17:38, Chris Rothrock wrote:
>>> I am working with Yevgeny on this part of the project and I am having the
>>> same issue.  I know that running it through the QEMU emulator probably
>>> won't work so I used the virtualbox.iso image and put it onto my bootable
>>> USB stick.  This is the same stick that I have the Genode demo with a
>> Nova
>>> kernel running perfectly fine on, I have booted multiple machines with
>> this
>>> demo image, however the virtualbox ISO image boots, but does not load the
>>> tinycore image properly - it hangs on booting to the VirtualBox machine
>> in
>>> the Genode environment.
>>
>> can you please provide/look at the serial output of the native machine,
>> in order to get an idea of what went wrong. Without it will be hard to
>> tell.
>>
>> Cheers,
>>
>> Alex.
>>
>> 
>> --
>> ___
>> genode-main mailing list
>> genode-main@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/genode-main
>>
> 
> 
> 
> 
> 
> ------
> 
> 
> 
> ___
> genode-main mailing list
> genode-main@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main
> 


-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com · http://genode.org

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

--
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: VirtualBox on Genode

2016-09-05 Thread Alexander Boettcher
Hello,

On 05.09.2016 10:05, Yevgeny Lavrov wrote:
> while testing it via Qemu, I ran into the following issue: once Tinycore
> Linux reaches "Booting the kernel" phase, it hangs, and the following msg
...
> [init -> virtualbox] Using SVM virtualization extension.
...
> [init -> virtualbox] fb resize : 2560x1600@16 -> 720x400@0
> [init -> virtualbox] fb resize : 720x400@16 -> 640x480@32
> [init -> virtualbox] fb resize : 640x480@16 -> 720x400@0
> [ 0] Killed EC:0x83282b80 SC:0x83219740 V:0x7f
> CR0:0x80050033 CR3:0x76 CR4:0x0 (PT not found)

running Virtualbox inside Qemu is not supposed to work well.
Additionally the SVM (AMD virtualization extension) emulated by Qemu is
not tested nor maintained by us. So you should run it on native Intel
hardware.

Additionally, if your Linux distro with Genode is running as a VM this
also causes reliable trouble (e.g. Genode VM -> qemu ->
VirtualBox/Genode - Tinycore Linux)

> I've also attempted to create bootable USB from virtualbox.iso via dd.
> While on boot, I got the following msg
> 
> HDD EBIOS
> isolinux.bin missing or corrupt

Just guessing:
- either the image got not correctly to the USB stick
- your BIOS/UEFI does not like your USB stick or has trouble in the USB
boot emulation

Try another USB stick or on another native machine or sometimes
switching the USB ports (on a USB 2 port instead of USB 3) may help.

Alex.

--
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: VirtualBox on Genode

2016-09-02 Thread Alexander Boettcher
Hello,

On 02.09.2016 00:04, Yevgeny Lavrov wrote:
> 1) Where should I put Tinycore Linux .iso file? It says save it as
> bin/test.iso in the similar thread "running VirtualBox on Genode" on Genode
> mailing lists. Is it /build/nova_x86_64/bin directory that gets

Yes.

> 2) Where should I add  " file="/iso/test.iso"/>" ?

Not needed, see below.

> 3) Where to execute make run/virtualbox? I assume it's my build directory.

Yes, call in your build directory, /build/nova_x86_64,

make run/virtualbox

> However, executing it in my build directory results in Error: no run script
> for virtualbox.

The effectively used run script is located in
$(GENODE_DIR)/repos/ports/run/virtualbox.run, so you have to add also
the "ports" directory to your build.conf file.

So do the same as with "libports", in your words:

uncommented REPOSITORIES += $(GENODE_DIR)/repos/ports line in
/build/nova_x86_64/etc/build.conf


Cheers,

Alex.

--
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: porting python in tz_vmm demo

2016-08-01 Thread Alexander Boettcher
Hello,

On 29.07.2016 01:09, Abhay Amala wrote:
> interpreter works fine now but I don't understand what is "*int
> _sigaction(int, const sigaction*, sigaction*): _sigaction not implemented*"
> message? Does anyone have any idea? Thanks in advance for your answers.
> 
> [init -> test-python] int _sigaction(int, const sigaction*, sigaction*):
> _sigaction not implemented

some code in python _probably_ calls the libc signal() function which
calls in our ported libc _sigaction().

The function is, as written, not implemented - that means everything
which requires signal support in python will not work.

Alex.


--
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Heeselicht scenarion, cannot launch linux vm

2016-07-06 Thread Alexander Boettcher
Hello,

On 05.07.2016 21:42, Parfait Tokponnon wrote:
> unresolvable exception 3, pd 'init -> cli_monitor -> linux -> vbox', thread
> 'EMT-1', cpu 0, ip=0x1103ca5, no signal handler

some assertion triggered in Virtualbox. The output of Virtualbox is
routed to the terminal_log 'log' server and not to the output of core,
which you posted above that you got via the serial connection.

Simply start the noux subsystem and look into the /shared/log file,
there you will see more verbose messages from Virtualbox and what went
wrong.

Cheers,

Alex.


--
Attend Shape: An AT Tech Expo July 15-16. Meet us at AT Park in San
Francisco, CA to explore cutting-edge tech and listen to tech luminaries
present their vision of the future. This family event has something for
everyone, including kids. Get more information and register today.
http://sdm.link/attshape
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Turmvilla 16.05 on Lenovo x250

2016-07-04 Thread Alexander Boettcher
On 04.07.2016 14:48, Martijn Verschoor wrote:
> Hi,
> 
> Thanks Alex, your magic fix helps me a bit further.

Not magic - more or less careless to use a fixed sized allocator instead
of a dynamic allocator ... you may open a github issue for that ;-)

> Now the Turmvilla scenario boots and I can start noux. In noux however, ls 
> and other tools cannot be found. See the log attached. An illustration of 
> this is:
> 
> bash-4.1# ls
> bash: /bin/ls: No such file or directory
> bash-4.1 # cd bin
> bash-4.1 # ls
> bash: /bin/ls: Argument list too long
> 
> I’ll need some more time to investigate this. Of course suggestions are 
> welcome.

Route your log messages of noux to core instead to the terminal_log - to
see the actually error messages via serial output. Could it be that you
maybe did not rebuild the noux packages ?

Cheers,

Alex



signature.asc
Description: OpenPGP digital signature
--
Attend Shape: An AT Tech Expo July 15-16. Meet us at AT Park in San
Francisco, CA to explore cutting-edge tech and listen to tech luminaries
present their vision of the future. This family event has something for
everyone, including kids. Get more information and register today.
http://sdm.link/attshape___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Turmvilla 16.05 on Lenovo x250

2016-07-04 Thread Alexander Boettcher
Hi,

On 04.07.2016 12:11, Martijn Verschoor wrote:
> This weekend I tried to upgrade my Lenovo x250 Turmvilla system to Genode 
> 16.05 using Norman’s turmvilla-16.05 topic branch. I built the turmvilla.run 
> script as is, without modifications. In contrary to the turmvilla-16.02 
> branch, I do encounter some problems with turmvilla-16.05.
> 
> During bootup the system stalls displaying the “Copying xxx bytes” messages.
> 
> The log is inserted below. I see a lot of similarities with parfito’s HP logs 
> for the Heeselicht scenario 
> (https://github.com/genodelabs/genode/issues/2018), but in my case the new 
> acpica component reports "AcpiOsMapMemory:271 called - dead”. At fist sight 
> this function seem implemented (in acpica/iomem.cc).
> 
> Based on the log below, can anyone hint me at what might be the problem?

try to increase Acpica::Io_mem::_ios array to 32 Elements in
acpica/iomem.cc.

Cheers,

Alex.

--
Attend Shape: An AT Tech Expo July 15-16. Meet us at AT Park in San
Francisco, CA to explore cutting-edge tech and listen to tech luminaries
present their vision of the future. This family event has something for
everyone, including kids. Get more information and register today.
http://sdm.link/attshape
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Feather: A very lightweight web service for Genode platforms.

2016-06-17 Thread Alexander Boettcher
Hi,

On 16.06.2016 22:06, Guido Witmond wrote:
> - with Nova, I don't see the serial console output, however, it serves
> pages just as fast as FOC; any ideas how to configure it to get the Nova
> console output?

please try to add the following patch (see steps below) to your foc
build directory and re-run. You should get some message of the form:

...
using comport xxx

L4 Bootstrapper
...

What does the comport is in your case ?

If it is 1,2,3 or 4 then the io_ports are 0x3f8, 02f8, 0x3e8, 0x2e8 -
otherwise the shown value is already the io_port.

The i/o port value you may add manually to the nova kernel in
contrib/nova-/src/kernel/nova/src/console_serial.cpp in
Console_serial(). Set "base" to your value and remove the if base statement.

Does it help ?

Cheers,

Alex.




Step 1: patch foc

In genode/contrib/foc-/src/kernel/foc apply the patch:

patch -p1 < foc.patch

Step 2: remove bootstrap code in foc build directory manually

rm -rf genode/build/diff --git a/l4/pkg/bootstrap/server/src/platform/x86_pc.cc b/l4/pkg/bootstrap/server/src/platform/x86_pc.cc
index 2e66c73..1863bd4 100644
--- a/l4/pkg/bootstrap/server/src/platform/x86_pc.cc
+++ b/l4/pkg/bootstrap/server/src/platform/x86_pc.cc
@@ -624,6 +624,8 @@ public:
 
 if (init_uart(comport, comirq, ))
   printf("UART init failed\n");
+else
+  printf("using comport %x\n", comport);
   }
   }
 


signature.asc
Description: OpenPGP digital signature
--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports. http://sdm.link/zohomanageengine___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: seoul-disc

2016-06-10 Thread Alexander Boettcher
Hi,

On 07.06.2016 06:09, 朱可 wrote:
> i am from china, i love Genode, I use Genode/Nova for running my  ISO(it is 
> an OS similar wiht vxworks)on seoul

Seoul have no support to run OSes directly from a ISO image, see [0] for
options you have. Alternatively you may use VirtualBox on Genode/Nova,
which supports ISO images.

> I read the maillist,and I want to using run/seoul-disc to do this ,but it 
> failed,is  there  relevant documents to illustrate how to use? i do not know 
> how to do it

No, there are no manuals regarding Seoul - but you may ask questions.

Please provide some more detailed information - like on which Genode
release/master revision you are working, whether you run your Setup
natively on hardware or in a VM, what exactly you have tried/done and
what did not work, e.g. logs of your run or at best a git branch with
your image on github.

Cheers,

Alex.

[0] https://sourceforge.net/p/genode/mailman/message/34435308

> 
> 
> 
> --
> What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
> patterns at an interface-level. Reveals which users, apps, and protocols are 
> consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
> J-Flow, sFlow and other flows. Make informed decisions using capacity 
> planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
> 
> 
> 
> ___
> genode-main mailing list
> genode-main@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main
> 


--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: 16.05 printf test does not build for Cortex A9.

2016-05-30 Thread Alexander Boettcher
Hi,

On 30.05.2016 18:45, Bob Stewart wrote:
>  It appears that the 16.05 build uses a new environment parameter 
> BASE_HW_DIR, which cause a build on a Cortex A9 based platform to fail 
> in lib/mk (that is, base-hw/lib/mk/spec/cortex_a9.h)

> BASE_HW_DIR := $(REP_DIR)
> 
> But why is it necessary to have this new variable?

see https://github.com/genodelabs/genode/pull/1955 to find a explanation.

Cheers,

Alex.


--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: x86 Genode missing modules

2016-05-18 Thread Alexander Boettcher
Hello,

On 17.05.2016 19:26, Chris Rothrock wrote:
> I have built Genode with the Nova microkernel and am able to get my grub2
> to boot to the build, however it appears that there are two modules missing
> from the compile I was able to build - bootloader and pci_drv.

Which Genode version do you using ? "pci_drv" is obsolete and not used
anymore since some releases. Which "run" script did you use or do you
just manually setup some scenario ?

"bootloader" is no module used by Genode/Nova - where do you get this from ?

Genode/Nova will make no output to the screen (beside the initial kernel
messages), unless you use some graphical scenario (like Nobody III
already hinted). For non graphical Genode/Nova scenarios you will have
to connect a serial/UART cable to the target machine to get some output.

Cheers,

Alex.
  Without
> these modules, the hypervisor boots but gets hung at displaying the
> processor information, never a command prompt.  Is there something in the
> compile I need to set to get these two modules to compile with the rest of
> Genode?
> 
> 
> 
> --
> Mobile security can be enabling, not merely restricting. Employees who
> bring their own devices (BYOD) to work are irked by the imposition of MDM
> restrictions. Mobile Device Manager Plus allows you to control only the
> apps on BYO-devices by containerizing them, leaving personal data untouched!
> https://ad.doubleclick.net/ddm/clk/304595813;131938128;j
> 
> 
> 
> ___
> genode-main mailing list
> genode-main@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main
> 


--
Mobile security can be enabling, not merely restricting. Employees who
bring their own devices (BYOD) to work are irked by the imposition of MDM
restrictions. Mobile Device Manager Plus allows you to control only the
apps on BYO-devices by containerizing them, leaving personal data untouched!
https://ad.doubleclick.net/ddm/clk/304595813;131938128;j
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Bare bones child process creation.

2016-03-30 Thread Alexander Boettcher
Hello,

On 30.03.2016 19:16, Daniel Waddington wrote:
> I'm trying to do bare bones process creation without using the Child or
> Process helper classes (I'm toying around with serialization ideas).  I
> tried to construct something similar to
> http://genode.org/documentation/architecture/process
> but I can't seem to get it to work (error = exception base not specified on
> nova32).

Some base-* platforms implement the startup of threads slightly
differently than described, e.g. base-foc [0] and base-nova [1]. If you
really want to have portable code, you should stay with the thread
implementation of the base library as we provide per base-* platform.

Nevertheless - I presume, that you already try to bring up a second
thread (in this case the message can be printed) and that you are
missing a call to cpu_session->state() (see Thread_base::start in [1]).

The state() call tells core some nova specific information (start/base
of exception portal selector for the new thread) in order to
successfully start a new thread. The base exception portal selector
(sel_exc_base) must not be zero (because the main thread already
occupies [0-31]).

Hope it helps,

Alex.

[0] repos/base-nova/src/base/thread/thread_nova.cc
[1] repos/base-foc/src/base/thread/thread_start.cc

--
Transform Data into Opportunity.
Accelerate data analysis in your applications with
Intel Data Analytics Acceleration Library.
Click to learn more.
http://pubads.g.doubleclick.net/gampad/clk?id=278785471=/4140
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Problem with startx and TinyCore linux version 6.4 and soeul-fancy

2016-02-23 Thread Alexander Boettcher
Hello,

On 20.02.2016 01:21, arthur low wrote:
> Then I replaced the kernel: bzImage-3.1 and initrd:  tc-browser.gz with a
> custom-compiled bzImage ( I need to enable an additional kernel feature),
> and the standard core.gz. I modified the run script so they would download
> from my web server running on localhost.
> 
> I am then  loading the minimal TC extensions (after booting to the shell)
> to load the X windows environment:
> 
> tce-load -wi Xvesa.tcz

For the demo Xfbdev.tcz was used. Afair - it was the only way to get
graphical output going with Tinycore.

Cheers,

Alex.



--
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=272487151=/4140
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Issue in ACPI parsing code

2016-02-11 Thread Alexander Boettcher
Hello,


On 09.02.2016 19:37, Tomasz Gajewski wrote:
> I've found a problem in acpi.cc that caused not parsing acpi tables
> properly on my pc. The problem is that there is an incomplete check for
> usability of xsdt table. According to some documentation on the net
> value 0 in revision entry in rsdp means that this is acpi 1.0 and xsdt
> table is not available but this was not checked.

thanks for your findings. Please open at github [0] a issue report, so
that your patch can be added to genode/master (see also [1]).

Cheers,

Alex.

[0] http://github.com/genodelabs/genode/issues
[1] http://www.genode.org/community/contributions

> 
> Attached patch fixed this issue for me.
> 
> 
> 
> --
> Site24x7 APM Insight: Get Deep Visibility into Application Performance
> APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
> Monitor end-to-end web transactions and take corrective actions now
> Troubleshoot faster and improve end-user experience. Signup Now!
> http://pubads.g.doubleclick.net/gampad/clk?id=272487151=/4140
> 
> 
> 
> ___
> genode-main mailing list
> genode-main@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main
> 


--
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=272487151=/4140
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: AHCI driver problem

2016-02-04 Thread Alexander Boettcher
Hello,

On 04.02.2016 11:23, Igor wrote:
> 03.02.2016, 18:52, "Igor" :
>> Environment:
>> Genode: 15.11
>> MB: ASUS Sabertooth Z87
>>
>> Driver successfully finds my HD, creates appropriate ATA_driver, and that's 
>> all. With verbose messages turning on all went ok but it's impossible to 
>> work normally in that mode.

may you please use the current Genode master branch instead of 15.11
release and add following patch [0]. ([1] may also be of interest to you
- seems you don't have IOMMU support in your CPU). Does this help ?

Cheers,

Alex.

[0]
https://github.com/alex-ab/genode/commit/af5617aba7a18b3b107d363dd1b60095c526537d

[1]
https://github.com/alex-ab/genode/commit/57958470384c6cbdaa5e0d02a52c9651b4748481



--
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=272487151=/4140
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Yet another problem with Genode+Nova_x86_64+VirtualBox on USB stick

2016-01-22 Thread Alexander Boettcher
Hello 1 2,

On 20.01.2016 21:00, 1 2 wrote:
> Yes, the problem was in usb_drv. Namely, vbox initially reads a pile of 
> single blocks per read. rump_fs at first caches these reads as 8 blocks per 
> once (i.e. single request to the part_blk and then to the usb_drv -> single 
> answer), but at some moment changes the strategy and sends several requests 
> for 64 blocks at once without avaiting the answers, which was not good for 
> old storage.cc code.
> Sincerely thank you for your help!

Nice !

> For me, it was the first step. What I want next: is it possible to 
> passthrough at least the GPU into VM? Have you (Genode labs) some plans about 
> that task? Or at least some guidance? AFAIK VirtualBox itself has such a 
> possibility: https://www.virtualbox.org/manual/ch09.html#pcipassthrough

We have not enabled this feature in the VBox VMM port to Genode@NOVA.
Currently, there are no plans from Genode Labs side to do it.

But, of course, we may assist you if you're willing to spend the effort.

In principal the assignment of devices to VMs (with IOMMUs) already
works. It was already done for NUL@NOVA and the Vancouver VMM [0] in the
past at the TU Dresden (~2009/2010++). Probably - it was also done for
Genode@NOVA and the Seoul VMM (kind of successor of Vancouver VMM) by
the Intel Labs/Braunschweig around the people of Udo Steinberg.
Unfortunately, Intel decided to close the Braunschweig office. We, at
Genode Labs, however did not experimented with PCI passthrough and Seoul
VMM so far.

I would enable the part in the VBox VMM/Genode port regarding PCI
passthrough and see what must be done there. If you once manage to get
it compile then the missing backend functions, (probably regarding PCI
discovery, IO Memory and IO Ports) must be adjusted in the Genode/VBox
component to the Genode platform driver interface. Here we/I are willing
to assist you.

Cheers,

Alexander Boettcher.

[0] http://os.inf.tu-dresden.de/nul/

--
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=267308311=/4140
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Yet another problem with Genode+Nova_x86_64+VirtualBox on USB stick

2016-01-20 Thread Alexander Boettcher
Hello,

On 19.01.2016 18:41, 1 2 wrote:
> Problem description: system hangs right after "Press F12..." VirtualBox label 
> disappears.
> 
> Environment:
> 
> MB: Asus Sabertooth Z87
> Memory: 16 GB
> CPU: i7 4770k (Yes, I know that it does not support VT-d)
> USB stick: Transcend 16GB 1100
> 
> [init -> vbox] Using VMX virtualization extension.
> [init -> vbox] fb resize : 1280x1024@16 -> 720x400@0
> [init -> vbox] fb resize : 720x400@16 -> 640x480@32
> [init -> vbox] fb resize : 640x480@16 -> 720x400@0
> [init -> vbox] fb resize : 720x400@16 -> 1024x768@24

the output looks good. The VM started and is running, switches
resolutions - so in general all is up.

So, things you may try:
- run your setup on current genode master branch instead of the 15.11
release. We fixed issues in the usb driver (storage) and nova kernel,
which may affect you.
- you may set the virtual CPU count to 1 in your .vbox file for the moment
- set HardwareVirtExUX to false in your .vbox file (but keep it on true
if it does not change anything)
- Do you run a 32bit or 64bit VM ? Which Windows version, or Linux, ... ?

Hope it helps,

Alexander.


--
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=267308311=/4140
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: vbox_usb_run bin/nic_drv missing

2015-12-17 Thread Alexander Boettcher
On 17.12.2015 14:10, a3an wrote:
> Thanks Alex.
> Another question: how do I build tool_chain_rump ?

In the genode repository in the tool/ directory you find a script called
"tool_chain_rump"

If you just invoke it without parameters in a shell it tells you what to
do, e.g. how to build and install.

Cheers,

Alex.


--
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Turmvilla Memory

2015-12-08 Thread Alexander Boettcher
Hello Harm,

may you please try the commit of

https://github.com/genodelabs/genode/issues/1814.

It is slightly different than the original one, but should have the same
effect.

Thanks,

Alex.



signature.asc
Description: OpenPGP digital signature
--
Go from Idea to Many App Stores Faster with Intel(R) XDK
Give your users amazing mobile app experiences with Intel(R) XDK.
Use one codebase in this all-in-one HTML5 development environment.
Design, debug & build mobile apps & 2D/3D high-impact games for multiple OSs.
http://pubads.g.doubleclick.net/gampad/clk?id=254741911=/4140___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Turmvilla Memory

2015-11-27 Thread Alexander Boettcher
 - size: 0x6e7c0
> region=68 type=fffe 0x7f88a000 - size: 0x334d0
> region=69 type=fffe 0x7f8be000 - size: 0x703a0
> region=70 type=fffe 0x7f92f000 - size: 0x1563b8
> region=71 type=fffe 0x7fa86000 - size: 0x15bf0
> region=72 type=fffe 0x7fa9c000 - size: 0x1213
> region=73 type=fffe 0x7fa9e000 - size: 0x5ee28
> region=74 type=fffe 0x7fafd000 - size: 0x567b0
> region=75 type=fffe 0x7fb54000 - size: 0x605e0
> region=76 type=fffe 0x7fbb5000 - size: 0x5ca18
> region=77 type=fffe 0x7fc12000 - size: 0xf8150
> region=78 type=fffe 0x7fd0b000 - size: 0x15908
> region=79 type=fffe 0x7fd21000 - size: 0x29c68
> region=80 type=fffe 0x7fd4b000 - size: 0x16298
> region=81 type=fffe 0x7fd62000 - size: 0x4d38
> region=82 type=fffe 0x7fd67000 - size: 0x246
> region=83 type=fffe 0x7fd68000 - size: 0x0
> region=84 type=fffe 0x7fd69000 - size: 0x286c8
> region=85 type=fffe 0x7fd92000 - size: 0xc800
> region=86 type=fffe 0x7fd9f000 - size: 0x6efd0
> region=87 type=fffe 0x7fe0e000 - size: 0xa55b0
> region=88 type=fffe 0x7feb4000 - size: 0xa5e0c
> region=89 type=fffe 0x7ff5a000 - size: 0xa5f64
> region=90 type= 0x0040 - size: 0x240
> 471 :phys_alloc: Allocator 18db20 dump:
>  Block: [,0009d000) size=0009d000 avail=0009d000 max_avail=0009d000
>  Block: [0010,1000) size=0ff0 avail=0ff0 max_avail=32e00
>  Block: [1000b000,bf01f000) size=af014000 avail=af014000 max_avail=32e00
>  Block: [1,42e00) size=32e00 avail=32e00
> max_avail=32e00
>  => mem_size=16860778496 (16079 MB) / mem_avail=16860778496 (16079 MB)
> 501 :phys_alloc: Allocator 18db20 dump:
>  Block: [,0009d000) size=0009d000 avail=0009d000 max_avail=0009d000
>  Block: [0010,0040) size=0030 avail=0030 max_avail=6bbcd000
>  Block: [0280,1000) size=0d80 avail=0d80 max_avail=0d80
>  Block: [1000b000,7bbd8000) size=6bbcd000 avail=6bbcd000 max_avail=6bbcd000
>  Block: [7d8ce000,7d8cf000) size=1000 avail=1000 max_avail=1000
>  => mem_size=2037821440 (1943 MB) / mem_avail=2037821440 (1943 MB)
> 522 :phys_alloc: Allocator 18db20 dump:
>  Block: [1000,0009d000) size=0009c000 avail=0009c000 max_avail=0009c000
>  Block: [0010,0040) size=0030 avail=0030 max_avail=6bbcd000
>  Block: [0280,1000) size=0d80 avail=0d80 max_avail=0d80
>  Block: [1000b000,7bbd8000) size=6bbcd000 avail=6bbcd000 max_avail=6bbcd000
>  => mem_size=2037813248 (1943 MB) / mem_avail=2037813248 (1943 MB)
> core
> [...]
> iwlwifi-7260-8.ucode
> Genode 15.08-242-g1e7a4e0 
> int main(): --- create local services ---
> 
> On Fri, Nov 27, 2015 at 1:20 PM, Alexander Boettcher <
> alexander.boettc...@genode-labs.com> wrote:
> 
>> Hello Harm,
>>
>> may you please cherry-pick following commit and post the output until
>> "int main(): --- create local services ---".
>>
>> Thanks,
>>
>> Alex.
>>
>> [0]
>>
>> https://github.com/alex-ab/genode/commit/92b021bc0508edc34d056a59cd54b17d251930a8
>>
>>
>>
>> --
>> ___
>> genode-main mailing list
>> genode-main@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/genode-main
>>
> 
> 
> 
> --
> 
> 
> 
> ___
> genode-main mailing list
> genode-main@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main
> 


--
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Turmvilla Memory

2015-11-27 Thread Alexander Boettcher
Hello Harm,

may you please cherry-pick following commit and post the output until
"int main(): --- create local services ---".

Thanks,

Alex.

[0]
https://github.com/alex-ab/genode/commit/92b021bc0508edc34d056a59cd54b17d251930a8


--
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Intel framebuffer driver

2015-11-27 Thread Alexander Boettcher
Hello,

On 26.11.2015 20:34, Harm de Vries wrote:
> I am unable to run the Turmvilla setup with the Intel framebuffer driver.
> Given below is the log output. Note that this computer has the following
> configuration:
> 
> 00:00.0 Host bridge: Intel Corporation 4th Gen Core Processor DRAM
> Controller (rev 06)
> 00:02.0 VGA compatible controller: Intel Corporation Xeon E3-1200 v3/4th
> Gen Core Processor Integrated Graphics Controller (rev 06)
> 
> Does anyone know how to get the setup running?

> Quota exceeded! amount=61440, size=4096, consumed=61440
> static void Genode::Pager_object::_page_fault_handler(Genode::addr_t): page
> fault, thread 'device_pd_ep', cpu 0, ip=1034bfe, fault address=0xa01fdfe0

Maybe not the only - but a simple issue - is telling the fault address
of the line above. Looks like the stack (on base-nova typically between
[0xa000-0xb000) ) is too small for the entrypoint thread in the
device_pd component. This is already adjusted/fixed for the upcoming
release. You may try to increase the stacksize by editing

https://github.com/nfeske/genode/blob/turmvilla/repos/os/src/drivers/platform/spec/x86/device_pd/main.cc

There is a STACK_SIZE enum which you may increase to 8K.

Cheers,

Alex.





--
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Turmvilla Memory

2015-11-26 Thread Alexander Boettcher
Hello,

On 25.11.2015 20:25, Harm de Vries wrote:
> $ make prepare
> nova  download https://github.com/alex-ab/NOVA.git
> Cloning into 'src/kernel/nova'...
> remote: Counting objects: 4810, done.
> remote: Compressing objects: 100% (79/79), done.
> remote: Total 4810 (delta 53), reused 0 (delta 0), pack-reused 4731
> Receiving objects: 100% (4810/4810), 5.99 MiB | 3.55 MiB/s, done.
> Resolving deltas: 100% (3517/3517), done.
> Checking connectivity... done.
> nova  update src/kernel/nova
> fatal: reference is not a tree: 92a2b58a5860916dbf89f7b0289fe7862abaf728

My fault. The commit vanished from my repository already. I re-added the
commit. Please retry.

Alex.

--
Go from Idea to Many App Stores Faster with Intel(R) XDK
Give your users amazing mobile app experiences with Intel(R) XDK.
Use one codebase in this all-in-one HTML5 development environment.
Design, debug & build mobile apps & 2D/3D high-impact games for multiple OSs.
http://pubads.g.doubleclick.net/gampad/clk?id=254741551=/4140
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Turmvilla scenario

2015-11-06 Thread Alexander Boettcher
Hi Vincent,

On 05.11.2015 11:18, Vincent Digital wrote:
> Can I clarify with you that the nic_bridge can both support Wifi_Driver as
> well as the Nic_Driver. In my tests, I could only get the nic_bridge to
> work with the Nic_Driver to support 2 clients (Windows + Drivers).

I only use the nic_bridge + nic_drv on Turmvilla. Never tried the wifi
driver + nic_bridge.

Did somebody else ? Could be that the wifi driver don't/can't cope with
multiple mac addresses - generated by the nic_bridge for each client ?
The nic_drv is running in promiscuous mode to handle this, maybe
something has to be done also for the wifi driver - so - is just
guessing from my side.

Alex.

> 
> Thanks.
> 
> 
> 
> On Fri, Oct 30, 2015 at 6:57 PM, Alexander Boettcher <
> alexander.boettc...@genode-labs.com> wrote:
> 
>> On 30.10.2015 11:49, Christian Helmuth wrote:
>>> What puzzles me in your log is the following
>>>
>>> 342: [cli_monitor -> linux -> vbox] EMT-0PDMR3ThreadSuspend ->
>> rc=VERR_TIMEOUT enmState=2 suspending 'nic_thread'
>>> 343: [cli_monitor -> linux -> vbox] PDMR3ThreadSuspend ->
>> rc=VERR_TIMEOUT enmState=2 suspending 'nic_thread'
>>>
>>> Could you please disable networking like follows in both vbox
>>> configurations and retry?
>>>
>>> - > cable="true" speed="0" type="82540EM">
>>> + > cable="true" speed="0" type="82540EM">
>>>
>>
>> I suspect you will have to add a nic session multiplexer (nic_bridge),
>> since you are now trying to start two nic clients (linux + windows) and
>> the wifi driver can serve only one client.
>>
>> Cheers,
>>
>> Alex.
>>
>>
>> --
>> ___
>> genode-main mailing list
>> genode-main@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/genode-main
>>
> 
> 
> 
> --
> 
> 
> 
> ___
> genode-main mailing list
> genode-main@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main
> 


--
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Turmvilla scenario

2015-10-30 Thread Alexander Boettcher
On 30.10.2015 11:49, Christian Helmuth wrote:
> What puzzles me in your log is the following
> 
> 342: [cli_monitor -> linux -> vbox] EMT-0PDMR3ThreadSuspend -> 
> rc=VERR_TIMEOUT enmState=2 suspending 'nic_thread'
> 343: [cli_monitor -> linux -> vbox] PDMR3ThreadSuspend -> rc=VERR_TIMEOUT 
> enmState=2 suspending 'nic_thread'
> 
> Could you please disable networking like follows in both vbox
> configurations and retry?
> 
> -  speed="0" type="82540EM">
> +  speed="0" type="82540EM">
> 

I suspect you will have to add a nic session multiplexer (nic_bridge),
since you are now trying to start two nic clients (linux + windows) and
the wifi driver can serve only one client.

Cheers,

Alex.

--
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Turmvilla scenario

2015-10-26 Thread Alexander Boettcher
Hi Vincent,

On 26.10.2015 11:19, Vincent Digital wrote:
> disks for the rich Linux and Home to use "SATA" instead of "IDE" as stated
> in the vm_linux.vbox.  i could get the Linux OS to boot up now.

Nice!

> However, the Wi-Fi is still not working. I've tried to configure as per
> instructions on the wlan_configuration file but to no avail. I've looked
> into the /dev/log for diagnostic but no help as well. Any ideas ?

May you please provide us with all output of the wifi driver
(/shared/log). If you want, you can redirect all output of the wifi_drv
directly to the AMT serial by removing the line "
 " within the wifi_drv start node in the genode
config file (/genode/genode/config in noux subsystem and reboot afterwards).

The other option is to just run the simple wifi.run script to debug
things. You may build it and copy the resulting iso via dd to a usb
stick and boot it. It could be that we just have to add missing
firmware_modules for you wifi card - however you would see corresponding
error messages from the wifi driver in this case.

Cheers,

Alex.

--
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Turmvilla scenario

2015-10-23 Thread Alexander Boettcher
Hello,

On 22.10.2015 15:07, Vincent Digital wrote:
>> I'm using the Ubuntu 14.04 LTS Desktop as guest VM
>> From the logs, I am unable to deduce what goes wrong. How do I get a
> working Linux ? The screen is still blank.
>> Any advise ?

>From what we can see/know from you, it should work. Your setup is
running here on several X201 successfully.

Thinks which you may check are:
- check that you used the right, yours, UUIDs in vm_linux.vbox for the
vdi and vmdk and did not mixed them up - do you use the same suggested
partition layout ?
- What does the cpu_load_display subsystem shows ? The CPUs are idle or
they are busy during the VM startup?
- What else differs/did you maybe differently as described ?
- I don't believe in some issue here - but just as reference: my X201 is
running the BIOS Version 1.40, Intel M 520 with 4GB, Enabled in CPU
section all entries, e.g. Intel Virtualization Technology, VT-d Feature
- You may also try my turmvilla branch [0], which contains several
fixups for several things I encountered - but your described issue
doesn't sound like my branch would help you here.

Good luck,

Alex.

[0] https://github.com/alex-ab/genode/commits/turmvilla

--
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Turmvilla scenario

2015-10-22 Thread Alexander Boettcher
On 21.10.2015 13:08, Vincent Digital wrote:
> Hi, Alex,
> 
> Thanks. I've updated the Turmvilla - Nova as 64bit and now I could start
> the Noux subsystem.
> i'm still facing hang issue in starting up the Linux subsystem.
> This time I could capture the Logs from the /shared/log file.
> A few questions :
> 
> 1. For the wifi configuration, I've tried to configure it from within Noux
> under the /config/wlan_configuration.


Check that your wifi driver sees some accesspoints:

cat /reports/wlan_accesspoints


Edit /config/wlan_configuration accordingly, e.g.




If all goes well, a

cat /reports/wlan_state

should produce something like:



 



> 2 . For the Linux subsystem, from the /shared/log file, it seems to
> indicate some issues with the virtualbox configuration. Writing to
> non-existent port. Any advise on how to move on.

The "non-existent port" messages are more or less for
developing/debugging - on current master we disabled them already since
they are annoying [0]. However, obviously something in your VM is
running and probes several I/O ports.

The log actually looks good. Which 32bit Linux-distribution you are
using as VM ?

[0]
https://github.com/genodelabs/genode/commit/2f8b3cfdaf0b7ae0244e7bc4ffcac36887c248fa

Cheers,

Alex.

--
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Turmvilla scenario

2015-10-20 Thread Alexander Boettcher
Hello Vincent,

On 20.10.2015 16:24, Vincent Digital wrote:
> Are those quota overflow messages really a problem ?

If you mean the "Quota exceeded" messages then it is normally no
problem. Shortly afterwards of such a message you should see some
"upgrading quota donation for ..." message. Mainly a server complains
about insufficient memory resources to fulfil a request of a client. The
client gets an appropriate exception and handles it by upgrading the
memory resources of the session to this server and finally continues
with the last operation.


> [ESC: ScreenAttribs, 0]Assertion "block->tag == Block::Used" failed at
> /home/vincent/genode-15.08/contrib/nova-61ea642d86312acd24698976f79d4530132c05a2/src/kernel/nova/src/buddy.cpp:143:void
> Buddy::free(mword, Quota&)

This is a bug which got fixed on Genode master already. Unfortunately -
the Turmvilla scenario is not (yet) based on Genode master. (Issue 1672
on github). You may try to cherry-pick the corresponding commit and
rebuild and replace the kernel on your branch. The bug triggered (until
now) only on a 32bit Turmvilla setup.

> NOVA Microhypervisor v7-a4a926a (x86_32): Oct 10 2015 18:00:57 [gcc 4.9.2]
>
> detected physical memory: 0x0001 - size: 0xfc00
> detected physical memory: 0x0002 - size: 0x3c00

You should build Turmvilla as 64bit. First you avoid the manual
cherry-picking fixup. Secondly you would utilize all physical memory of
your machine. On 32bit Genode/Nova all physical memory above 4G are not
used. According to your memory map (the two "detected physical memory"
messages above) you effectively don't use ~5GB RAM of your machine -
which you definitely want to use ;-)

Cheers,

Alex.

--
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Turmvilla scenario

2015-10-19 Thread Alexander Boettcher
Hello,

On 19.10.2015 12:30, Vincent Digital wrote:
> Can anyone help. Thanks in advance.
> 
> I've set up the Turmvilla scenario on a Lenovo X201 as much as I can based
> on the documentation stated by everyone else that contributed. On boot-up I
> could get the CLI_Monitor and upon entering "start linux" subsystem, I've a
> pop-up window that just hang. I could not kill it too from the CLI_Monitor.

the log output of the starting Vbox VM is available via the noux
subsystem. Please start the noux subsystem and monitor the file
/shared/log. It should give you some useful information about what went
wrong during VM startup.

Cheers,

Alex.


--
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: strance error when running Nova + Genode + Seoul (scenarion : seoul-auto.run)

2015-10-14 Thread Alexander Boettcher
Hi,

On 14.10.2015 12:44, Parfait Tokponnon wrote:
> Yes, I am running Ubuntu from within a VM (VirtualBox). Is there any
> problem related to it? I didn't know we cannot test the platform from
> within a VM...

developing within a VM is no issue, but actually running the result from
within a VM is adventurous - at least - most the time, based on
practical experience.

In your case you have 3 level of virtualization/emulation nested - you
are running Ubuntu in Virtualbox (1), then you run Genode/Nova inside
Qemu (2) ontop of (1) and finally you run a Linux VM with Seoul VMM (3)
on top of (2).

Beside the obviously waste of CPU time and increasing your idle time,
you have to rely on all upper levels to work correctly. Such a
assumption and in principal such a development setup just leads to
various types of frustrations - I would try to avoid that.

> 
> And Yes, when I had invoked qemu directly with the provided command in the
> log file it worked too.
> So what could be the explanation?

Our run tool sets for automatically tested scripts (as seoul-auto.run) a
timeout until it must have been finished. Since you say it works for you
when you are calling qemu directly - it could be that the execution time
in your 3-level nested virtualization setup is too short.

You may try to increase the timeout in seoul-auto.run (search for
run_genode_until) or try using seoul-net.run instead, which is mainly
the same setup but without timeout.

Does this change things for you ?

If not, you would have to find out why tcl/expect stops working with a
eof (in /tool/run/run) error when waiting for qemu output.



Regards,

Alex.

--
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: strance error when running Nova + Genode + Seoul (scenarion : seoul-auto.run)

2015-10-12 Thread Alexander Boettcher
Hello,

On 09.10.2015 21:06, Parfait Tokponnon wrote:
> Hello,
> Can anyone help out?

may you please try to invoke the resulting iso file with qemu directly
without using our run tool? Change "spawn qemu-system-x86_64 -cpu ..."
(see log file) to "qemu-system-x86_64 -cpu ..." and call it from within
the build directory. What is the (error) output of qemu ?
Do you are running Ubuntu 12.04 from within a VM ?

Regards,

Alex.


--
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: run/noux_bash error

2015-10-08 Thread Alexander Boettcher
Hi,

On 06.10.2015 23:29, Abhay Amala wrote:
> Hi Christian,
> 
> I execute run/demo on base-nova successfully. i have tried to run make
> run/noux_bash in my nova build directory, but i am not getting command
> prompt inside my qemu. After displaying the following outputs, it gets
> stuck.
> 
> Here is my output:
> 
> [init -> ram_fs] failed to open ROM file "timer"
> [init] child "ram_fs" announces service "File_system"
> [init -> acpi_drv] void Acpi_table::_parse_tables(T*, Genode::uint32_t)
> [with T = unsigned int; Genode::uint32_t = unsigned int]: Found MADT


You cut away the interesting first part of the log messages, e.g.:


[init -> acpi_report_rom] no valid policy for label "timer ->
hypervisor_info_page"
[init -> acpi_report_rom] no valid policy for label "noux -> ld.lib.so"
[init -> acpi_report_rom] no valid policy for label "ram_fs -> init"
[init -> ram_fs] Could not open ROM session for module "init"
[init -> platform_drv] platform driver started
[init -> timer] Could not open ROM session for module "hypervisor_info_page"
[init -> timer] Uncaught exception of type
'N6Genode14Rom_connection21Rom_connection_failedE' (use 'c++filt -t' to
demangle)
[init -> timer] abort called - thread: 'timer_drv_ep'
[init -> noux] Could not open ROM session for module "ld.lib.so"
[init -> noux] Uncaught exception of type
'N6Genode14Rom_connection21Rom_connection_failedE' (use 'c++filt -t' to
demangle)
[init -> noux] abort called - thread: 'main'
[init] virtual void Genode::Child_policy::exit(int): child "noux" exited
with exit value 1
[init -> ram_fs] failed to open ROM file "init"
[init -> acpi_report_rom] no valid policy for label "ram_fs -> timer"
[init -> ram_fs] Could not open ROM session for module "timer"
[init -> ram_fs] failed to open ROM file "timer"




The commit [0] fixes the issue for me. With it - noux_bash works for me
on Genode/NOVA.

Cheers,

Alex.

[0]
https://github.com/genodelabs/genode/commit/9212fc0dc63ebfc924c08de64ff0ef06f7c4b502


> What is missing? thanks for your answers in advance!
> 
> Best regards,
> Abhay
> 
> On Tue, Oct 6, 2015 at 9:54 PM, Abhay Amala  wrote:
> 
>>
>> Hi Christian,
>>
>> Thank you for response.
>>
>>
>> On Tue, Oct 6, 2015 at 3:23 PM, Christian Helmuth <
>> christian.helm...@genode-labs.com> wrote:
>>
>>> Hi,
>>>
>>> On Tue, Oct 06, 2015 at 02:12:16PM +0200, Abhay Amala wrote:
> Did you sucessfully execute run/demo on base-linux?


 I have tried to execute run/demo, but the same output, It also throws a
 exception "[init -> fb_sdl] input overflow - resetting queue" and gets
 stuck.
>>>
>>> This means we really have an issue with our SDL-based fb_sdl program.
>>> Does the message also appear if you do not move the mouse or use the
>>> keyboard after starting "make run/demo"?
>>>
>>> Yes, it displays the same output.
>>
>>
>>> May I ask which Linux distribution you're using (output of
>>> lsb_release -cidr)?
>>>
>>
>> Ubuntu 14.04 LTS.
>>
>> Best regards,
>> Abhay
>>
>>>
>>> Regards
>>> --
>>> Christian Helmuth
>>> Genode Labs
>>>
>>> http://www.genode-labs.com/ · http://genode.org/
>>> https://twitter.com/GenodeLabs · /ˈdʒiː.nəʊd/
>>>
>>> Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden
>>> Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth
>>>
>>>
>>> --
>>> ___
>>> genode-main mailing list
>>> genode-main@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/genode-main
>>>
>>
>>
> 
> 
> 
> --
> 
> 
> 
> ___
> genode-main mailing list
> genode-main@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main
> 


--
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Genode/NOVA+Multiple VMMs Seoul / VBox

2015-09-21 Thread Alexander Boettcher
Hi Ferreira,

On 19.09.2015 03:27, Roger Ferreira wrote:
> Hi Alex,
> I did follow and tested the image case.
> I am using nova_x86_32.
> I works on QEMU alone.
> Unfortunately, with Genode-Seoul-QEMU, seoul-wm-cli.run script, it boots but 
> after a while Loading Extensions..., a memory problem appears:[cli_monitor -> 
> seoul-img -> seoul] Uncaught exception of type 
> 'N6Genode9Allocator130Out_of_memoryE´ (use ´c++filt -t´ to 
> demangle)[cli_monitor -> seoul-img -> seoul]  abort called - thread: ´vCPU 
> dispatcher´
> Subject: Re: Genode/NOVA+Multiple VMMs Seoul / VBox

sound familiar - I added to the seoul_wm_cli branch a fixup commit.

Alex.

> To: genode-main@lists.sourceforge.net
> From: alexander.boettc...@genode-labs.com
> Date: Mon, 14 Sep 2015 14:02:07 +0200
> 
> Hello,
>  
> On 13.09.2015 21:10, Roger Ferreira wrote:
>> The only difference is that I managed to reduce the image now down to 89M.
>> Nevertheless, I appreciate the help and apologize for any inconvenience. 
>>
>> I get the following error on QEMU window:
>> sudo qemu-system-i386 -kernel vmlinuz -append "quiet" -initrd 
>> tc-dds.gzFailed to execute /init (error -28)Kernel panic - not syncing: No 
>> working init found.
>  
> Make sure to use some "-m" option with Qemu, otherwise your VM only sees
> 128M RAM by default - which is far to less. Something like "-m 256"
> should do in your case.
>  
>  
> I played a bit around and found now a workflow to build a customized
> Tinycore based VM image which boots up nicely in Seoul on native
> hardware as Qemu(if you patient enough).
>  
> I updated my branch with necessary fixes [0] and attached the howto to
> this mail.
>  
> Cheers,
>  
> Alex
>  
> [0] https://github.com/alex-ab/genode/tree/seoul_wm_cli
> 
> --
> ___
> genode-main mailing list
> genode-main@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main  
>   
> 
> 
> 
> --
> 
> 
> 
> ___
> genode-main mailing list
> genode-main@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main
> 


--
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: running Virtualbox on Genode

2015-09-10 Thread Alexander Boettcher
Hello Vincent,

On 10.09.2015 05:38, Vincent Digital wrote:
> Hi, Alex,
> 
> I've used your USB_RUN script to create an image file.
> I followed your instructions to prepare the USB stick. However, the USB
> stick cannot boot up.
> Unfortunately, I do not have access to a laptop with serial port so I am
> unable to get any logs.
> Can I check with you on your instructions (the mini-howto below) instead.
> Thanks.
> #
> # Make sure that the USB is not used - all partitions are un-mounted.
>>> How should I prepare this USB stick, should it be formatted under a
> particular filesystem (ext2, or FAT32)

No preparation. The image you copy with dd already contains a valid mbr
+ ext2 partition. So after the dd command, you should be able already to
mount the ext2 partition. If this does not work - something is already
odd - so make sure that mounting it already succeeds ! (Let's call it
step 0).

>>> Can I clarify the steps below are in sequential order
>>> 1. dd operation

Yes

>>> 2. fdisk operation  - delete all partitions, then create a new partition
> and then write to disk.

There should be exactly one partition to delete.

>>> 3. Resizefs operation

Yes

>>> 4. Mount partiton (I tried this but could not get a successful mount
> until I create a filesystem using mke2fs. Is this step necessary ?)

The first 3 steps are ok. If the 4. step does not succeed something
failed during re-partition and ext2 resize of the ext2 partition.
Effectively you should see on the ext2 partition the very same content
as after Step 0 (dd). The main goal of step 2-3 is to expand the ext2
partition over the whole USB stick - otherwise there is not enough place
for the VM image.

Cheers,

Alex

--
Monitor Your Dynamic Infrastructure at Any Scale With Datadog!
Get real-time metrics from all of your servers, apps and tools
in one place.
SourceForge users - Click here to start your Free Trial of Datadog now!
http://pubads.g.doubleclick.net/gampad/clk?id=241902991=/4140
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: running Virtualbox on Genode

2015-09-10 Thread Alexander Boettcher
Some additional note:

make sure that you remove/uncomment all RUN_OPT in your etc/build.conf
and really replace it by this line:

# Set RUN_OPT in your build.conf to: RUN_OPT = --include image/disk

Otherwise the resulting image is not in the expected state.

Alex.

On 10.09.2015 05:38, Vincent Digital wrote:
> Hi, Alex,
> 
> I've used your USB_RUN script to create an image file.
> I followed your instructions to prepare the USB stick. However, the USB
> stick cannot boot up.
> Unfortunately, I do not have access to a laptop with serial port so I am
> unable to get any logs.
> Can I check with you on your instructions (the mini-howto below) instead.
> Thanks.
> 
> # Short mini howto for nova_x86_64:
> # - assumption - /dev/sdc is your USB stick
> # - assumption - you are in the genode source root directory
> # - assumption - you have prepared all external ports
> # - assumption - you have build the rump tools -> tool/tool_chain_rump
> #
> # create a nova_x86_64 build directory
> # - tool/create_builddir nova_x86_64
> #
> # Put/symlink your Windows 7 vdi to build/nova_x86_64/win7.vdi
> #
> # Set RUN_OPT in your build.conf to: RUN_OPT = --include image/disk
> #
> # Build everything:
> # - make -C build/nova_x86_64 run/vbox_usb
> #
> # Make sure that the USB is not used - all partitions are un-mounted.
>>> How should I prepare this USB stick, should it be formatted under a
> particular filesystem (ext2, or FAT32)
>>> I have tried various ways - delete everything including partitions, etc.
> and then create a new partition
>>> Can I clarify the steps below are in sequential order
>>> 1. dd operation
>>> 2. fdisk operation  - delete all partitions, then create a new partition
> and then write to disk.
>>> 3. Resizefs operation
>>> 4. Mount partiton (I tried this but could not get a successful mount
> until I create a filesystem using mke2fs. Is this step necessary ?)
> 
> # Copy disk image to your USB stick:
> # - sudo dd if=build/nova_x86_64/var/run/vbox_usb.img of=/dev/sdc
> #
> # Make sure that the USB partition of the stick is un-mounted.
> #
> # Resize USB stick partition to maximum:
> # - sudo fdisk /dev/sdc
> # -- delete partition ('d')
> # -- create partition - ('p')
> # -- write table to disk and exit ('w')
> #
> # - sudo resize2fs -p /dev/sdc1
> #
> # Mount Genode partition on USB stick and copy your Windows image to the USB
> # stick:
> #
> # - sudo mount /dev/sdc1 /media/genode
> # - cp build/nova_x86_64/win7.vdi /media/genode/.
> # - mkdir /media/genode/ram
> # - cp build/nova_x86_64/bin/overlay_win7.vdi /media/genode/ram/.
> # - umount /media/genode
> #
> # Boot your USB stick. For debugging get the serial output of the test
> machine.
> #
> 
> 
> 
> 
> 
> 
> On Tue, Sep 1, 2015 at 3:03 AM, Alexander Boettcher <
> alexander.boettc...@genode-labs.com> wrote:
> 
>> On 28.08.2015 13:44, Alexander Boettcher wrote:
>>>> The part that I am not sure are the "win7.vdi" and "overlay_win7.vdi"
>>>> files. How are they linked to the vbox_auto_win7.iso file ?
>>>> I have copied them onto the thumbdrive but is this correct ?
>>
>> You may try the following branch
>> https://github.com/alex-ab/genode/commits/vbox_usb_run. There exists now
>> a run script called repos/ports/run/vbox_usb.run which helps you in
>> setting up a Virtualbox on Genode/NOVA running from USB stick and
>> fetching the Virtualbox image from the vary same USB stick. Please
>> follow the instruction as described in the run script.
>>
>> Still, there a lot of manual steps to go - but it may help a bit.
>>
>> Please keep in mind, depending on the read and write performance of your
>> USB controller and stick the overall experience may be not as good as
>> when used with a real hard disk.
>>
>> Alex.
>>
>>
>> --
>> ___
>> genode-main mailing list
>> genode-main@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/genode-main
>>
> 
> 
> 
> --
> Monitor Your Dynamic Infrastructure at Any Scale With Datadog!
> Get real-time metrics from all of your servers, apps and tools
> in one place.
> SourceForge users - Click here to start your Free Trial of Datadog now!
> http://pubads.g.doubleclick.net/gampad/clk?id=241902991=/4140
> 
> 
> 
> ___
> genode-main mailing list
> genode-main@lists.so

Re: Genode/NOVA+Multiple VMMs Seoul / VBox

2015-09-07 Thread Alexander Boettcher
Hello Roger,

On 06.09.2015 20:21, Roger Ferreira wrote:

> In the multiboot scheme, I tried to replace the bzImage with the newer 
> TinyCore 6.3 vmlinuz together with the initrd core.gz.
> But that didn´t work.

On Qemu it doesn't work for me either. Natively (Intel Core i5, Lenovo
X201) it does - at least Tinycore 6.3. boots up into a shell from where
I can access the network. So, I just downloaded
http://tinycorelinux.net/6.x/x86/release/Core-6.3.iso and copied out the
vmlinuz and core.gz and used it together with 'munich'.

> I create a raw disk using qemu-img, than I use dd to format it from a iso.
> But now I don´t know how to configure that in the run script.
> I tried in the  section without success.

I extended my branch and added to the setup a Seoul VM configuration,
which boots from a raw disc image. I had no success with Tinycore,
however some Genode scenarios booted natively (not in Qemu!). E.g. I
build Genode/Fiasco run/printf and used this hybrid iso/usb image
unmodified as raw disc with the Seoul VMM.

In the Genode cli_monitor shell you now may also use "start seoul-img"
beside "start seoul".

> Any hint? How to find documentation regarding that?

Not I'm aware of. For configuration of the Seoul VMM you may have a look
into the files located in contrib/seoul-/src/app/seoul/model/*. At
the end of all the models there is a short description how to configure
the models - parameters etc. For the Genode port of Seoul we translate
it in repos/ports/src/app/seoul/device_model_registry.cc to xml syntax,
which you finally can add to the  node of the Genode Seoul
process. This is done, e.g., in seoul.inc which generates the Genode
configuration for Seoul and stores it as vm_seoul.cfg in your build
directory.

For repos/gems/run/seoul-wm-cli.run the Seoul VM configurations are
fixed and created in rom_fs inlined - to make it hopefully easier to
read/grasp by a user.

Hope it clarifies a bit,

Alex.

> Thanks for your help and patiente.
> Regards,Roger
>> Subject: Re: Genode/NOVA+Multiple VMMs Seoul / VBox
>> To: genode-main@lists.sourceforge.net
>> From: alexander.boettc...@genode-labs.com
>> Date: Sat, 5 Sep 2015 22:25:44 +0200
>>
>> Hello,
>>
>> On 04.09.2015 15:51, Roger Ferreira wrote:
>>> I am not able to capture any log. 
>>
>> I fear without any log it will become hard to impossible to get it running.
>>
>>> I am using a normal x86 desktop computer.
>>
>> You should, for example, obtain a PCI serial card and attach it - if
>> your machine hasn't already a serial connector on-board or something
>> like Intel AMT SOL (SerialOverLAN).
>>
>>> Regarding the seoul multiboot scheme, I saw it does not allow a ISO, 
>>> correct?
>>
>> Yes.
>>
>>> It seems to expect a bootloader (munich), them the bzImage, an some 
>>> aditional g
>>> Actually I have prepared a custom remasterized version of TinyCore with 
>>> some specific libs / apps.
>>> It works alone.
>>> But when I tried to port to seoul, sitill using munich, I don´t have a 
>>> bzImage.
>>> I have a vmlinuz, core.gz and my own stuff as TCZ extensions.
>>> The vmlinuz I customize some files.
>>
>> For Seoul you have two ways to boot things - either boot a multiboot
>> compliant kernel, which Linux is not, or boot a VM from a raw disk image.
>>
>> Munich (as a multiboot kernel) is a small helper to bootstrap a Linux
>> kernel. Munich expects as first multiboot image the Linux kernel and the
>> second multiboot image has to be the initial ram disk. (see
>> http://os.inf.tu-dresden.de/~kauer/oslo/README for pointers to munich)
>>
>> For the Seoul/Tinycore demo we had to manually squash the core.gz and
>> all the Firefox browser related files into a initial ram disk
>> (tc-browser.gz). I fear we didn't documented it well. As far as I
>> remember it was no fun. Could be - because we don't create for Seoul VMs
>> regularly. So, we have no ready to use work-flow we could share. Setting
>> up a VM with Virtualbox is - in that regard - much more user-friendly.
>>
>> The other option of course is to install your intended VM setup on a
>> disk - or in a VM on a virtual disk, e.g. use Virtualbox on your
>> Linux/Windows. Finally use the raw disk image for Seoul - there are ways
>> to convert a vdi/vmdk image into a raw disk image. A hybrid iso/usb
>> bootable image should also work in principal as raw disk image - however
>> never tried.
>>
>> Just a note - you may need several iterations of Linux kernel
>> configuration tweaking and rebuilds until you may get it running in
>> Seoul. Seoul was/is more or less a research VMM and does not support
>> everything out-of-a-box what a standard Linux distribution kernel
>> enables/expects from the hardware.
>>
>> Regards,
>>
>> Alex.
>>
>> --
>> ___
>> genode-main mailing list
>> genode-main@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/genode-main
>

Re: Genode/NOVA+Multiple VMMs Seoul / VBox

2015-09-05 Thread Alexander Boettcher
Hello,

On 04.09.2015 15:51, Roger Ferreira wrote:
> I am not able to capture any log. 

I fear without any log it will become hard to impossible to get it running.

> I am using a normal x86 desktop computer.

You should, for example, obtain a PCI serial card and attach it - if
your machine hasn't already a serial connector on-board or something
like Intel AMT SOL (SerialOverLAN).

> Regarding the seoul multiboot scheme, I saw it does not allow a ISO, correct?

Yes.

> It seems to expect a bootloader (munich), them the bzImage, an some aditional 
> g
> Actually I have prepared a custom remasterized version of TinyCore with some 
> specific libs / apps.
> It works alone.
> But when I tried to port to seoul, sitill using munich, I don´t have a 
> bzImage.
> I have a vmlinuz, core.gz and my own stuff as TCZ extensions.
> The vmlinuz I customize some files.

For Seoul you have two ways to boot things - either boot a multiboot
compliant kernel, which Linux is not, or boot a VM from a raw disk image.

Munich (as a multiboot kernel) is a small helper to bootstrap a Linux
kernel. Munich expects as first multiboot image the Linux kernel and the
second multiboot image has to be the initial ram disk. (see
http://os.inf.tu-dresden.de/~kauer/oslo/README for pointers to munich)

For the Seoul/Tinycore demo we had to manually squash the core.gz and
all the Firefox browser related files into a initial ram disk
(tc-browser.gz). I fear we didn't documented it well. As far as I
remember it was no fun. Could be - because we don't create for Seoul VMs
regularly. So, we have no ready to use work-flow we could share. Setting
up a VM with Virtualbox is - in that regard - much more user-friendly.

The other option of course is to install your intended VM setup on a
disk - or in a VM on a virtual disk, e.g. use Virtualbox on your
Linux/Windows. Finally use the raw disk image for Seoul - there are ways
to convert a vdi/vmdk image into a raw disk image. A hybrid iso/usb
bootable image should also work in principal as raw disk image - however
never tried.

Just a note - you may need several iterations of Linux kernel
configuration tweaking and rebuilds until you may get it running in
Seoul. Seoul was/is more or less a research VMM and does not support
everything out-of-a-box what a standard Linux distribution kernel
enables/expects from the hardware.

Regards,

Alex.

--
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Genode/NOVA+Multiple VMMs Seoul / VBox

2015-09-03 Thread Alexander Boettcher
Hello,

On 01.09.2015 16:48, Roger Ferreira wrote:
> Dear Genode Community,
> I would like also to be able to control and see the VMs (enter the Guest-OS, 
> start/stop the VM) from the Genode window as the screenshot shows.

> So at first I would like to stick with Seoul. In this case, being able to run 
> multiple VMs (Seoul+TinyCore) from Genode/Nova.
> Which way shall I follow to create a run script that fullfils what I expect?
> Is there already any run script?

you may try the branch [0] , which contains a new run script in
repos/gems/run/seoul-wm-cli.run. The script creates a GUI scenario
(nitpicker + window manager) containing the cli_monitor applications
with which you can start/kill via a command-line-based launcher several
Seoul instances using the Tinycore VM. I added several drivers - like
usb, ps/2 and the nic driver and nic bridge, so that you should be able
to use the Browser in the VM - if your hardware is supported.

Just invoke the run script and copy the result via dd to your USB stick.
(Running in Qemu should also work but it is not sooo quick).

In the cli monitor application you just have to type

start seoul

Cheers,

Alex.

[0] https://github.com/alex-ab/genode/tree/seoul_wm_cli



--
Monitor Your Dynamic Infrastructure at Any Scale With Datadog!
Get real-time metrics from all of your servers, apps and tools
in one place.
SourceForge users - Click here to start your Free Trial of Datadog now!
http://pubads.g.doubleclick.net/gampad/clk?id=241902991=/4140
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Announcement: Genode OS Framework version 15.08 released

2015-09-01 Thread Alexander Boettcher
Hello,

it is documented here:

https://github.com/genodelabs/genode/issues/1552

Cheers,

Alex.

On 01.09.2015 05:12, Vincent Digital wrote:
> Hi, congratulations to the release of 15.08 and with it, the use of
> Genode/Nova as a day-to-day operating system.
> I'm interested to build the same to explore the robustness of Genode -
> could you advise which "run" file is used to create the Genode version that
> Norman is using ?
> 
> Thanks.
> 
> On Mon, Aug 31, 2015 at 3:54 AM, Christian Helmuth <
> christian.helm...@genode-labs.com> wrote:
> 
>> The current release is characterized by our efforts to use Genode as
>> day-to-day operating system. From this background, we packed quite a
>> few improvements regarding user GUI experience, VirtualBox robustness
>> and performance, integration of native Genode applications and guest
>> OSes as well as tools to inspect the system behavior into Genode
>> 15.08. Beyond that, we're proud to integrate community contributions
>> as the support to run Genode base-hw on the Muen separation kernel on
>> x86_64 and extended device-driver support for Raspberry Pi and
>> Odroid-X2.
>>
>> In short, version 15.08 comes with the following highlights:
>>
>>   - Genode/NOVA used as day-to-day operating system
>>   - Genode on top of the Muen separation kernel
>>   - Kernel-resource management on NOVA and our custom base-hw kernel
>>   - Base framework and low-level OS infrastructure
>> - Improved audio support
>> - Unified networking components
>> - Enhanced tracing and file-system facilities
>> - Low-complexity software rendering
>>   - Device drivers
>> - Raspberry Pi and Odroid-X2 on Fiasco.OC, including
>>   USB support
>> - BCM57cxx network cards
>>   - VirtualBox
>> - Guest-host integration (policy-based mouse shapes, dynamic
>>   adaptation to screen size changes, audio)
>> - Multi-processor support
>>
>> Those and many more improvements are illustrated by the release
>> documentation
>>
>>   http://genode.org/documentation/release-notes/15.08
>>
>> Best regards
>> --
>> Christian Helmuth
>> Genode Labs
>>
>> http://www.genode-labs.com/ · http://genode.org/
>> https://twitter.com/GenodeLabs · /ˈdʒiː.nəʊd/
>>
>> Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden
>> Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth
>>
>>
>> --
>> ___
>> genode-main mailing list
>> genode-main@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/genode-main
>>
> 
> 
> 
> --
> 
> 
> 
> ___
> genode-main mailing list
> genode-main@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main
> 


--
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: running Virtualbox on Genode

2015-09-01 Thread Alexander Boettcher
On 28.08.2015 13:44, Alexander Boettcher wrote:
>> The part that I am not sure are the "win7.vdi" and "overlay_win7.vdi"
>> files. How are they linked to the vbox_auto_win7.iso file ?
>> I have copied them onto the thumbdrive but is this correct ?

You may try the following branch
https://github.com/alex-ab/genode/commits/vbox_usb_run. There exists now
a run script called repos/ports/run/vbox_usb.run which helps you in
setting up a Virtualbox on Genode/NOVA running from USB stick and
fetching the Virtualbox image from the vary same USB stick. Please
follow the instruction as described in the run script.

Still, there a lot of manual steps to go - but it may help a bit.

Please keep in mind, depending on the read and write performance of your
USB controller and stick the overall experience may be not as good as
when used with a real hard disk.

Alex.

--
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


running Virtualbox on Genode

2015-08-28 Thread Alexander Boettcher
Hi,

On 28.08.2015 11:48, Vincent Digital wrote:
 I could now proceed to my next stage - basically to build a Genode system
 with NOVA micro-kernel, running Virtualbox with a Windows 7 VM.
 I have managed to make the vbox_auto_win7.run script - everything is made
 successfully and the output is a vbox_auto_win7.iso file.
 However, when I tried to use the vbox_auto_win7.iso file and put it onto
 a USB thumdrive to run. The result is that after boot-up, it just hang.

You should get the serial output of that machine in order to efficiently
debug and set up things.

 
 The part that I am not sure are the win7.vdi and overlay_win7.vdi
 files. How are they linked to the vbox_auto_win7.iso file ?
 I have copied them onto the thumbdrive but is this correct ?

This particular run-script makes some assumption about the hardware
environment and is solely executed automatically by our test infrastructure.

The run script assumes that the test machine has a disk at a AHCI
controller and there the fourth partition contains a ext2 filesystem
with two files - namely the win7.vdi and overlay_win7.vdi.

Please read the beginning of vbox_auto_win7_share.run, which describes
roughly the expected state of the test machine, if you want to use the
vbox_auto* scripts. (The other way is to write your own run script
matching your desired hardware setup.)

 I have tried to understand the email exchange on
 http://sourceforge.net/p/genode/mailman/message/33496592/ discussion
 between Christian and Adrian.
 Does anyone have a blueprint on how I can create a win7.vdi using an
 existing Windows 7 DVD onto a ext2 partition.

For creating a vdi just use a Virtualbox installation of your favourite
OS. Install and setup your VM using the normal Virtualbox tools. The
resulting vdi image you than copy at the right place in the ext2
partition of your test machine. The overlay vdi can be created as
described in vbox_auto_win7_share.run.

If all this is in place correctly, you may copy the resulting
vbox_auto_win7_share.run to your usb stick and boot it. The Genode
scenario on the USB stick than will read the vdi image from your AHCI
hard disk. In this setup changes to the VM are written to the overlay
vdi image - so that your original win7.vdi doesn't get changed/messed up
accidentally.

Hope it helps,

Alexander Boettcher.

--
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


  1   2   >