[Backport 200 - Backport #8064][Assigned] r39687 - io.c (rb update max fd): use ATOMIC CAS のバックポート

Issue #8064 has been reported by kosaki (Motohiro KOSAKI).


Backport #8064: r39687 - io.c (rb_update_max_fd): use ATOMIC_CAS のバックポート

Author: kosaki (Motohiro KOSAKI)
Status: Assigned
Priority: Normal
Assignee: nagachika (Tomoyuki C.)
Category:
Target version:

現状、1.9.3と2.0において、rb_update_max_fdが排他制御されずに呼ばれているので最大FDを間違って更新し、
結果fd leakにつながる可能性があります。
これはsensitive dataのリークにつながるかどうかはスクリプト次第ですが、塞いでおいたほうが心の安全が図れそうです

Issue #8064 has been updated by nagachika (Tomoyuki C.).

r39687 と一緒に変数の型を変更している r39776 もバックポートしようと思います。

Backport #8064: r39687 - io.c (rb_update_max_fd): use ATOMIC_CAS のバックポート

Author: kosaki (Motohiro KOSAKI)
Status: Assigned
Priority: Normal
Assignee: nagachika (Tomoyuki C.)
Category:
Target version:

現状、1.9.3と2.0において、rb_update_max_fdが排他制御されずに呼ばれているので最大FDを間違って更新し、
結果fd leakにつながる可能性があります。
これはsensitive dataのリークにつながるかどうかはスクリプト次第ですが、塞いでおいたほうが心の安全が図れそうです

Issue #8064 has been updated by nagachika (Tomoyuki C.).

こちらどうでしょうか。急がなくてもいいと思いますが、r39687 だけ入れていてもあまり意味はないでしょうか?

Backport #8064: r39687 - io.c (rb_update_max_fd): use ATOMIC_CAS のバックポート

Author: kosaki (Motohiro KOSAKI)
Status: Assigned
Priority: Normal
Assignee: nagachika (Tomoyuki C.)
Category:
Target version:

現状、1.9.3と2.0において、rb_update_max_fdが排他制御されずに呼ばれているので最大FDを間違って更新し、
結果fd leakにつながる可能性があります。
これはsensitive dataのリークにつながるかどうかはスクリプト次第ですが、塞いでおいたほうが心の安全が図れそうです

Issue #8064 has been updated by kosaki (Motohiro KOSAKI).

あ、すいません。これちょっと待ってください。
r39687書いたときはちょっと考慮できていなかったのですが、型を変更してしまうとどこが壊れるかわからないので、
素直にmutex導入して、変更最小限修正に出来ないか一度考えたい。

Backport #8064: r39687 - io.c (rb_update_max_fd): use ATOMIC_CAS のバックポート

Author: kosaki (Motohiro KOSAKI)
Status: Assigned
Priority: Normal
Assignee: nagachika (Tomoyuki C.)
Category:
Target version:

現状、1.9.3と2.0において、rb_update_max_fdが排他制御されずに呼ばれているので最大FDを間違って更新し、
結果fd leakにつながる可能性があります。
これはsensitive dataのリークにつながるかどうかはスクリプト次第ですが、塞いでおいたほうが心の安全が図れそうです

Issue #8064 has been updated by kosaki (Motohiro KOSAKI).

見なおしたけど r40438 入れれば、触ってる場所一箇所になるから僕的に許せる感じ。

Backport #8064: r39687 - io.c (rb_update_max_fd): use ATOMIC_CAS のバックポート

Author: kosaki (Motohiro KOSAKI)
Status: Assigned
Priority: Normal
Assignee: nagachika (Tomoyuki C.)
Category:
Target version:

現状、1.9.3と2.0において、rb_update_max_fdが排他制御されずに呼ばれているので最大FDを間違って更新し、
結果fd leakにつながる可能性があります。
これはsensitive dataのリークにつながるかどうかはスクリプト次第ですが、塞いでおいたほうが心の安全が図れそうです

Issue #8064 has been updated by nagachika (Tomoyuki C.).

ありがとうございます。
一旦 r39687, r39776, r40438 をマージして閉じようと思います。
追加で変更があればまた backport チケットを作ってください。

Backport #8064: r39687 - io.c (rb_update_max_fd): use ATOMIC_CAS のバックポート

Author: kosaki (Motohiro KOSAKI)
Status: Assigned
Priority: Normal
Assignee: nagachika (Tomoyuki C.)
Category:
Target version:

現状、1.9.3と2.0において、rb_update_max_fdが排他制御されずに呼ばれているので最大FDを間違って更新し、
結果fd leakにつながる可能性があります。
これはsensitive dataのリークにつながるかどうかはスクリプト次第ですが、塞いでおいたほうが心の安全が図れそうです