Hi, Following your advise I first tested if the bug is still there on Debian testing and it's not : the sequence of event is still the same as I described except that the relocation dependency of libm towards libperl is gone and now libperl unloads properly when mod_perl is unloaded => the PL_check array is fresh clean on the second reload and there is no invalid pointer.
So there is a fix that could perhaps be backported in Debian stretch about removing this relocation dependency. I didn't investigate what it could be.