Re: I/O flexpages / new mapping DB issue with overlapping ports
Espen Skoglund <[email protected]>
| Newsgroups | gmane.comp.micro-kernel.l4.l4ka.general |
|---|---|
| Message-ID | <[email protected]> |
[Frank Mehnert]
> Espen, sorry for bothering you again but there still something
> wrong, I got another assertion:
Yeah. After I committed the stuff yesterday I tried out some weird
configurations which triggered some problems. I didn't get around too
look into it yet, though.
> [root task has mapped all I/O ports from Sigma0. hello requests
> several I/O fpages from root task, I enabled tracepoints VRT_MAP
> and VRT_MAPCTRL]
> [...]
> io<f0352040>::map (fp=dc000826 [0000dc00,2] base=0000dc00) to io<f0352060>
> (fp=00004020 [00000000,16])
> Assertion t_node->is_valid () && t_node->is_table () && t_node->get_table
> ()->match_prefix (t_addr) failed in
> [...]
> 0000dc00 [1] port: dc00, space: f0358000
> 0000dc00 table [objsize=8 radix=32 count=5] (f03630c0)
> 0000dc00 table [objsize=2 radix=4 count=2] (f0363170)
> 0000dc00 [2] port: dc00, space: fe01e000
> 0000dc02 [2] port: dc02, space: fe01e000
> 0000dc10 table [objsize=1 radix=2 count=1] (f0363140)
> 0000dc10 [2] port: dc10, space: fe01e000
Seems like the first half of ports were mapped OK, but the latter half
were not (MDB_MAP would tell you if this was the case). Would also be
good to see the actual IO spaces themselves ("aP" in the kernel
debugger). Anyhow, I think the other problems I ran into yesterday
might be related to this problem, so you may want to just let me look
into those first.
eSk