Mercurial > hg > nginx
view auto/lib/md5/make @ 3755:76e3a93821b1
fix race condition if during reconfiguration two cache managers try
to delete old inactive entries: one of them removes a entry just locked by
other manager from the queue and the rbtree as long inactive entry,
causes the latter manager to segfault leaving cache mutex locked,
the bug has been introduced in r3727
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Thu, 02 Sep 2010 14:31:47 +0000 |
parents | ecdc41bf2047 |
children | d620f497c50f |
line wrap: on
line source
# Copyright (C) Igor Sysoev case "$NGX_CC_NAME" in msvc*) ngx_makefile=makefile.msvc ngx_opt="CPU_OPT=\"$CPU_OPT\" LIBC=$LIBC MD5_ASM=$MD5_ASM" ngx_md5="MD5=\"$MD5\"" ;; owc*) ngx_makefile=makefile.owc ngx_opt="CPU_OPT=\"$CPU_OPT\"" ngx_md5=`echo MD5=\"$MD5\" | sed -e "s/\//$ngx_regex_dirsep/g"` ;; bcc) ngx_makefile=makefile.bcc ngx_opt="-DCPU_OPT=\"$CPU_OPT\" -DMD5_ASM=$MD5_ASM" ngx_md5=`echo \-DMD5=\"$MD5\" | sed -e "s/\//$ngx_regex_dirsep/g"` ;; esac done=NO case "$NGX_PLATFORM" in win32) cat << END >> $NGX_MAKEFILE `echo "$MD5/md5.lib: $NGX_MAKEFILE" | sed -e "s/\//$ngx_regex_dirsep/g"` \$(MAKE) -f auto/lib/md5/$ngx_makefile $ngx_opt $ngx_md5 END done=YES ;; SunOS:*:i86pc) if [ $MD5_ASM = YES ]; then cat << END >> $NGX_MAKEFILE $MD5/libmd5.a: $NGX_MAKEFILE cd $MD5 \\ && \$(MAKE) CFLAGS="$MD5_OPT -DSOL -DMD5_ASM -DL_ENDIAN" \\ CC="\$(CC)" CPP="\$(CPP)" \\ MD5_ASM_OBJ=asm/mx86-sol.o clean libmd5.a END done=YES fi ;; # FreeBSD: i386 # Linux: i686 *:i386 | *:i686) if [ $MD5_ASM = YES ]; then cat << END >> $NGX_MAKEFILE $MD5/libmd5.a: $NGX_MAKEFILE cd $MD5 \\ && \$(MAKE) CFLAGS="$MD5_OPT -DELF -DMD5_ASM -DL_ENDIAN" \\ CC="\$(CC)" CPP="\$(CPP)" \\ MD5_ASM_OBJ=asm/mx86-elf.o clean libmd5.a END done=YES fi ;; esac if [ $done = NO ]; then cat << END >> $NGX_MAKEFILE $MD5/libmd5.a: $NGX_MAKEFILE cd $MD5 \\ && \$(MAKE) CFLAGS="$MD5_OPT" \\ CC="\$(CC)" MD5_ASM_OBJ= clean libmd5.a END fi