ヒッグス・バグソン狩り:NFS/Kerberosカーネルレベルの問題のデバッグ

2025-07-03
ヒッグス・バグソン狩り:NFS/Kerberosカーネルレベルの問題のデバッグ

エンジニアは、重要な取引データシステムであるGordで、ファイルコピーの失敗(-EACCES)を引き起こす、再現が困難なバグに遭遇しました。Kerberosを無効にすると問題が解決し、認証の問題が示唆されました。調査の結果、カーネルはrpc_gssdデーモンを介してKerberos資格情報を取得しますが、ログには異常は見つかりませんでした。長時間のテスト、メモリ内擬似ファイルシステムの作成、bpftraceによるカーネルトレースなどを行い、最終的に問題を特定しました。NFSサーバーの負荷が高いため、リクエストの再送が発生し、カーネルは同じXIDだが異なるGSSシーケンス番号を持つリクエスト/レスポンスを誤って処理し、チェックサムの不一致とエラーが発生していました。エンジニアは、シーケンス番号の不一致による即時再送を防ぐために、カーネルを修正しました。