“For every action there is an equal and opposite reaction.”
We’ve had quite a few reports about odd crashes, most of them known to be so called Native crashes, where mono cries out in terror and dies without telling us why.
Initially this thread was to collect important information about the systems on which the crashes occurred.
Since this thread was posted I’ve literally spent more than a hundred hours investigating this issue.
Debugging Sonarr and mono countless times, compiled mono half a dozen times, even compiled the linux kernel several times.
Late April I finally isolated a problem in a linux kernel update.
From what I can see, the problem is specific to virtual machines and has to do with how the kernel detects whether a thread execution was moved from one physical cpu core to another. (It’s specific to VMs running on multi-core hosts… which is pretty much all of them nowadays)
Contrary to earlier reports, this issue likely affects both Virtual and Physical machines.
Please note that this was a regression in the kernel and got fixed later on in linux 4.0.
The first UBUNTU kernel version in which it occurred first was 3.13.0-48.
Once I got all the information and a possible solution, it was reported to the Ubuntu Kernel team. They already committed those changes in the vNext branch.
Those updates have now been released to the main ubuntu repository.
The kernel updates are currently in trusty-update:
Trusty 3.13.0-54
Utopic 3.16.0-40 (which gets installed on new Trusty installs too via LTS backport)
Looks like linux kernel 4.1.x has a similar issue again
##References
Xamarin: https://bugzilla.xamarin.com/show_bug.cgi?id=29212 (stalled, pending kernel fixes)
Ubuntu: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1450584 (committed, pending release)
Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=784960 tnx to @adhawkins
Emby: http://emby.media/community/index.php?/topic/19955-emby-crashing-ubuntu-server/?p=207271