Actions
Bug #13533
closedplease backport r58534
Description
This bug causes busy wait (100% CPU usage) on IO.copy_stream
with sockets/pipes with O_NONBLOCK set.
In other words, the following code should not cause 100% CPU usage,
just hang forever w/o burning CPU:
require 'io/nonblock'
r, w = IO.pipe
r.nonblock = true
IO.copy_stream(r, IO::NULL)
This affects Ruby 2.3 and 2.4.
Updated by normalperson (Eric Wong) over 7 years ago
- Backport changed from 2.2: UNKNOWN, 2.3: UNKNOWN, 2.4: UNKNOWN to 2.2: UNKNOWN, 2.3: REQUIRED, 2.4: REQUIRED
Updated by normalperson (Eric Wong) over 7 years ago
- Status changed from Open to Closed
closing to trigger backport request
Updated by nagachika (Tomoyuki Chikanaga) over 7 years ago
- Backport changed from 2.2: UNKNOWN, 2.3: REQUIRED, 2.4: REQUIRED to 2.2: UNKNOWN, 2.3: REQUIRED, 2.4: DONE
ruby_2_4 r58622 merged revision(s) 58534.
Updated by usa (Usaku NAKAMURA) over 7 years ago
- Backport changed from 2.2: UNKNOWN, 2.3: REQUIRED, 2.4: DONE to 2.2: UNKNOWN, 2.3: DONE, 2.4: DONE
ruby_2_3 r59216 merged revision(s) 58534.
Actions
Like0
Like0Like0Like0Like0