microsoft / microsoft/vscode-cpptools
stack walk fail: current thread changes after break
オープン
まだ誰も着手していません。
debugger
embedded
- 主要言語
- TypeScript
- スター
- 6.2k
- フォーク
- 1.7k
- 平均マージ
- 14時間 46分
- マージ済み PR(30日)
- 61
説明
Bug type: Debugger
Describe the bug
- OS and Version: ubuntu 18.04
- VS Code Version: 1.61.2
- C/C++ Extension Version: 1.7.1
- Other extensions you installed (and if the issue persists after disabling them):
- A clear and concise description of what the bug is : The current thread changes right after break causing the command
stack-list-framesto fail.
To Reproduce
Embedded linux kernel debugging
1: (49668) ->*stopped,reason="breakpoint-hit",disp="keep",bkptno="2",frame={addr="0xffffff80037a3390",func="kvx_eth_get_ethtool_stats",args=[{name="netdev",value="0xffffff804a0f0000"},{name="stats",value="0xffffff80495afbe8"},{name="data",value="0xffffff90400d5000"}],file="<path>",fullname="<path>",line="116",arch="kvx:kv3-1:64"},thread-id="10",stopped-threads=["10"]
116 {
1: (49668) <-1035-stack-list-frames 0 1000
1: (49668) ->1035^error,msg="Selected thread is running."
1: (49668) ->(gdb)
1: (49669) 1035: elapsed time 0
1: (49669) Stack walk failed on thread: 10
1: (49670) Send Event AD7MessageEvent
ERROR: Error while trying to enter break state. Debugging will now stop. Failed to find thread 10 for break event
1: (49671) <--gdb-exit
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
issue に記載されている組み込み Linux カーネルのデバッグケースを再現し、ブレークポイント停止イベント、stack-list-frames コマンド、および報告されたスレッド切り替えエラーに焦点を当ててください。thread 10 に対するデバッガーの処理を追跡し、ブレークポイント後のスタックウォーキングが成功し、選択された thread を実行中として報告しないことを確認してください。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- cpp, linux, typescript, vscode
- 領域
- devtools, operating-systems
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 30/100