Mercurial > gnulib
view doc/README @ 37246:5cfb3a67238d
regex: avoid glibc deadlock during configure
glibc has a known bug where certain corruptions of the heap can
cause malloc to default to printing a debug message that includes
a backtrace, but the act of getting the backtrace uses dlopen
which in turn calls into malloc, causing a recursive lock ending
in deadlock. Thus, when configure is probing for a known glibc
heap corruption bug, the overall configure would hang.
The solution suggested by glibc developers is to force malloc
to quit printing debug messages, which avoids recursive malloc.
* m4/regex.m4 (gl_REGEX): Avoid recursive malloc deadlock when
glibc bug 15078 in turn triggers bug 16159.
Reported by Michal Privoznik.
Signed-off-by: Eric Blake <eblake@redhat.com>
author | Eric Blake <eblake@redhat.com> |
---|---|
date | Tue, 03 Dec 2013 10:34:13 -0700 |
parents | cd64ee10654e |
children | 87c69777639a |
line wrap: on
line source
Misc notes ---------- regexprops-generic.texi is generated via a utility in findutils. How to update gnulib manual on www.gnu.org ------------------------------------------ 1) You need a non-anonymous checkout of the web pages directory. $ cvs -d :ext:jas@cvs.savannah.gnu.org:/web/gnulib \ checkout gnulib 2) Get familiar with the instructions for web page maintainers. http://www.gnu.org/server/standards/readme_index.html http://www.gnu.org/server/standards/README.software.html especially the note about symlinks. 3) Assuming GNULIB_CHECKOUT refers to a checkout of the gnulib dir, and GNULIB_WWW_CHECKOUT refers to the other directory created above (1), do GNULIB_WWW_CHECKOUT=`cd $GNULIB_WWW_CHECKOUT && pwd` cd $GNULIB_CHECKOUT/doc make updated-stamp ../build-aux/gendocs.sh -o "$GNULIB_WWW_CHECKOUT/manual" \ gnulib "The GNU Portability Library" cd $GNULIB_WWW_CHECKOUT Verify that the result looks sane. 4) Commit the modified and the new files. 5) Find the files which have not been overwritten (because they belonged to sections that have been removed or renamed): $ cd manual/html_node $ ls -lt Remove these files and commit their removal to CVS. For each of these files, add a line to the file .symlinks. This will ensure that hyperlinks to the removed files will redirect to the entire manual; this is better than a 404 error. There is a problem with 'index.html' being written twice (once for POSIX function 'index', once for the table of contents); you can ignore this issue.