Hi Alan, (Disregard previous message - fat fingers)
Attached is a first draft of the patch: 1. Controller is created upon ML construction and returned from static ML.defineModules methods. 2. Created two controller liveness tests (they rely on System.gc() though - not sure if there are some tricks to test it reliably). > On 22 Nov 2021, at 21:37, Alan Bateman <alan.bate...@oracle.com > <mailto:alan.bate...@oracle.com>> wrote: >> > Assuming it's not exposed, and that there is no reference to the > ML.Controller for the boot layer, I am not sure I understand this. Do you mean ML.controller should be null for the boot layer? This would require null check in static ML.defineModules methods to return new Controller for the boot layer (done only once during system init). -- Michal