Hi,
On 09/15/2014 12:10 AM, Adam Lackorzynski wrote:
l4_fpage(i, L4_LOG2_PAGESIZE, L4_FPAGE_RWX),
A size needs to be specified for the fpage. And read-only will not be enough, as for example, the stack needs to be written by the thread functions.
Unfortunately, the issue is still the same. I'm mapping everything from _stext & L4_PAGEMASK to _end & L4_PAGEMASK after having mapped the pager to my new task, but each time one of my created threads is still waiting for '1b'. Besides, I'm getting a huge list of kernel warnings with the new l4_fpage call that hasn't been there before. I've attached it to this mail. So basically it's still the same code that I've sent you on September 5th, but in addition, there's the following loop beginning at line 57 in lib/src/edft.c now:
extern char _stext[]; extern char _end[];
for (unsigned long i = ((unsigned long)_stext & L4_PAGEMASK); i < ((unsigned long)_end & L4_PAGEMASK); i += L4_PAGESIZE) { l4_task_map(task_cap, L4RE_THIS_TASK_CAP, l4_fpage(i, L4_LOG2_PAGESIZE, L4_FPAGE_RWX), l4_map_control(i, 0, L4_MAP_ITEM_MAP)); }
Best regards, Valentin