microsoft / microsoft/vscode-cpptools

stack walk fail: current thread changes after break

オープン
#8,367 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

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-frames to 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

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

issue に記載されている組み込み Linux カーネルのデバッグケースを再現し、ブレークポイント停止イベント、stack-list-frames コマンド、および報告されたスレッド切り替えエラーに焦点を当ててください。thread 10 に対するデバッガーの処理を追跡し、ブレークポイント後のスタックウォーキングが成功し、選択された thread を実行中として報告しないことを確認してください。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
cpp, linux, typescript, vscode
領域
devtools, operating-systems
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
30/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。