Project

General

Profile

Actions

Bug #13533

closed

please backport r58534

Added by normalperson (Eric Wong) about 5 years ago. Updated almost 5 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Target version:
-
[ruby-core:80969]

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.
Actions #1

Updated by normalperson (Eric Wong) about 5 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) about 5 years ago

  • Status changed from Open to Closed

closing to trigger backport request

Updated by nagachika (Tomoyuki Chikanaga) about 5 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) almost 5 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

Also available in: Atom PDF