Loongson CPU に付与された失われた原子アップデートについて

2026/09/24 17:36

Loongson CPU に付与された失われた原子アップデートについて

RSS: https://news.ycombinator.com/rss

要約▶

Japanese 翻訳:

重要なハードウェアバグとして、LoongArch プロセッサに影響する CPU エラー (Erratum) が特定されました。これは、LA664 コアを採用する Loongson 3C6000/S および 3A6000 チップに限定されています。2026 年 2 月に Wang Miao 氏による Debian ソフトウェアのパッケージ化作業中に発見されたこの問題は、相互干渉するベクトルメモリ読み出しに関わる特定の条件下で原子命令(例えば

amadd
)が偶発的に失敗することによって発生します。手動によるデバッグ活動が行われて半年間 Reproducer を削減できず、その後 2026 年 8 月に AI 支援分析によって
memcpy
が LSX/LASX ベクトル命令を使用して行われる場合、異なる物理コア上のスレッドが適切な同期またはデータバリアなしに動作する際に失敗が発生することが特定されました。

この欠陥は、リファレンスカウンター機構(例:Rust の

std::sync::Arc
)を妨害し、使い捨て後の自由(use-after-free)脆弱性、ヒープ破損、ならびに OpenMP などの並列タスク中のプログラムクラッシュを引き起こすことで、ソフトウェアの信頼性に深刻な影響を及ぼします。テストでは、これらの特定の条件下でデータバリアが存在しない限り、原子操作が更新を失うことが約 100% の確率で確認されました。この問題は、データバリアの挿入または glibc のマルチアーキテクチャサポートを無効化することで成功裏に緩和されています(ただし後者は LASX の使用を完全に妨げます)。

コード変更を行わずにこれを恒久的に解決するため、Loongson は 2026 年 9 月 9 日にテスト用ファームウェアをリリースし、内部 MCSR24 CSR のビット 13 を設定してこのエラーを無効化しました。パフォーマンスへの影響は最小限であり、フルリリースは 10 月上旬頃を予定していました。即座に更新ができないユーザー向けの代替策として、Linux カーネル内でこの特定のビット設定を直接適用する手動ワークアラウンドが存在します。この発見は、Wang Miao 氏、Rong「Mantle」Bao 氏、ならびに Loongson のチップ R&D 部と開発者コミュニティ運用部の協力によってなされました。ARM を含む複数のベンダで同様のメモリアクセスまたは原子命令のエラーが発生していますが、ユーザー体験に重大な影響を与えるものは稀であり、これは並列処理環境における LoongArch の弱いメモリモデルに関連した注目すべき事件です。

本文

LoongArch CPU エラータ報告:失われた原子操作とファームウェア修正

TL;DR

  • 問題発生: 2026 年 2 月、
    normaliz
    パッケージのビルド時に無限ループが発生しました。
  • 原因特定: OpenMP の
    #pragma omp atomic
    で共有変数を更新する際、実際には増分されず(失われた更新)、終了条件を満たせなかったためです。
  • 根本原因: **LoongArch 上の LASX ベクトル化メモリアドレス読取命令 (
    xvld
    )**と特定アドレスの原子操作が混在することで、CPU が原子性を欠くバグを引き起こしました。
  • 解決策: Loongson 社は約 2 ヶ月で修正ファームウェア(MCSR24 レジスタ 13 ビットのセット)を開発し、国庆節前に提供予定です。

発端:コミュニティプロジェクトにおける無限ループ

  • 背景:
    loong13
    プロジェクト(Debian 13 stable for LoongArch)のメンテナーが、
    normaliz
    パッケージをビルド中に遭遇した問題です。
  • 現象: ソースコードの組み込みテストで無限ループに陥り、パッケージ化がタイムアウトしました。
  • 初期仮説: 以前他パッケージで経験済みの「競合条件」や「メモリ順序付け」によるものかと推測しましたが、LoongArch の弱いメモリモデル特有の問題ではないかと疑いました。

第一次調査:ソフトウェアと OpenMP の罠

  • コードの構造:
    • normaliz
      は OpenMP を使用し、データポイント(リスト)を並列処理しています。
    • ループ終了条件は「処理済み数 (
      nr_points_matched
      ) が総数 (
      nr_to_match
      ) と一致する」ことに設定されています。
  • 不具合のメカニズム:
    • 処理済みカウンタが増加せず、すべての要素が「処理済み」マーク(
      continue
      )されているにもかかわらずループ終了に至りませんでした。
    • 理論上
      nr_points_matched
      と
      nr_points_done_in_this_round
      は一致すべきでしたが、実際には値の不一致と不安定な差分が見られました。
  • 仮説検証:
    • メモリ順序付けの問題ではないことが判明(他の変数との同期がないため)。
    • OpenMP 実装の不備か?アセンブリを確認すると
      amadd.d
      命令が生成されていました。
    • 最小限の再現例を作成しようとしたが、コードが複雑すぎたため根本的な解決策は見つからず、問題保留となりました。

第二次調査:AI を活用した根掘り葉掘り

  • アプローチ: ソフトウェアバグではなくCPU ハードウェアの不具合である可能性を AI に分析させる手法に変更しました。
    • 「他のアーキテクチャにはない」という事実や、問題が原子操作にあることを提示し、最小再現例の生成を指示しました。
  • 発見:
    • AI は処理関数内の
      memcpy
      呼び出しに注目しました。
    • 根本原因: glibc の
      memcpy
      がハードウェア能力(LSX/LASX)に基づきベクトル命令で加速される際、特定条件下で「失われた原子加算」を引き起こすことが判明しました。

調査範囲の拡大:原子命令とメモリ操作

  • 他の原子命令への影響:
    • CAS (Compare-And-Swap) も同じ問題を抱えていることが確認されました。
    • amswap
      ,
      ammax
      ,
      ammin
      なども同様の「失われた更新」が発生しますが、結果が正しくても検知が困難です。
  • トリガー条件の特定:
    • LASX ベクトル化メモリアドレス読取 (
      xvld
      ) が唯一の引き金でした。
    • スカラー読取 (
      vld
      など) は通常問題を引き起こしません(例外:原子アドレスと読み取りアドレスが特定位置関係にある場合)。

具体的な結論:失われた原子操作の条件

LoongArch 3A6000/5000 に比べ、3C6000/S と 3A6000 は LA664 コア(LA464)を採用し、SIMD 拡張を持っています。この環境で以下の 3 つの条件が同時に満たされるときに発生します:

  1. 物理コアの違い: 処理スレッドが異なる物理コア上で動作していること。(SMT ロジカルコア間では発生しない)。
  2. データバリアなし: 同一アドレスに対して、データバリア (
    _db
    ) を伴わない
    原子操作を実行していること。
  3. メモリ読み取りの挿入: 少なくともいずれかのスレッドが原子操作の間や後に、メモリアドレス読取(LASX
    xvld
    )を挟んでいること。

注意: LASX の場合、特定の位置関係にある場合は通常のスカラー読取でも発生する可能性があります。

再現と測定データ

最小限のテストプログラムによる統計結果(30 回試行中):

原子操作両者 LASX コピー両者 LASX 読取 (
xvld
)
片方 LASX コピー
amadd.d
67%100%53%
amadd.w
73%100%67%
amcas.d
77%97%17%
ammax.d
43%100%50%
amswap.d
53%100%53%
  • 注: 「両者 LASX 読取」の条件でほぼ常に(100%)問題が発生します。

環境による再現性の違い(AOSC vs Debian)

  • 2 月の状態: AOSC OS と Debian の両方で再現可能でした(両者とも
    memcpy
    で LASX を使用)。
  • 8 月の状態: AOSC でのみ問題が消失し、Debian では依然として発生しました。
    • 原因:AOSC Core 13 リリースで誤って glibc の
      --enable-multi-arch
      が無効化され、LASX 加速パスが使われなくなったためです。
    • Debian は通常通り LASX を使用するため再現されました。
  • 今後の見通し: AOSC が Core 14 でオプションを有効化すると問題が再び発生する可能性があります。

影響分析とセキュリティリスク

  • 主な被害:
    • メモリ安全性: リファレンスカウント(
      amadd
      )の増分が失われるため、実際の参照回数よりカウント値が小さくなり、早期解放 (use-after-free) を引き起こします。
    • Rust の
      std::sync::Arc
      や
      mpsc::Sender
      クローンでも同様のクラッシュや SIGABRT が発生しました。
  • セキュリティリスク:
    • 低い: 同じオブジェクトの同一カウンタに対して、2 スレッドが同時に弛緩した原子操作とベクトル読み取りを行う必要があり、プロセス内でのみ成立するためです。
    • プロセス隔離により悪用は困難です。

回避策

  • ソフトウェアレベル: 開発者がコンパイラ生成の原子操作を制御できません。コンパイラ側でデータバリア付き命令 (
    _db
    ) または LL/SC ループへ移行する必要がありますが、既存バイナリへの適用には再コンパイルが必要です。

修正内容:ファームウェア更新

Loongson 社への報告後、迅速な対応が実現しました。

  • 提出: 2026 年 8 月 26 日
  • 受領: 2 ヶ月後の 9 月 9 日(テスト用ファームウェア)
  • 公開予定: 国庆節(10 月 1 日)前

修正の詳細

  • 技術内容: MCSR24 レジスタの 13 番ビットを
    1
    に設定
    します。
    • この内部 CSR を設定することで「失われた更新」が防止されます。
    • パフォーマンスへの影響は最小限(シングルコア無影響、マルチコアわずかな低下)。
  • 手動修正: ファームウェアアップデートが難しいユーザーは、Linux カーネル内で直接このビットを書き込むことで回避可能です。

結論

  • この問題は、パッケージビルド時の無限ループというソフトウェアの誤作動から始まり、CPU の原子操作命令が原子性を欠くハードウェアバグであることが発覚しました。
  • AI と人間の連携により、半年間かけて原因を特定・修正にたどり着きました。
  • ARM や他のメーカーでも類似のエラータは存在しますが、早期に特定しファームウェアで修正することが重要です。

謝辞

  • 調査の主導:王苗さん
  • 再現テストと報告書執筆:著者
  • 追加発見(
    amcas
    の問題など):栄「曼陀羅(Mantle)」包氏
  • 修正対応:龍芯 社 チップ R&D 部・開発者コミュニティ運営部 へ感謝申し上げます。

同じ日のほかのニュース

一覧に戻る →

2026/09/25 22:48

ジョージ主義は機能するのか。五年後

## Japanese Translation: ヘンリー・ジョージの地価税(LVT)に関する立法の動量は、世界的に加速しており、これは擁護活動と、土地に対する財産税と建物に対するそれらを分離した分割率課税を可能にする新たな州法によって牽引されています。本年 4 月、バージニア州とケンタッキー州は、自治体が LVT に参加することを許すことを目的とした啓能法を可決し、2026 年の立法シーズンにおける主要な勝利者となりました。ワシントン州は、中心地であるランド・エコノミクス・センターを通じて新たな法案の検討を進めており、同センターは現在、ジョージ著『進歩と貧困』に関する 2021 年の書評で ACX コンテストを制したラルス・ドゥセツによって率いられています。その書評はゲーリズムに関する継続的な報道を引き起こしました。ニューヨーク州のゴシュル知事は、交通プロジェクトのために地価キャプチャーを使用することを都市に権限を与える期間を延長し、IBX の地下鉄拡張を含む可能性があります。国際的には、バーデン・ヴュルテンベルク州政府は裁判所の挑戦を乗り越えた後、2025 年 1 月に LVT を導入しました。イギリスの首相アンディ・バーナムと韓国大統領李在明も LVT を支援していますが、彼らの現在の野望は低水準の既存課税率に直面しています。ドゥセツは、多くの反対意見が誤解に基づくものだと指摘しており、例えば地価集中に関する誤解を挙げます。また、彼は効果的な実施には正確な評価が必要であり、データクリーニングが高度なアルゴリズムよりも重要で、適切に行えばコストアプローチも妥当であると述べています。陳腐化した評価はピッツバーグに見られるように反発を引き起こすことができ、一方韓国では組織化されたシステムによって 5 ヶ月以内に個々の区画全体に対する完全な年間評価を達成しました。CivicMapper などのツールは、低価値の使用に割当てられた高価値の土地(例:地上駐車)を視覚化するのに役立ちます。AI は上昇する地価価格が注目を集めることで支持を加速させる可能性がありますが、採用度は管轄区によって異なります。経済学者たちは LVT を理想的な税制政策として概ね受け入れているものの、実現可能性については議論が続いています。成功した実施は、現在のいくつかの地域の効果的な税率が modest なままであり地域産業の複雑さが実用的な障壁となる場合でも、大規模なインフラプロジェクトの資金調達が可能になりつつ土地使用の不効率を是正する可能性があります。 ## Text to translate: Legislative momentum for Henry George's land value tax (LVT) is accelerating globally, driven by advocacy and new state laws enabling split-rate taxation—separating property taxes on land from those on buildings. In April this year, Virginia and Kentucky passed enablement laws allowing municipalities to opt into LVT, making them major winners in the 2026 legislative season. Washington State is collaborating on new bills through the Center for Land Economics, which Lars Doucet now leads after winning an ACX contest with a 2021 book review of George's *Progress and Poverty* that sparked ongoing coverage on Georgism. New York Governor Hochul extended authority for cities to use land value capture for transit projects, potentially including the IBX subway expansion. Internationally, Baden-Württemberg implemented LVT in January 2025 after surviving a court challenge; UK PM Andy Burnham and South Korea's President Lee Jae Myung advocate for LVT, though their current ambitions face low existing rates. Doucet argues many objections stem from misunderstandings—such as misconceptions about land value concentration—and notes that effective implementation requires accurate assessments: data cleaning outweighs advanced algorithms, and the cost approach is sound when done correctly. Stale valuations can trigger revolt, as seen in Pittsburgh, whereas Korea's organized system achieved full annual valuation across individual parcels in five months. Tools like CivicMapper help visualize high-value land dedicated to low-value uses (e.g., surface parking). AI may accelerate support as rising land prices capture attention, but adoption will vary by jurisdiction. Economists broadly accept LVT as the ideal tax policy, though feasibility remains debated; successful implementation could fund large infrastructure projects while correcting land use inefficiencies, even if current effective rates in some places remain modest and local industry complexity presents practical barriers.

2026/09/27 3:22

DeepSeek エラスティックコンピューティング(DSec)

## Japanese Translation: 要約は理解しやすく、しかし「重要ポイントリスト」で示された詳細な技術情報が不足しています。以下は、その不足している具体的な情報を統合しつつ、流れを保った改良版です: **改良された要約:** DeepSeek Elastic Compute(DSec)は、大規模な大言語モデル(LLM)のトレーニングと評価のための堅牢で生産環境に準拠したサンドボックスプラットフォームです。その核心的な革新点は、巨大クラスター全体にわたるリソース配分および状態保存を統括する統一システムとして機能することにあります。DSec は、メモリ共有、回収、高度な CPU スケジューリング機構などを統合し、複数のサンドバックエンド(FnCall、コンテナ、マイクロ VM、フル VM)を公開する単一の開発インターフェースを通じてこの効率性を達成します。アーキテクチャはデータ読み込みとトレーニングプロセスを分離しており、Fire-Flyer ファイルシステム(3FS)を利用してバージョン付けされた層から環境を構築します。強化学習フレームワークと共に重要な意味で共同設計されており、DSec は報酬ハッキングなどのエージェントの不適切な行動を防ぎ、ロールアウト状態を維持するために、ステートフルなロールアウト実行と非予約 GPU トレーニングを分離しています。このアプローチは、過剰な環境設定時間やイメージ配布のオーバーヘッドといった業界上の課題に対処します。実際の運用では、約 160 ノードに及ぶ単一のプロダクションスケールユニットは、毎日 300 万回以上のサンドボックス作成を維持し、約 38 万の同時利用可能なサンドボックスを提供することができます(作成速度は毎秒 5,000 回を超えます)。これにより、テクノロジー企業が負荷下でもレイテンシに敏感なパフォーマンスを損なうことなく、急速な実験とスケーラブルな AI 開発を実施できるようになります。

2026/09/25 19:55

PipePipe:SponsorBlock を実装した NewPipe のハードフォーク

## Japanese Translation: PipePipe は、2022 年初頭に NewPipe から派生した独立した Android メディアプレイヤーであり、開発哲学の相違により別プロジェクトとして確立され、アップストリームのコードベースに対する更新共有や変更プッシュを行わない状態で運営されています。同アプリは YouTube と Bilibili の高度なストリーミング機能を備え、プライバシー保護、SponsorsBlock を利用した広告なし視聴、クッキーベースのログインによる制限コンテンツへのアクセスを重視しています。アプリは高品質な AV1 および VP9 コーデック対応、Danmaku チャットオーバーレイ、バックグラウンド音楽再生、スワイプによる探索ナビゲーション、Shorts と有料動画のブロックに対応します。追加機能として、非ローカライズされたオリジナルタイトルの表示、高度な検索フィルタリング、キーワード/チャンネル管理、完全なプレイリストダウンロード、アラームタイマー(スリープタイマー)、再生速度制御が含まれます。寄付を介した Ko-Fi および Liberapay を通じてコミュニティによって開発が行われた PipePipe は、公式アプリに関連するデータ追跡なしでユーザーにメディア消費の深い制御を提供します。

Loongson CPU に付与された失われた原子アップデートについて | そっか~ニュース