test_lsp.py's LSan check misses leaks hidden by a stale stack pointer
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 初心者へのやさしさ
- 78/100
- issue の種類
- バグ
- 明瞭さ
- 明確に書かれている
- 活発さ
- 活発
- 領域
- testing-qa
調査の方向性
test_lsp.py の LSan の「no sanitizer reports」チェックから始め、eigenlsp の起動方法を確認します。LSAN_OPTIONS=use_stacks=0:use_registers=0 を指定してチェックを実行し、次に src/eigenlsp.c から free_scopes を削除すると、仕込まれたリークテストが失敗することを確認します。新たに明らかになった偽陽性は、修正するか、その理由を添えて文書化します。
索引モデルが issue の本文から書いたものです。
説明
Found by the blind critic on #1364. With free_scopes deleted from src/eigenlsp.c (a real leak of the rename scope table), the harness's "no sanitizer reports" check passed. Under normal LSAN options: rc 0, no report. With LSAN_OPTIONS=use_stacks=0:use_registers=0: Direct leak of 512 byte(s). A stale pointer left on the stack keeps the block "reachable", so the leak class the harness claims to watch is invisible to it.
Done when
- The LSP leak check runs eigenlsp with
use_stacks=0:use_registers=0(or an equivalent that sees this class), and the plantedfree_scopesdeletion turns it red. - Any false positives that setting surfaces are fixed or listed with a reason.
- 主要言語
- C
- スター
- 3
- フォーク
- 7
- 平均マージ
- 4時間 7分
- マージ済み PR(30日)
- 112
環境構築
このプロジェクトの開発コンテナを、あなたの GitHub アカウントでブラウザ上に起動します。
- Dockerfile または Docker Compose ファイルあり
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
InauguralSystems/EigenScript のほかの issue
-
area:embed kind:silent-wrong
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
InauguralSystems/EigenScript#1387 ·
メンテナーはふだん 1 日以内に返信
-
area:stdlib kind:silent-wrong
難易度 2/5 1〜3時間 初心者へのやさしさ 86/100
InauguralSystems/EigenScript#1378 ·
メンテナーはふだん 1 日以内に返信
-
Error carets pad multi-byte UTF-8 byte-for-byte, so the ^ lands right of the token on a terminalオープンarea:lint-tooling kind:silent-wrong
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
InauguralSystems/EigenScript#1373 ·
メンテナーはふだん 1 日以内に返信
-
area:gates kind:docs-drift
難易度 1/5 1時間未満 初心者へのやさしさ 88/100
InauguralSystems/EigenScript#1372 ·
メンテナーはふだん 1 日以内に返信
-
area:lint-tooling enhancement
難易度 2/5 1〜3時間 初心者へのやさしさ 86/100
InauguralSystems/EigenScript#1371 ·
メンテナーはふだん 1 日以内に返信
InauguralSystems/EigenScript の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 90/100
BasedHardware/omi#19711 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 85/100
microsoft/ebpf-for-windows#5604 ·
メンテナーはふだん 3 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
trezor/trezor-firmware#7985 ·
メンテナーはふだん 2 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
メンテナーはふだん 2 日以内に返信