MONO_ARCH_EXPLICIT_NULL_CHECKS
<[email protected]> Tue, 27 Feb 2018 15:42:32 -0400
| Newsgroups | gmane.comp.gnome.mono.devel |
|---|---|
| Message-ID | <[email protected]> |
--===============8608021777133025769==
Content-Type: multipart/alternative;
boundary="_17C41D40-3C4B-489E-9EED-868138835126_"
--_17C41D40-3C4B-489E-9EED-868138835126_
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain; charset="utf-8"
Heads up for the S390X people on the list: (and anyone attempting to port M=
ono to similar platforms) I=E2=80=99ve heard S390X Linux has a =E2=80=98nul=
l page=E2=80=99 that allows reading from NULL; circumventing the runtime=E2=
=80=99s signal handler to detect such things. I know AIX also has it, which=
is why I got MONO_ARCH_EXPLICIT_NULL_CHECKS added to master. Since I don=
=E2=80=99t have access to S390X to verify; if you run into issues with thin=
gs that dereference null *and* are resolved with MONO_DEBUG=3D=E2=80=99expl=
icit-null-checks=E2=80=99, then you should probably add said define to the =
architecture-specific headers for the JIT.
--_17C41D40-3C4B-489E-9EED-868138835126_
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html; charset="utf-8"
<html xmlns:o=3D"urn:schemas-microsoft-com:office:office" xmlns:w=3D"urn:sc=
hemas-microsoft-com:office:word" xmlns:m=3D"http://schemas.microsoft.com/of=
fice/2004/12/omml" xmlns=3D"http://www.w3.org/TR/REC-html40"><head><meta ht=
tp-equiv=3DContent-Type content=3D"text/html; charset=3Dutf-8"><meta name=
=3DGenerator content=3D"Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:"Yu Gothic";
panose-1:2 11 4 0 0 0 0 0 0 0;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
{font-family:"\@Yu Gothic";
panose-1:2 11 4 0 0 0 0 0 0 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0cm;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:#954F72;
text-decoration:underline;}
.MsoChpDefault
{mso-style-type:export-only;}
@page WordSection1
{size:612.0pt 792.0pt;
margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
{page:WordSection1;}
--></style></head><body lang=3DEN-CA link=3Dblue vlink=3D"#954F72"><div cla=
ss=3DWordSection1><p class=3DMsoNormal>Heads up for the S390X people on the=
list: (and anyone attempting to port Mono to similar platforms) I=E2=80=99=
ve heard S390X Linux has a =E2=80=98null page=E2=80=99 that allows reading =
from NULL; circumventing the runtime=E2=80=99s signal handler to detect suc=
h things. I know AIX also has it, which is why I got MONO_ARCH_EXPLICIT_NUL=
L_CHECKS added to master. Since I don=E2=80=99t have access to S390X to ver=
ify; if you run into issues with things that dereference null *<b>and</b>* =
are resolved with MONO_DEBUG=3D=E2=80=99explicit-null-checks=E2=80=99, then=
you should probably add said define to the architecture-specific headers f=
or the JIT.<o:p></o:p></p></div></body></html>=
--_17C41D40-3C4B-489E-9EED-868138835126_--
--===============8608021777133025769==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTW9uby1kZXZl
bC1saXN0IG1haWxpbmcgbGlzdApNb25vLWRldmVsLWxpc3RAbGlzdHMuZG90Lm5ldApodHRwOi8v
bGlzdHMuZG90Lm5ldC9tYWlsbWFuL2xpc3RpbmZvL21vbm8tZGV2ZWwtbGlzdAo=
--===============8608021777133025769==--