<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Jul 5, 2013 at 6:42 PM, Sebastian Huber <span dir="ltr"><<a href="mailto:sebastian.huber@embedded-brains.de" target="_blank">sebastian.huber@embedded-brains.de</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div class="im">On 05/07/13 18:30, Gedare Bloom wrote:<br>

<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
On Fri, Jul 5, 2013 at 12:11 PM, Hesham Moustafa<br>
<<a href="mailto:heshamelmatary@gmail.com" target="_blank">heshamelmatary@gmail.com</a>>  wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
>Hi,<br>
><br>
>I am working on a use case for cortex-a9/realview BSP that deals with page<br>
>tables and MMU. I need your help in gathering the required API and calls and<br>
>any other details to implement the following case (if applicable) :<br>
><br>
>1- A thread running on a core that updates the page table.<br>
>2- On another core another thread is running and trying to update the page<br>
>table.<br>
><br>
>Is that use case possible, or disabling dispatches, MMU, and interrupts<br>
>avoids that situation ?<br>
><br>
</blockquote>
I think this is a possible situation. I suppose right now the page<br>
tables are statically initialized by a boot processor, but if you<br>
enable dynamically modifying the page table, then you need to protect<br>
that memory somehow. Probably with a spin lock.<br>
<br>
</blockquote>
<br></div>
Currently the cache and MMU support on the Cortex-A9 BSPs is broken, e.g. it doesn't work on real hardware.  We work on this issue, but it will take a couple of weeks to get it fixed.<br>
<br>
The MMU management on SMP will be hard.  Please read the ARMv7 reference manual carefully.<span class=""><font color="#888888"><br>
<br></font></span></blockquote><div>I am reading it currently and trying and try to merge your code into libmm as part of my GSoC project. This</div><div>is my repo that contains the changes [1]. It would be great if you have sometime to review it.</div>
<div><br></div><div>[1] <a href="https://github.com/heshamelmatary/rtems-gsoc2013/tree/low-level-libmm">https://github.com/heshamelmatary/rtems-gsoc2013/tree/low-level-libmm</a></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<span class=""><font color="#888888">
-- <br>
Sebastian Huber, embedded brains GmbH<br>
<br>
Address : Dornierstr. 4, D-82178 Puchheim, Germany<br>
Phone   : +49 89 189 47 41-16<br>
Fax     : +49 89 189 47 41-09<br>
E-Mail  : <a href="mailto:sebastian.huber@embedded-brains.de" target="_blank">sebastian.huber@embedded-<u></u>brains.de</a><br>
PGP     : Public key available on request.<br>
<br>
Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.<br>
<br>
</font></span></blockquote></div><br></div></div>