Project

General

Profile

Actions

Bug #16664

closed

Backport request: MJIT unloads methods used in a main thread when calling a Fiber

Added by k0kubun (Takashi Kokubun) about 4 years ago. Updated about 4 years ago.

Status:
Closed
Assignee:
-
Target version:
-
[ruby-core:97309]

Description

Problem

The following script SEGVs with ruby --disable-gems --jit-min-calls=1 --jit-max-cache=10 --jit-wait script.rb.

def a1() a2(false); a2(true) end
def a2(a) a3(a) end
def a3(a) a4(a) end
def a4(a) a5(a) end
def a5(a) a6(a) end
def a6(a) a7(a) end
def a7(a) a8(a) end
def a8(a) a9(a) end
def a9(a) a10(a) end
def a10(a)
  if a
    Fiber.new { a11 }.resume
  end
end
def a11() print('hello') end

a1

Patch

Please backport adcf0316d1ecedae2a9157ad941550e0c0fb510b. For running the test, a8dcab723316997d9e01c89d6df969edce75bdca needs to be backported first.

Actions #1

Updated by jeremyevans0 (Jeremy Evans) about 4 years ago

  • Status changed from Open to Closed

Updated by naruse (Yui NARUSE) about 4 years ago

  • Backport changed from 2.5: DONTNEED, 2.6: REQUIRED, 2.7: REQUIRED to 2.5: DONTNEED, 2.6: REQUIRED, 2.7: DONE

ruby_2_7 f915d4ff33450975cc3a7a70d0dc4dd2bf4cfed1.

Updated by nagachika (Tomoyuki Chikanaga) about 4 years ago

  • Backport changed from 2.5: DONTNEED, 2.6: REQUIRED, 2.7: DONE to 2.5: DONTNEED, 2.6: DONE, 2.7: DONE

ruby_2_6 r67850 merged revision(s) adcf0316d1ecedae2a9157ad941550e0c0fb510b.

Actions

Also available in: Atom PDF

Like0
Like0Like0Like0