メモリリークの不具合が発見されました。ような指定ができない)という不具合を修正する際に、メモリリークするバグが新たに埋め込まれていたことが判明しました。環境変数のアクセス許可のチェック機能が有効な場合、1回のプログラム実行要求につき4KBのメモリがリークしていくため、そのうちメモリ不足に陥ってしまいます。扱いに苦労しています。アロケータを選択した状態で特定のデバッグオプションと組み合わせて使うと(無限再帰呼び出しにより)スタックオーバーフローが発生して起動不可能に陥るとかしているためです。デバッグオプションをなるべく有効にしながらメモリリークの検出も行うというのは試行錯誤が必要でした。処理の中でメモリリークが起こっているらしいことが判明しました。スタックトレースの出力が示している関数の中の何処が間違っているのか悩みました。スタックトレースはアクセス制御が有効でも無効でも呼ばれる関数の中で割り当てられた4KBのメモリが解放されていないと報告しており、4KBのメモリを割り当てている箇所は1つしかありません。デバッグ文を挿入して割り当てと解放の回数をカウントしてみても問題点を見つけられなかったため、誤検出ではないかと思いました。関数ではないかと疑い始めました。アクセス制御を有効にしないとメモリリークが発生しないことを突き止め、環境変数のチェックを行う関数で発生していることが判明したのが昨夜のことです。展開してしまったことにより、アクセス制御が有効でも無効でも呼ばれる関数の側ではなく環境変数のチェックを行う関数の側に問題があることに気づくのに手間取ってしまいました。してアップロードしましたのでご利用ください。)バイナリパッケージは現在再作成中です。Linuxこの記事へのコメントコメントを書くお名前:メールアドレス:ホームページアドレス:コメント:※ブログオーナーが承認したコメントのみ表示されます。この記事へのトラックバックURLhttp://blog.sakura.ne.jp/tb/34303186※ブログオーナーが承認したトラックバックのみ表示されます。Linuxについて記事を書いております。よろしければトラックバックお願いします。