2016年2月5日金曜日

sambaが不定期にcoreを吐く

CentOS7のsambaをsamba-4.2.3-11.el7_2に更新してから、smbdが不定期でコアを吐くようになりました。

別に使えなくなるわけでもなく、めんどくさいから放置してます。

一応、何かわかるかと思ってcoreファイルを見てみると、PCなんか一台も起動しておらず、サーバ機1台だけが稼働中なのにNT_STATUS_IO_TIMEOUTが発生して、それを処理するときにSIGSEGVをぶっ放して死んでいるらしいことが分かりました。

SIGSEGVの発射もとはここ。

#8  file_close_user (sconn=sconn@entry=0x0, vuid=1129035802)
    at ../source3/smbd/files.c:250

なにしてんのかとリストを取ってみると
242     /****************************************************************************
243      Close files open by a specified vuid.
244     ****************************************************************************/
245
246     void file_close_user(struct smbd_server_connection *sconn, uint64_t vuid)
247     {
248             files_struct *fsp, *next;
249
250             for (fsp=sconn->files; fsp; fsp=next) {
251                     next=fsp->next;

・・・単にNULLチェックしてねぇだけだった。
魂消るねぇ。

まあ、関数名が分かったので検索をかけてみると、ここのbugzillaと同様の現象っぽい。
そして、去年の12/7に対応済みらしい。

srpmにパッチを当ててもいいけど、めんどくさいし、RHEL用のsambaパッケージのメンテナンス待ちかな。

それにしても、コアはいて落ちるようなバグなのにRHELがパッケージをメンテかけないのはなぜだろう。
うちだけの特殊事例なのかな。

bugzillaに上がってた報告の内容からはWindows10だからってわけじゃなさそうだけど、なんかBuild10586(TH2)からネットワーク上のコンピュータがWindows10機しか見えないとか(smb3.1.1のバグなんだろう)、なんか組み合わせ的にあんまりよくないのかなぁ。

0 件のコメント:

コメントを投稿