Project

General

Profile

ยซ Previous | Next ยป 

Revision 9d6b8806

Added by jhawthorn (John Hawthorn) over 1 year ago

Avoid unnecessary writes to ISEQ during GC

On mark we check whether a callcache has been invalidated and if it has
we replace it with the empty callcache, rb_vm_empty_cc(). However we
also consider the empty callcache to not be active, and so previously
would overwrite it with itself.

These additional writes are problematic because they may force
Copy-on-Write to occur on the memory page, increasing system memory use.