未验证 提交 0bd6008a 编写于 作者: J Jared Parsons 提交者: GitHub

Merge pull request #29883 from jaredpar/fix-doc

Doc update for Linux debugging
......@@ -47,6 +47,35 @@ command line (replace `/home/jaredpar` as appropriate):
From there you should be able to attach to running processes or load up coredumps.
### Core Dumps
The CoreClr does not used the standard core dumping mechanisms on Linux. Instead you must specify via
enviroment variables that you want a core dump to be produced. The simplest setup is to do the following:
```
> export COMPlus_DbgEnableMiniDump=1
> export COMPlus_DbgMiniDumpType=4
```
This will cause full memory dumps to be produced which can then be loaded into LLDB.
### GC stress failures
When you suspect there is a GC failure related to your test then you can use the following environement variables
to help track it down.
```
> export COMPlus_HeapVerify=1
> export COMPlus_gcConcurrent=1
```
The `COMPlus_HeapVerify` variable causes GC to run a verification routine on every entry and exit. Will crash with
a more actionable trace for the GC team.
The `COMPlus_gcConcurrent` variable removes concurrency in the GC. This helps isolate whether this is a GC failure
or memory corruption outside the GC. This should be set after you use `COMPLUS_HeapVerify` to determine it is
indeed crashing in the GC.
Note: this variables can also be used on Windows as well.
## Ubuntu 18.04
The recommended OS for developing Roslyn is Ubuntu 18.04. This guide was written using Ubuntu 18.04 but should be
applicable to most Linux enviroments. Ubuntu 18.04 was chosen here due to it's support for enhanced VMs in Hyper-V.
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册