[Bug 229710] lang/mono: port to aarch64

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

[Bug 229710] lang/mono: port to aarch64

bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=229710

            Bug ID: 229710
           Summary: lang/mono: port to aarch64
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: Individual Port(s)
          Assignee: [hidden email]
          Reporter: [hidden email]
          Assignee: [hidden email]
             Flags: maintainer-feedback?([hidden email])

Created attachment 195063
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=195063&action=edit
mono-aarch64.patch

I don't know why I did this, I'm not even planning to use .NET on my RPi3, I
guess it was just bothering me that it worked on armv7 and not aarch64… (also I
needed to do something in parallel while Crystal was compiling on the ThunderX
I rented from packet.net)

Hopefully I didn't screw anything up (I was modifying the port as errors
appeared, did not clean and rebuild from scratch — it's slow and access to a
ThunderX is expensive… honestly it's not much faster than RPi here because of
an issue described below)

The Roslyn C# compiler has a concurrency problem on aarch64:
https://github.com/mono/mono/issues/7017 (not FreeBSD specific) so the
workaround is to disable parallelism… so the .NET libraries are built very very
slowly :(

BoringSSL patch is from bug 223019 but slightly modified (to ignore
<sys/auxv.h>), see comment in that thread.

Also there was an intermittent jemalloc error, had to restart the build once:

<jemalloc>:
/usr/src/contrib/jemalloc/include/jemalloc/internal/extent_inlines.h:63: Failed
assertion: "szind < NSIZES"                                                    

=================================================================
Got a SIGABRT while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries
used by your application.
=================================================================

gmake[14]: *** [../../../build/library.make:342:
../../../class/lib/net_4_x-linux/Facades/System.IO.FileSystem.Primitives.dll]
Abort trap (core dumped)

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
[hidden email] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-mono
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|

maintainer-feedback requested: [Bug 229710] lang/mono: port to aarch64

bugzilla-noreply
Bugzilla Automation <[hidden email]> has asked freebsd-mono mailing list
<[hidden email]> for maintainer-feedback:
Bug 229710: lang/mono: port to aarch64
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=229710



--- Description ---
I don't know why I did this, I'm not even planning to use .NET on my RPi3, I
guess it was just bothering me that it worked on armv7 and not aarch64… (also I
needed to do something in parallel while Crystal was compiling on the ThunderX
I rented from packet.net)

Hopefully I didn't screw anything up (I was modifying the port as errors
appeared, did not clean and rebuild from scratch — it's slow and access to a
ThunderX is expensive… honestly it's not much faster than RPi here because of
an issue described below)

The Roslyn C# compiler has a concurrency problem on aarch64:
https://github.com/mono/mono/issues/7017 (not FreeBSD specific) so the
workaround is to disable parallelism… so the .NET libraries are built very very
slowly :(

BoringSSL patch is from bug 223019 but slightly modified (to ignore
<sys/auxv.h>), see comment in that thread.

Also there was an intermittent jemalloc error, had to restart the build once:

<jemalloc>:
/usr/src/contrib/jemalloc/include/jemalloc/internal/extent_inlines.h:63: Failed
assertion: "szind < NSIZES"      


=================================================================
Got a SIGABRT while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries
used by your application.
=================================================================

gmake[14]: *** [../../../build/library.make:342:
../../../class/lib/net_4_x-linux/Facades/System.IO.FileSystem.Primitives.dll]
Abort trap (core dumped)
_______________________________________________
[hidden email] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-mono
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|

[Bug 229710] lang/mono: port to aarch64

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=229710

Greg V <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Blocks|                            |201763
                 CC|                            |[hidden email]


Referenced Bugs:

https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=201763
[Bug 201763] Tracking bug for AArch64 port build failures
--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
[hidden email] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-mono
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|

[Bug 229710] lang/mono: port to aarch64

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=229710

[hidden email] changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |[hidden email]

--- Comment #1 from [hidden email] ---
(In reply to Greg V from comment #0)
Can you regenerate the patch, the plist patch is broken:
svn patch --strip 3 --dry-run patch.aarch64
U         Makefile
>         applied hunk @@ -60,6 +60,15 @@ with offset 4
>         applied hunk @@ -88,4 +97,4 @@ with offset 4
A         files/extra-patch-aarch64-race-workaround
U         files/patch-configure.ac
A         files/patch-external_boringssl_crypto_cpu-aarch64-linux.c
A         files/patch-mono_sgen_sgen-archdep.h
A         files/patch-mono_utils_mono-sigcontext.h
C         pkg-plist
>         rejected hunk @@ -2937,38 +2937,38 @@
Summary of conflicts:
  Text conflicts: 1


It builds fine on -current (I don't have the jemalloc issue and I don't need
the extra patch on my board), have you tried on 11.1 or 11.2?

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
[hidden email] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-mono
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|

[Bug 229710] lang/mono: port to aarch64

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=229710

Greg V <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #195063|0                           |1
        is obsolete|                            |

--- Comment #2 from Greg V <[hidden email]> ---
Created attachment 195945
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=195945&action=edit
mono-aarch64.patch

Sure, this should be a diff against current master.

I only tried on CURRENT.

jemalloc — maybe you got lucky, it only happened once during my build. Or maybe
this was fixed — I used an old current snapshot for the build.

extra-patch — looks like the model of the processor matters. The concurrency
bug is definitely happening on Cavium ThunderX (it's been happening to everyone
on Linux before I even tried on FreeBSD).

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
[hidden email] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-mono
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|

[Bug 229710] lang/mono: port to aarch64

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=229710

--- Comment #3 from [hidden email] ---
It builds fine on 11.1.

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
[hidden email] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-mono
To unsubscribe, send any mail to "[hidden email]"