[Mono-dev] [PATCH] Block map support for sgen

Rodrigo Kumpera kumpera at gmail.com
Sat Jun 5 12:05:32 EDT 2010


Your're getting this because the block map patch isn't 64 bits ready. Next
time I'll #error
on 64bits to avoid such hassle.

Next week is HackWeek and I'll be diverted from sgen work, so I'll resume on
the 14th
doing the following improvements:

Make it work on 64bits, which means fixing this silly recursion bug and work
on the
level0 hash table.

Move all of it to sgen-blockmap.c.

Embed the memory region type on the region pointer itself to see how code
ends up looking like.
This saves a load from possibly cold memory, reduces region header size and
remove a ton of
noise from the LOS patch.

Cheers,
Rodrigo

On Sat, Jun 5, 2010 at 8:09 AM, Mark Probst <mark.probst at gmail.com> wrote:

> Hi Rodrigo,
>
> With the first two patches applied I get an endless recursion:
>
> ...
> #148 0x000000000052350c in get_internal_mem (size=8192, type=<value
> optimized out>) at sgen-gc.c:3926
> #149 0x00000000005235a4 in block_map_register_block
> (block=0x7fff9ad60000, start=<value optimized out>, end=3)
>    at sgen-gc.c:1121
> #150 0x000000000052350c in get_internal_mem (size=8192, type=<value
> optimized out>) at sgen-gc.c:3926
> #151 0x00000000005235a4 in block_map_register_block
> (block=0x7fff9ada0000, start=<value optimized out>, end=3)
>    at sgen-gc.c:1121
> #152 0x000000000052350c in get_internal_mem (size=8192, type=<value
> optimized out>) at sgen-gc.c:3926
> #153 0x00000000005235a4 in block_map_register_block
> (block=0x7fff9ade0000, start=<value optimized out>, end=3)
>    at sgen-gc.c:1121
> #154 0x000000000052350c in get_internal_mem (size=8192, type=<value
> optimized out>) at sgen-gc.c:3926
> #155 0x00000000005235a4 in block_map_register_block
> (block=0x7fff9ae20000, start=<value optimized out>, end=3)
>    at sgen-gc.c:1121
> #156 0x000000000052350c in get_internal_mem (size=8192, type=<value
> optimized out>) at sgen-gc.c:3926
> #157 0x00000000005235a4 in block_map_register_block
> (block=0x7fff9ae60000, start=<value optimized out>, end=3)
>    at sgen-gc.c:1121
> ...
>
> I've attached the first two patches adapted to the new LOS code.
>
> It would be nice if all the block map code was in a separate file
> (sgen-blockmap.c).
>
> Mark
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.ximian.com/pipermail/mono-devel-list/attachments/20100605/c102d606/attachment.html 


More information about the Mono-devel-list mailing list