Eiji Ota age@yk.fujitsu.co.jp writes:
I'm interested in this fantastic work(of course, L4). When I tried to feel it, I faced an assertion failed by assert(size == PAGE_SIZE) in space.cc(178 line).
The wrong page size seemed to be passed by fpage_map in ipc_map.cc as a SUPERPAGE_SIZE, but I don't find the root cause for this trouble.
I wrote:
I think I have a theory on what the problem in Fiasco is (more on that below). However, it would still be useful to know what the system is trying to do when the error occurs; this would help me to reproduce and track down the problem.
My theory is that we fail to test rigorously enough that a receiver really has enough space in its virtual address space to take a superpage mapping. I think we currently test that just 4K are unmapped in the receiver (that is, no mapping exists for the target virtual address); that's not enough.
Please try the patch appended below.
I still would like to know which program triggers this problem as I have not been able to reproduce it.
Regards, Michael