You're missing a point, namely, that any replacement malloc that
doesn't implement valloc has always been broken; it's just that the
breakage is only visible with the new malloc.
Suggestion: all the places in libc that call valloc should free the
memory with vfree(), which is to be a new function.
This removes the problems with calling __libc_valloc directly. There
is still a cost in compatibility, this time probably with POSIX
(someone who has the relevant POSIX want to share what it says about
valloc, or tell us it doesn't?)
-- - David A. Holland | Number of words in the English language that dholland@hcs.harvard.edu | exist because of typos or misreadings: 381