Hi L4 hackers,
recently I started to use L4Linux r37 on ARM and experienced some issues with the 'sys_mmap_pgoff'-system call. When a user-level task tried to map a file the 'pgoff' parameter was usually bogus. Doing a little research I found that it was caused by the 'sys_mmap2' implementation in 'entry.S'. The function overwrites the 'pgoff' argument on the stack with r5 (as it is usually passed from user land), since in L4Linux this code gets called from the dispatch routine, 'pgoff' was set to whatever r5 was, and thus leading to bus errors later on.
Cheers,
Sebastian