mono 2.6 port
Romain Tartière
romain at blogreen.org
Fri Jan 29 12:07:27 UTC 2010
On Fri, Jan 29, 2010 at 12:55:44PM +0100, Bert Moorthaemer wrote:
> Didn't this problem exist on 2.4? I have googled on this and found that
> Linux introduced this flag to make context switching faster on some older
> x64 processors. Currently most x64 processors don't suffer from this
> anymore. Did you try to compile and run the mono compiler without the
> MAP_32BIT flag?
Well, the autotools stuff detects whether MAP_32BIT is available or not
and do not use it on FreeBSD amd64 since it does not exist. This does
not prevent mono from working.
However, the mono debugger relies on some black-magic that suppose
mmapped pages addresses fit in 32 bits, and it checks this e.g.:
mini/mini-amd64.c:3509: g_assert (((guint64)ss_trigger_page >> 32) == 0);
I have not dig much into this, but the 64bit ss_trigger_page variable
seems to be used for storing an address in the 32 lower bits and some
register values in the higher 32 bits ... Basically, removing the
assertions will not do the trick, and macros used to manipulate
ss_trigger_page are calling other macros with "32" in their name while
similar macros exists with "64" instead of "32". I guess this is to
avoid using a data structure that would reduce performances that this
was designed this way.
Before taking more time on this I would like to know that it works on
FreeBSD i386: if yes, I could consider changing this to use some
data-structures on amd64; if no I guess I'll have a very bad time :-(
Any help is of course welcome!
Thanks!
Romain
--
Romain Tartière <romain at blogreen.org> http://romain.blogreen.org/
pgp: 8DAB A124 0DA4 7024 F82A E748 D8E9 A33F FF56 FF43 (ID: 0xFF56FF43)
(plain text =non-HTML= PGP/GPG encrypted/signed e-mail much appreciated)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 196 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-mono/attachments/20100129/75190e0c/attachment.pgp
More information about the freebsd-mono
mailing list