* Re: [Xen-users] ANN: FreeRTOS 7.6.0 for Xen on ARM released
[not found] ` <1421747758.10440.184.camel@citrix.com>
@ 2015-01-20 10:14 ` Ian Campbell
2015-01-20 19:31 ` Jonathan Daugherty
0 siblings, 1 reply; 2+ messages in thread
From: Ian Campbell @ 2015-01-20 10:14 UTC (permalink / raw)
To: Jonathan Daugherty; +Cc: xen-users, xen-devel
I failed on the CC, whoops! Lets try that again...
(see also some comments below)
On Tue, 2015-01-20 at 09:55 +0000, Ian Campbell wrote:
> Hi Jonathan,
>
> Very cool!
>
> I've copied xen-devel, since I bet there are folks there who would be
> interested too.
>
> Ian.
>
> On Mon, 2015-01-19 at 11:12 -0800, Jonathan Daugherty wrote:
> > Hi,
> >
> > I'm pleased to announce that my port of FreeRTOS 7.6.0 for Xen on ARM is
> > now released! Now you can deploy FreeRTOS alongside all of those tiny
> > Mirage VMs you have been running. The source is available on GitHub:
> >
> > https://github.com/GaloisInc/FreeRTOS-Xen
> >
> > I presented this work at last year's Xen Developer Summit, and it is
> > finally out. I am happy to accept community patches, address issues,
> > etc. To test your patches, you'll need an ARM system running Xen.
> >
> > Many thanks to the Xen developers who helped us along the way!
BTW, I notice that you have hardcoded the GIC addresses and various
interrupt sources. We do not make any guarantees about the guest virtual
platform memory or interrupt layout beyond committing to correctly
describing them in the Device Tree Blob which is passed to the guest
kernel at start of day.
So anything built with this version of Free-RTOS will only work on Xen
4.4, which is something which should be made clear to users etc. In
particular please could you clarify the statement "Xen version: 4.4+" in
your README, since right now I think you only support 4.4.
Anyway, this is a valid design choice for you to make, so long as you
understand the constaints and consequences. If you want to make binaries
which are portable and/or to avoid having to have configuration nobs at
build time then the correct thing to do is to parse the DTB. The ARM
port of mini-os (xen.git/extras/mini-os) has some initial code to do
that, with other bits being in Thomas Leonard's remaining patches (I'm
not sure if even that is complete, but it is in the right direction).
Note that Xen 4.5 has moved a bunch of stuff around, in particular the
GIC, to make room for more guest low RAM.
Ian.
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [Xen-users] ANN: FreeRTOS 7.6.0 for Xen on ARM released
2015-01-20 10:14 ` [Xen-users] ANN: FreeRTOS 7.6.0 for Xen on ARM released Ian Campbell
@ 2015-01-20 19:31 ` Jonathan Daugherty
0 siblings, 0 replies; 2+ messages in thread
From: Jonathan Daugherty @ 2015-01-20 19:31 UTC (permalink / raw)
To: Ian Campbell; +Cc: xen-users, xen-devel
> BTW, I notice that you have hardcoded the GIC addresses and various
> interrupt sources. We do not make any guarantees about the guest
> virtual platform memory or interrupt layout beyond committing to
> correctly describing them in the Device Tree Blob which is passed to
> the guest kernel at start of day.
Okay. I will definitely update the README and add a note about this
caveat. I was aware of this at the time I wrote the code and had the
intention of going back and doing it the Right Way, but I had to move on
due to time constraints. As time allows, I will clean it up.
And I would of course welcome any other feedback for improving this!
Thanks!
--
Jonathan Daugherty
Software Engineer
Galois, Inc.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2015-01-20 19:31 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20150119191238.GA15495@galois.com>
[not found] ` <1421747758.10440.184.camel@citrix.com>
2015-01-20 10:14 ` [Xen-users] ANN: FreeRTOS 7.6.0 for Xen on ARM released Ian Campbell
2015-01-20 19:31 ` Jonathan Daugherty
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.