ufs_copy のコアダンプ2015年07月10日 13時21分01秒

そう言えば、最近 ufs_copy がコアダンプを起こすなと思っていた。最近の事だと思っていたらそうでも無かったみたいだ。一年以上前からの話だったらしい。

原因は以下とのこと。

ソース側に対して ufs_disk_fillout(3) を呼び出して作成した struct uufsd を bcopy(3) を使用してデスティネーション側の struct uufsd として使いまわしているので、SUJの対応に伴い追加 された d_sbcsum メンバのポインタ値もコピーされてしまう。コピー 処理後、ソース側の ufs_disk_close(3) を実行した後でデスティネー ション側の ufs_disk_close(3) を実行するので、free(3) を同じポ インタに対して2回呼び出す事になるので、この時点でコアダンプを 生成してしまう。

次回