Kevin Gosse 3/16/2021

An unconventional way of investigating a NullReferenceException

Read Original

The article details an investigation into a .NET integration test failing only on ARM64 Linux. Using LLDB, the author traces the crash to a segmentation fault during virtual method dispatch on a null reference, uncovering a missing null check in the runtime's `AdjustContextForVirtualStub` function. It explains how the .NET runtime converts hardware faults to NullReferenceExceptions and the specific native code path that caused the fatal crash, concluding with building a custom CLR fix and an attempt to write a reproducer.

An unconventional way of investigating a NullReferenceException

Comments

No comments yet

Be the first to share your thoughts!

Browser Extension

Get instant access to AllDevBlogs from your browser

Top of the Week

1
The Beautiful Web
Jens Oliver Meiert 2 votes
3
LLM Use in the Python Source Code
Miguel Grinberg 1 votes
4
Wagon’s algorithm in Python
John D. Cook 1 votes