From 1537d6680bb66dc2484e11815bc2cd0e31ca39cc Mon Sep 17 00:00:00 2001 From: Roberto Ierusalimschy Date: Fri, 26 Feb 2021 11:41:02 -0300 Subject: New control for reentrancy of emergency collections Instead of assuming that shrinking a block may be an emergency collection, use an explicit field ('gcstopem') to stop emergency collections while GC is working. --- lstate.h | 1 + 1 file changed, 1 insertion(+) (limited to 'lstate.h') diff --git a/lstate.h b/lstate.h index 0322e2c6..c1283bb6 100644 --- a/lstate.h +++ b/lstate.h @@ -260,6 +260,7 @@ typedef struct global_State { lu_byte currentwhite; lu_byte gcstate; /* state of garbage collector */ lu_byte gckind; /* kind of GC running */ + lu_byte gcstopem; /* stops emergency collections */ lu_byte genminormul; /* control for minor generational collections */ lu_byte genmajormul; /* control for major generational collections */ lu_byte gcrunning; /* true if GC is running */ -- cgit v1.2.3-55-g6feb