Please sign in to comment.
bug24329: avoid races in constructor initialization
%Testing: make stress-aserve Avoid calls to make-instance when the class is defined later in the file or in a file loaded later. Add make-instance-foo functions for these classes. Add a separate make-instance-foo function for each set of keyword arguments desired by the caller, to allow the make-instance call to be optimized. When a compiled function is loaded containing a make-instance call for a class that is not yet loaded, a load-form creates a constructor object that needs to be initialized the first time it is used. Since the initialization involves modifying several places in memory, it must not be done simultaneously in several threads. Change-Id: I60663fb63d4b4fa050607f9bac6bfb2bfc90491b Reviewed-on: https://gerrit.franz.com:9080/6737 Reviewed-by: Martin Mikelsons <email@example.com> Reviewed-by: Duane Rettig <firstname.lastname@example.org> Reviewed-by: Kevin Layer <email@example.com> Reviewed-by: Robert Rorschach <firstname.lastname@example.org> Tested-by: Kevin Layer <email@example.com>
- Loading branch information...
Showing with 72 additions and 42 deletions.