Hi Stefan, We did finally manage to get it working! The problem was the Pistachio kernel's support for IO Flex pages doesn't work - and non-virtual TCB are needed atleast with SMP enabled. New mapping seems OK. My next step is to try to build the rest of the Genode demo.
Do you plan to extend Genode's cpu-session interface to support an explicit cpu-migration of threads, or do you want to do load-balance somehow implicitly?
As far as this, I am currently not sure. We are really just surveying the landscape and seeing what we can get to work, as well as gaining a better understanding of where things are. We are actually looking at extending Pistachio to a multikernel for multicore processors - ultimately.
Thanks for the help, Daniel
-----Original Message----- From: Stefan Kalkowski [mailto:stefan.kalkowski@...1...] Sent: Friday, January 14, 2011 7:57 AM To: genode-main@lists.sourceforge.net Subject: Re: SMP ia32 support with Pistachio
Hello Daniel,
On 01/14/2011 12:52 AM, Daniel Waddington - SISA wrote:
Hi,
Has anyone managed to get Pistachio+Genode with SMP+ia32 running? We have managed to get Pistachio+Genode+ia32 without SMP working fine.
that's nice to hear!
As soon as we compile SMP it goes into an endless loop.
Any ideas?
Well, I'm not sure what you exactly mean by 'it goes into an endless loop'. Do you mean the kernel or Genode's core? Do you have some serial output, or can you even enter the kernel-debugger?
In fact we normally only use the single-processor version of pistachio. Nevertheless, we've tested SMP support today, and there seems to be a general problem with SMP in the current version of pistachio. We got different races sometimes even before 'core' (Genode's roottask) got started.
In older versions of pistachio, SMP support seems to work, but there we got minor problems with the old mapping-database. Possibly the SMP version doesn't use the new mapping database implementation, at least in the version we've tested (from 08.01.2010). Probably, Genode can easily be reworked to use the old mapping semantic, but it has known stability problems.
I think a better way is to solve the presumptive, current SMP support problem in pistachio directly. You might ask the pistachio developers for help[1]. Maybe you can reproduce the SMP problems with a tiny example application?
Once, the pistachio port of Genode (formerly known as Bastei) was done by Julian Stecklina[2] as study work, he successfully implemented rudimentary SMP support into the cpu-session interface of Genode. So at least at that point SMP worked with the predecessor of Genode together, but that experimental code isn't part of Genode today.
Do you plan to extend Genode's cpu-session interface to support an explicit cpu-migration of threads, or do you want to do load-balance somehow implicitly?
Thanks Daniel Waddington
You're welcome.
regards Stefan Kalkowski
[1] http://l4ka.org/maillist.php [2] http://os.inf.tu-dresden.de/papers_ps/jstecklina-beleg.pdf
-- Stefan Kalkowski 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
Protect Your Site and Customers from Malware Attacks Learn about various malware tactics and how to avoid them. Understand malware threats, the impact they can have on your business, and how you can protect your company and customers by using code signing. http://p.sf.net/sfu/oracle-sfdevnl _______________________________________________ Genode-main mailing list Genode-main@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/genode-main