Symbol versioning will not help. As I indicated, the issue is that
there is not room to store the entire state of the signal.
Thus the application, using an increased sigset_t size, sets up an
sa_mask with bit 1500 set. A library, having only room for 1024
bits, is not able to save the entire set, and so only the low 1024
are saved and restored.
Symbol versioning handles the difficulty of garbage on the stack
when the size of struct sigaction changes, but not the higher-level
issues like what happens when two versions of the function are in
use simultaneously.
r~