mirror of
				https://github.com/openresty/openresty.git
				synced 2024-10-13 00:29:41 +00:00 
			
		
		
		
	fixed the dtrace patch for nginx.
This commit is contained in:
		@ -1,5 +1,5 @@
 | 
				
			|||||||
diff --git a/README b/README
 | 
					diff --git a/README b/README
 | 
				
			||||||
index 2f68e14..262822a 100644
 | 
					index 2f68e14e..262822a5 100644
 | 
				
			||||||
--- a/README
 | 
					--- a/README
 | 
				
			||||||
+++ b/README
 | 
					+++ b/README
 | 
				
			||||||
@@ -1,3 +1,38 @@
 | 
					@@ -1,3 +1,38 @@
 | 
				
			||||||
@ -43,7 +43,7 @@ index 2f68e14..262822a 100644
 | 
				
			|||||||
+The original Nginx documentation is available at http://nginx.org
 | 
					+The original Nginx documentation is available at http://nginx.org
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
diff --git a/auto/install b/auto/install
 | 
					diff --git a/auto/install b/auto/install
 | 
				
			||||||
index 4dcc743..fbce42b 100644
 | 
					index d884487a..c5027679 100644
 | 
				
			||||||
--- a/auto/install
 | 
					--- a/auto/install
 | 
				
			||||||
+++ b/auto/install
 | 
					+++ b/auto/install
 | 
				
			||||||
@@ -16,6 +16,20 @@ END
 | 
					@@ -16,6 +16,20 @@ END
 | 
				
			||||||
@ -84,7 +84,7 @@ index 4dcc743..fbce42b 100644
 | 
				
			|||||||
 case ".$NGX_ERROR_LOG_PATH" in
 | 
					 case ".$NGX_ERROR_LOG_PATH" in
 | 
				
			||||||
     ./* | .)
 | 
					     ./* | .)
 | 
				
			||||||
     ;;
 | 
					     ;;
 | 
				
			||||||
@@ -159,6 +183,36 @@ install:	$NGX_OBJS${ngx_dirsep}nginx${ngx_binext} \
 | 
					@@ -158,6 +182,36 @@ install:	build $NGX_INSTALL_PERL_MODULES
 | 
				
			||||||
 		|| cp -R $NGX_HTML '\$(DESTDIR)$NGX_PREFIX'
 | 
					 		|| cp -R $NGX_HTML '\$(DESTDIR)$NGX_PREFIX'
 | 
				
			||||||
 END
 | 
					 END
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
@ -121,8 +121,8 @@ index 4dcc743..fbce42b 100644
 | 
				
			|||||||
 
 | 
					 
 | 
				
			||||||
 if test -n "$NGX_ERROR_LOG_PATH"; then
 | 
					 if test -n "$NGX_ERROR_LOG_PATH"; then
 | 
				
			||||||
     cat << END                                                >> $NGX_MAKEFILE
 | 
					     cat << END                                                >> $NGX_MAKEFILE
 | 
				
			||||||
@@ -181,6 +235,19 @@ END
 | 
					@@ -194,6 +248,19 @@ END
 | 
				
			||||||
 fi
 | 
					 done
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
+if [ $NGX_DTRACE = YES ]; then
 | 
					+if [ $NGX_DTRACE = YES ]; then
 | 
				
			||||||
@ -142,7 +142,7 @@ index 4dcc743..fbce42b 100644
 | 
				
			|||||||
 
 | 
					 
 | 
				
			||||||
 cat << END >> Makefile
 | 
					 cat << END >> Makefile
 | 
				
			||||||
diff --git a/auto/make b/auto/make
 | 
					diff --git a/auto/make b/auto/make
 | 
				
			||||||
index 039a70f..eafe77c 100644
 | 
					index 7ddd1007..367a4e55 100644
 | 
				
			||||||
--- a/auto/make
 | 
					--- a/auto/make
 | 
				
			||||||
+++ b/auto/make
 | 
					+++ b/auto/make
 | 
				
			||||||
@@ -27,6 +27,9 @@ LINK =	$LINK
 | 
					@@ -27,6 +27,9 @@ LINK =	$LINK
 | 
				
			||||||
@ -155,7 +155,7 @@ index 039a70f..eafe77c 100644
 | 
				
			|||||||
 
 | 
					 
 | 
				
			||||||
 if test -n "$NGX_PERL_CFLAGS"; then
 | 
					 if test -n "$NGX_PERL_CFLAGS"; then
 | 
				
			||||||
     echo NGX_PERL_CFLAGS = $NGX_PERL_CFLAGS                   >> $NGX_MAKEFILE
 | 
					     echo NGX_PERL_CFLAGS = $NGX_PERL_CFLAGS                   >> $NGX_MAKEFILE
 | 
				
			||||||
@@ -208,6 +211,46 @@ ngx_objs=`echo $ngx_all_objs $ngx_modules_obj \
 | 
					@@ -209,6 +212,46 @@ ngx_objs=`echo $ngx_all_objs $ngx_modules_obj \
 | 
				
			||||||
     | sed -e "s/  *\([^ ][^ ]*\)/$ngx_long_regex_cont\1/g" \
 | 
					     | sed -e "s/  *\([^ ][^ ]*\)/$ngx_long_regex_cont\1/g" \
 | 
				
			||||||
           -e "s/\//$ngx_regex_dirsep/g"`
 | 
					           -e "s/\//$ngx_regex_dirsep/g"`
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
@ -203,21 +203,21 @@ index 039a70f..eafe77c 100644
 | 
				
			|||||||
 if test -n "$NGX_LD_OPT$CORE_LIBS"; then
 | 
					 if test -n "$NGX_LD_OPT$CORE_LIBS"; then
 | 
				
			||||||
     ngx_libs=`echo $NGX_LD_OPT $CORE_LIBS \
 | 
					     ngx_libs=`echo $NGX_LD_OPT $CORE_LIBS \
 | 
				
			||||||
diff --git a/auto/modules b/auto/modules
 | 
					diff --git a/auto/modules b/auto/modules
 | 
				
			||||||
index 2074778..a722871 100644
 | 
					index be3561e6..609af7d6 100644
 | 
				
			||||||
--- a/auto/modules
 | 
					--- a/auto/modules
 | 
				
			||||||
+++ b/auto/modules
 | 
					+++ b/auto/modules
 | 
				
			||||||
@@ -75,7 +75,8 @@ if :; then
 | 
					@@ -77,7 +77,8 @@ if [ $HTTP = YES ]; then
 | 
				
			||||||
                      src/http/ngx_http_variables.h \
 | 
					                          src/http/ngx_http_variables.h \
 | 
				
			||||||
                      src/http/ngx_http_script.h \
 | 
					                          src/http/ngx_http_script.h \
 | 
				
			||||||
                      src/http/ngx_http_upstream.h \
 | 
					                          src/http/ngx_http_upstream.h \
 | 
				
			||||||
-                     src/http/ngx_http_upstream_round_robin.h"
 | 
					-                         src/http/ngx_http_upstream_round_robin.h"
 | 
				
			||||||
+                     src/http/ngx_http_upstream_round_robin.h \
 | 
					+                         src/http/ngx_http_upstream_round_robin.h \
 | 
				
			||||||
+                     src/http/ngx_http_probe.h"
 | 
					+                         src/http/ngx_http_probe.h"
 | 
				
			||||||
     ngx_module_srcs="src/http/ngx_http.c \
 | 
					         ngx_module_srcs="src/http/ngx_http.c \
 | 
				
			||||||
                      src/http/ngx_http_core_module.c \
 | 
					                          src/http/ngx_http_core_module.c \
 | 
				
			||||||
                      src/http/ngx_http_special_response.c \
 | 
					                          src/http/ngx_http_special_response.c \
 | 
				
			||||||
diff --git a/auto/options b/auto/options
 | 
					diff --git a/auto/options b/auto/options
 | 
				
			||||||
index 2833fb1..f02b8b8 100644
 | 
					index 66b822a7..fb141218 100644
 | 
				
			||||||
--- a/auto/options
 | 
					--- a/auto/options
 | 
				
			||||||
+++ b/auto/options
 | 
					+++ b/auto/options
 | 
				
			||||||
@@ -13,6 +13,8 @@ NGX_CONF_PATH=
 | 
					@@ -13,6 +13,8 @@ NGX_CONF_PATH=
 | 
				
			||||||
@ -242,7 +242,7 @@ index 2833fb1..f02b8b8 100644
 | 
				
			|||||||
 NGX_CC_OPT=
 | 
					 NGX_CC_OPT=
 | 
				
			||||||
 NGX_LD_OPT=
 | 
					 NGX_LD_OPT=
 | 
				
			||||||
 CPU=NO
 | 
					 CPU=NO
 | 
				
			||||||
@@ -189,6 +197,8 @@ do
 | 
					@@ -187,6 +195,8 @@ do
 | 
				
			||||||
         --error-log-path=*)              NGX_ERROR_LOG_PATH="$value";;
 | 
					         --error-log-path=*)              NGX_ERROR_LOG_PATH="$value";;
 | 
				
			||||||
         --pid-path=*)                    NGX_PID_PATH="$value"      ;;
 | 
					         --pid-path=*)                    NGX_PID_PATH="$value"      ;;
 | 
				
			||||||
         --lock-path=*)                   NGX_LOCK_PATH="$value"     ;;
 | 
					         --lock-path=*)                   NGX_LOCK_PATH="$value"     ;;
 | 
				
			||||||
@ -251,7 +251,7 @@ index 2833fb1..f02b8b8 100644
 | 
				
			|||||||
         --user=*)                        NGX_USER="$value"          ;;
 | 
					         --user=*)                        NGX_USER="$value"          ;;
 | 
				
			||||||
         --group=*)                       NGX_GROUP="$value"         ;;
 | 
					         --group=*)                       NGX_GROUP="$value"         ;;
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
@@ -322,7 +332,8 @@ use the \"--with-mail_ssl_module\" option instead"
 | 
					@@ -338,7 +348,8 @@ use the \"--with-mail_ssl_module\" option instead"
 | 
				
			||||||
         --with-ld-opt=*)                 NGX_LD_OPT="$value"        ;;
 | 
					         --with-ld-opt=*)                 NGX_LD_OPT="$value"        ;;
 | 
				
			||||||
         --with-cpu-opt=*)                CPU="$value"               ;;
 | 
					         --with-cpu-opt=*)                CPU="$value"               ;;
 | 
				
			||||||
         --with-debug)                    NGX_DEBUG=YES              ;;
 | 
					         --with-debug)                    NGX_DEBUG=YES              ;;
 | 
				
			||||||
@ -261,7 +261,7 @@ index 2833fb1..f02b8b8 100644
 | 
				
			|||||||
         --without-pcre)                  USE_PCRE=DISABLED          ;;
 | 
					         --without-pcre)                  USE_PCRE=DISABLED          ;;
 | 
				
			||||||
         --with-pcre)                     USE_PCRE=YES               ;;
 | 
					         --with-pcre)                     USE_PCRE=YES               ;;
 | 
				
			||||||
         --with-pcre=*)                   PCRE="$value"              ;;
 | 
					         --with-pcre=*)                   PCRE="$value"              ;;
 | 
				
			||||||
@@ -377,6 +388,8 @@ cat << END
 | 
					@@ -410,6 +421,8 @@ cat << END
 | 
				
			||||||
   --error-log-path=PATH              set error log pathname
 | 
					   --error-log-path=PATH              set error log pathname
 | 
				
			||||||
   --pid-path=PATH                    set nginx.pid pathname
 | 
					   --pid-path=PATH                    set nginx.pid pathname
 | 
				
			||||||
   --lock-path=PATH                   set nginx.lock pathname
 | 
					   --lock-path=PATH                   set nginx.lock pathname
 | 
				
			||||||
@ -270,7 +270,7 @@ index 2833fb1..f02b8b8 100644
 | 
				
			|||||||
 
 | 
					 
 | 
				
			||||||
   --user=USER                        set non-privileged user for
 | 
					   --user=USER                        set non-privileged user for
 | 
				
			||||||
                                      worker processes
 | 
					                                      worker processes
 | 
				
			||||||
@@ -532,6 +545,8 @@ cat << END
 | 
					@@ -567,6 +580,8 @@ cat << END
 | 
				
			||||||
   --with-openssl-opt=OPTIONS         set additional build options for OpenSSL
 | 
					   --with-openssl-opt=OPTIONS         set additional build options for OpenSSL
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
   --with-debug                       enable debug logging
 | 
					   --with-debug                       enable debug logging
 | 
				
			||||||
@ -279,7 +279,7 @@ index 2833fb1..f02b8b8 100644
 | 
				
			|||||||
 
 | 
					 
 | 
				
			||||||
 END
 | 
					 END
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
@@ -563,6 +578,7 @@ NGX_CONF_PATH=${NGX_CONF_PATH:-conf/nginx.conf}
 | 
					@@ -585,6 +600,7 @@ NGX_CONF_PATH=${NGX_CONF_PATH:-conf/nginx.conf}
 | 
				
			||||||
 NGX_CONF_PREFIX=`dirname $NGX_CONF_PATH`
 | 
					 NGX_CONF_PREFIX=`dirname $NGX_CONF_PATH`
 | 
				
			||||||
 NGX_PID_PATH=${NGX_PID_PATH:-logs/nginx.pid}
 | 
					 NGX_PID_PATH=${NGX_PID_PATH:-logs/nginx.pid}
 | 
				
			||||||
 NGX_LOCK_PATH=${NGX_LOCK_PATH:-logs/nginx.lock}
 | 
					 NGX_LOCK_PATH=${NGX_LOCK_PATH:-logs/nginx.lock}
 | 
				
			||||||
@ -288,18 +288,18 @@ index 2833fb1..f02b8b8 100644
 | 
				
			|||||||
 if [ ".$NGX_ERROR_LOG_PATH" = ".stderr" ]; then
 | 
					 if [ ".$NGX_ERROR_LOG_PATH" = ".stderr" ]; then
 | 
				
			||||||
     NGX_ERROR_LOG_PATH=
 | 
					     NGX_ERROR_LOG_PATH=
 | 
				
			||||||
diff --git a/auto/os/darwin b/auto/os/darwin
 | 
					diff --git a/auto/os/darwin b/auto/os/darwin
 | 
				
			||||||
index 9b31b1f..1bd931c 100644
 | 
					index 429468f7..be2d78dc 100644
 | 
				
			||||||
--- a/auto/os/darwin
 | 
					--- a/auto/os/darwin
 | 
				
			||||||
+++ b/auto/os/darwin
 | 
					+++ b/auto/os/darwin
 | 
				
			||||||
@@ -116,3 +116,6 @@ ngx_feature_libs=
 | 
					@@ -118,3 +118,6 @@ ngx_feature_libs=
 | 
				
			||||||
 ngx_feature_test="int32_t  lock, n;
 | 
					 ngx_feature_test="int32_t  lock = 0;
 | 
				
			||||||
                   n = OSAtomicCompareAndSwap32Barrier(0, 1, &lock)"
 | 
					                   if (!OSAtomicCompareAndSwap32Barrier(0, 1, &lock)) return 1"
 | 
				
			||||||
 . auto/feature
 | 
					 . auto/feature
 | 
				
			||||||
+
 | 
					+
 | 
				
			||||||
+DTRACE_PROBE_OBJ=NO
 | 
					+DTRACE_PROBE_OBJ=NO
 | 
				
			||||||
+
 | 
					+
 | 
				
			||||||
diff --git a/auto/os/freebsd b/auto/os/freebsd
 | 
					diff --git a/auto/os/freebsd b/auto/os/freebsd
 | 
				
			||||||
index 937ca20..d76b32b 100644
 | 
					index 937ca204..d76b32b6 100644
 | 
				
			||||||
--- a/auto/os/freebsd
 | 
					--- a/auto/os/freebsd
 | 
				
			||||||
+++ b/auto/os/freebsd
 | 
					+++ b/auto/os/freebsd
 | 
				
			||||||
@@ -105,3 +105,8 @@ if [ $version -ge 701000 ]; then
 | 
					@@ -105,3 +105,8 @@ if [ $version -ge 701000 ]; then
 | 
				
			||||||
@ -312,17 +312,17 @@ index 937ca20..d76b32b 100644
 | 
				
			|||||||
+fi
 | 
					+fi
 | 
				
			||||||
+
 | 
					+
 | 
				
			||||||
diff --git a/auto/os/linux b/auto/os/linux
 | 
					diff --git a/auto/os/linux b/auto/os/linux
 | 
				
			||||||
index c932267..b5114d6 100644
 | 
					index a0c8795b..64825435 100644
 | 
				
			||||||
--- a/auto/os/linux
 | 
					--- a/auto/os/linux
 | 
				
			||||||
+++ b/auto/os/linux
 | 
					+++ b/auto/os/linux
 | 
				
			||||||
@@ -171,3 +171,5 @@ ngx_include="sys/vfs.h";     . auto/include
 | 
					@@ -174,3 +174,5 @@ ngx_include="sys/vfs.h";     . auto/include
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
 CC_AUX_FLAGS="$cc_aux_flags -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64"
 | 
					 CC_AUX_FLAGS="$cc_aux_flags -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64"
 | 
				
			||||||
+
 | 
					+
 | 
				
			||||||
+DTRACE_FROM_SYSTEMTAP=YES
 | 
					+DTRACE_FROM_SYSTEMTAP=YES
 | 
				
			||||||
diff --git a/auto/sources b/auto/sources
 | 
					diff --git a/auto/sources b/auto/sources
 | 
				
			||||||
index e08e863..0432068 100644
 | 
					index 13981474..1e61bf90 100644
 | 
				
			||||||
--- a/auto/sources
 | 
					--- a/auto/sources
 | 
				
			||||||
+++ b/auto/sources
 | 
					+++ b/auto/sources
 | 
				
			||||||
@@ -40,10 +40,16 @@ CORE_DEPS="src/core/nginx.h \
 | 
					@@ -40,10 +40,16 @@ CORE_DEPS="src/core/nginx.h \
 | 
				
			||||||
@ -342,7 +342,7 @@ index e08e863..0432068 100644
 | 
				
			|||||||
 CORE_SRCS="src/core/nginx.c \
 | 
					 CORE_SRCS="src/core/nginx.c \
 | 
				
			||||||
            src/core/ngx_log.c \
 | 
					            src/core/ngx_log.c \
 | 
				
			||||||
            src/core/ngx_palloc.c \
 | 
					            src/core/ngx_palloc.c \
 | 
				
			||||||
@@ -88,7 +94,8 @@ EVENT_DEPS="src/event/ngx_event.h \
 | 
					@@ -89,7 +95,8 @@ EVENT_DEPS="src/event/ngx_event.h \
 | 
				
			||||||
             src/event/ngx_event_timer.h \
 | 
					             src/event/ngx_event_timer.h \
 | 
				
			||||||
             src/event/ngx_event_posted.h \
 | 
					             src/event/ngx_event_posted.h \
 | 
				
			||||||
             src/event/ngx_event_connect.h \
 | 
					             src/event/ngx_event_connect.h \
 | 
				
			||||||
@ -352,7 +352,7 @@ index e08e863..0432068 100644
 | 
				
			|||||||
 
 | 
					 
 | 
				
			||||||
 EVENT_SRCS="src/event/ngx_event.c \
 | 
					 EVENT_SRCS="src/event/ngx_event.c \
 | 
				
			||||||
             src/event/ngx_event_timer.c \
 | 
					             src/event/ngx_event_timer.c \
 | 
				
			||||||
@@ -250,3 +257,7 @@ NGX_WIN32_RC="src/os/win32/nginx.rc"
 | 
					@@ -253,3 +260,7 @@ NGX_WIN32_RC="src/os/win32/nginx.rc"
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
 HTTP_FILE_CACHE_SRCS=src/http/ngx_http_file_cache.c
 | 
					 HTTP_FILE_CACHE_SRCS=src/http/ngx_http_file_cache.c
 | 
				
			||||||
@ -361,10 +361,10 @@ index e08e863..0432068 100644
 | 
				
			|||||||
+
 | 
					+
 | 
				
			||||||
+NGX_TAPSET_SRCS=src/dtrace/nginx.stp
 | 
					+NGX_TAPSET_SRCS=src/dtrace/nginx.stp
 | 
				
			||||||
diff --git a/auto/summary b/auto/summary
 | 
					diff --git a/auto/summary b/auto/summary
 | 
				
			||||||
index dc8fe4f..ed67c75 100644
 | 
					index 9aa776ed..d8f727db 100644
 | 
				
			||||||
--- a/auto/summary
 | 
					--- a/auto/summary
 | 
				
			||||||
+++ b/auto/summary
 | 
					+++ b/auto/summary
 | 
				
			||||||
@@ -72,6 +72,19 @@ else
 | 
					@@ -58,6 +58,19 @@ else
 | 
				
			||||||
     echo "  nginx logs errors to stderr"
 | 
					     echo "  nginx logs errors to stderr"
 | 
				
			||||||
 fi
 | 
					 fi
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
@ -385,7 +385,7 @@ index dc8fe4f..ed67c75 100644
 | 
				
			|||||||
   nginx http access log file: "$NGX_HTTP_LOG_PATH"
 | 
					   nginx http access log file: "$NGX_HTTP_LOG_PATH"
 | 
				
			||||||
   nginx http client request body temporary files: "$NGX_HTTP_CLIENT_TEMP_PATH"
 | 
					   nginx http client request body temporary files: "$NGX_HTTP_CLIENT_TEMP_PATH"
 | 
				
			||||||
diff --git a/configure b/configure
 | 
					diff --git a/configure b/configure
 | 
				
			||||||
index ceff15e..49223f8 100755
 | 
					index 7e6e33a7..c4ca23c9 100755
 | 
				
			||||||
--- a/configure
 | 
					--- a/configure
 | 
				
			||||||
+++ b/configure
 | 
					+++ b/configure
 | 
				
			||||||
@@ -23,6 +23,9 @@ if [ $NGX_DEBUG = YES ]; then
 | 
					@@ -23,6 +23,9 @@ if [ $NGX_DEBUG = YES ]; then
 | 
				
			||||||
@ -400,7 +400,7 @@ index ceff15e..49223f8 100755
 | 
				
			|||||||
     echo "checking for OS"
 | 
					     echo "checking for OS"
 | 
				
			||||||
diff --git a/src/core/ngx_core_probe.h b/src/core/ngx_core_probe.h
 | 
					diff --git a/src/core/ngx_core_probe.h b/src/core/ngx_core_probe.h
 | 
				
			||||||
new file mode 100644
 | 
					new file mode 100644
 | 
				
			||||||
index 0000000..1841df9
 | 
					index 00000000..1841df9c
 | 
				
			||||||
--- /dev/null
 | 
					--- /dev/null
 | 
				
			||||||
+++ b/src/core/ngx_core_probe.h
 | 
					+++ b/src/core/ngx_core_probe.h
 | 
				
			||||||
@@ -0,0 +1,24 @@
 | 
					@@ -0,0 +1,24 @@
 | 
				
			||||||
@ -429,7 +429,7 @@ index 0000000..1841df9
 | 
				
			|||||||
+
 | 
					+
 | 
				
			||||||
+#endif /* _NGX_CORE_PROBE_H_INCLUDED_ */
 | 
					+#endif /* _NGX_CORE_PROBE_H_INCLUDED_ */
 | 
				
			||||||
diff --git a/src/core/ngx_palloc.c b/src/core/ngx_palloc.c
 | 
					diff --git a/src/core/ngx_palloc.c b/src/core/ngx_palloc.c
 | 
				
			||||||
index ef4a647..49bb30b 100644
 | 
					index d3044ac9..d62ac45f 100644
 | 
				
			||||||
--- a/src/core/ngx_palloc.c
 | 
					--- a/src/core/ngx_palloc.c
 | 
				
			||||||
+++ b/src/core/ngx_palloc.c
 | 
					+++ b/src/core/ngx_palloc.c
 | 
				
			||||||
@@ -7,6 +7,7 @@
 | 
					@@ -7,6 +7,7 @@
 | 
				
			||||||
@ -439,8 +439,8 @@ index ef4a647..49bb30b 100644
 | 
				
			|||||||
+#include <ngx_core_probe.h>
 | 
					+#include <ngx_core_probe.h>
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
 static void *ngx_palloc_block(ngx_pool_t *pool, size_t size);
 | 
					 static ngx_inline void *ngx_palloc_small(ngx_pool_t *pool, size_t size,
 | 
				
			||||||
@@ -37,6 +38,8 @@ ngx_create_pool(size_t size, ngx_log_t *log)
 | 
					@@ -39,6 +40,8 @@ ngx_create_pool(size_t size, ngx_log_t *log)
 | 
				
			||||||
     p->cleanup = NULL;
 | 
					     p->cleanup = NULL;
 | 
				
			||||||
     p->log = log;
 | 
					     p->log = log;
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
@ -451,7 +451,7 @@ index ef4a647..49bb30b 100644
 | 
				
			|||||||
 
 | 
					 
 | 
				
			||||||
diff --git a/src/dtrace/nginx.stp b/src/dtrace/nginx.stp
 | 
					diff --git a/src/dtrace/nginx.stp b/src/dtrace/nginx.stp
 | 
				
			||||||
new file mode 100644
 | 
					new file mode 100644
 | 
				
			||||||
index 0000000..e824daf
 | 
					index 00000000..e824dafe
 | 
				
			||||||
--- /dev/null
 | 
					--- /dev/null
 | 
				
			||||||
+++ b/src/dtrace/nginx.stp
 | 
					+++ b/src/dtrace/nginx.stp
 | 
				
			||||||
@@ -0,0 +1,299 @@
 | 
					@@ -0,0 +1,299 @@
 | 
				
			||||||
@ -756,7 +756,7 @@ index 0000000..e824daf
 | 
				
			|||||||
+
 | 
					+
 | 
				
			||||||
diff --git a/src/dtrace/nginx_provider.d b/src/dtrace/nginx_provider.d
 | 
					diff --git a/src/dtrace/nginx_provider.d b/src/dtrace/nginx_provider.d
 | 
				
			||||||
new file mode 100644
 | 
					new file mode 100644
 | 
				
			||||||
index 0000000..435adf4
 | 
					index 00000000..435adf47
 | 
				
			||||||
--- /dev/null
 | 
					--- /dev/null
 | 
				
			||||||
+++ b/src/dtrace/nginx_provider.d
 | 
					+++ b/src/dtrace/nginx_provider.d
 | 
				
			||||||
@@ -0,0 +1,39 @@
 | 
					@@ -0,0 +1,39 @@
 | 
				
			||||||
@ -800,8 +800,8 @@ index 0000000..435adf4
 | 
				
			|||||||
+#pragma D attributes Evolving/Evolving/Common      provider nginx args
 | 
					+#pragma D attributes Evolving/Evolving/Common      provider nginx args
 | 
				
			||||||
+
 | 
					+
 | 
				
			||||||
diff --git a/src/dtrace/stap-nginx b/src/dtrace/stap-nginx
 | 
					diff --git a/src/dtrace/stap-nginx b/src/dtrace/stap-nginx
 | 
				
			||||||
new file mode 100755
 | 
					new file mode 100644
 | 
				
			||||||
index 0000000..1bca4cf
 | 
					index 00000000..1bca4cfb
 | 
				
			||||||
--- /dev/null
 | 
					--- /dev/null
 | 
				
			||||||
+++ b/src/dtrace/stap-nginx
 | 
					+++ b/src/dtrace/stap-nginx
 | 
				
			||||||
@@ -0,0 +1,6 @@
 | 
					@@ -0,0 +1,6 @@
 | 
				
			||||||
@ -813,7 +813,7 @@ index 0000000..1bca4cf
 | 
				
			|||||||
+
 | 
					+
 | 
				
			||||||
diff --git a/src/event/ngx_event_probe.h b/src/event/ngx_event_probe.h
 | 
					diff --git a/src/event/ngx_event_probe.h b/src/event/ngx_event_probe.h
 | 
				
			||||||
new file mode 100644
 | 
					new file mode 100644
 | 
				
			||||||
index 0000000..b7b2749
 | 
					index 00000000..b7b27496
 | 
				
			||||||
--- /dev/null
 | 
					--- /dev/null
 | 
				
			||||||
+++ b/src/event/ngx_event_probe.h
 | 
					+++ b/src/event/ngx_event_probe.h
 | 
				
			||||||
@@ -0,0 +1,32 @@
 | 
					@@ -0,0 +1,32 @@
 | 
				
			||||||
@ -850,7 +850,7 @@ index 0000000..b7b2749
 | 
				
			|||||||
+
 | 
					+
 | 
				
			||||||
+#endif /* _NGX_EVENT_PROBE_H_INCLUDED_ */
 | 
					+#endif /* _NGX_EVENT_PROBE_H_INCLUDED_ */
 | 
				
			||||||
diff --git a/src/event/ngx_event_timer.c b/src/event/ngx_event_timer.c
 | 
					diff --git a/src/event/ngx_event_timer.c b/src/event/ngx_event_timer.c
 | 
				
			||||||
index 8f547b2..6e77465 100644
 | 
					index 698b88fa..591558dc 100644
 | 
				
			||||||
--- a/src/event/ngx_event_timer.c
 | 
					--- a/src/event/ngx_event_timer.c
 | 
				
			||||||
+++ b/src/event/ngx_event_timer.c
 | 
					+++ b/src/event/ngx_event_timer.c
 | 
				
			||||||
@@ -8,6 +8,7 @@
 | 
					@@ -8,6 +8,7 @@
 | 
				
			||||||
@ -870,9 +870,9 @@ index 8f547b2..6e77465 100644
 | 
				
			|||||||
         ev->handler(ev);
 | 
					         ev->handler(ev);
 | 
				
			||||||
     }
 | 
					     }
 | 
				
			||||||
 }
 | 
					 }
 | 
				
			||||||
@@ -136,3 +139,19 @@ ngx_event_cancel_timers(void)
 | 
					@@ -124,3 +127,19 @@ ngx_event_no_timers_left(void)
 | 
				
			||||||
         ev->handler(ev);
 | 
					 
 | 
				
			||||||
     }
 | 
					     return NGX_OK;
 | 
				
			||||||
 }
 | 
					 }
 | 
				
			||||||
+
 | 
					+
 | 
				
			||||||
+
 | 
					+
 | 
				
			||||||
@ -891,11 +891,11 @@ index 8f547b2..6e77465 100644
 | 
				
			|||||||
+}
 | 
					+}
 | 
				
			||||||
+#endif
 | 
					+#endif
 | 
				
			||||||
diff --git a/src/event/ngx_event_timer.h b/src/event/ngx_event_timer.h
 | 
					diff --git a/src/event/ngx_event_timer.h b/src/event/ngx_event_timer.h
 | 
				
			||||||
index 99f8a48..8bc619a 100644
 | 
					index be81b157..c448771a 100644
 | 
				
			||||||
--- a/src/event/ngx_event_timer.h
 | 
					--- a/src/event/ngx_event_timer.h
 | 
				
			||||||
+++ b/src/event/ngx_event_timer.h
 | 
					+++ b/src/event/ngx_event_timer.h
 | 
				
			||||||
@@ -25,12 +25,23 @@ void ngx_event_expire_timers(void);
 | 
					@@ -25,12 +25,23 @@ void ngx_event_expire_timers(void);
 | 
				
			||||||
 void ngx_event_cancel_timers(void);
 | 
					 ngx_int_t ngx_event_no_timers_left(void);
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
+#if (NGX_DTRACE)
 | 
					+#if (NGX_DTRACE)
 | 
				
			||||||
@ -930,7 +930,7 @@ index 99f8a48..8bc619a 100644
 | 
				
			|||||||
                    "event timer add: %d: %M:%M",
 | 
					                    "event timer add: %d: %M:%M",
 | 
				
			||||||
                     ngx_event_ident(ev->data), timer, ev->timer.key);
 | 
					                     ngx_event_ident(ev->data), timer, ev->timer.key);
 | 
				
			||||||
diff --git a/src/http/ngx_http.c b/src/http/ngx_http.c
 | 
					diff --git a/src/http/ngx_http.c b/src/http/ngx_http.c
 | 
				
			||||||
index 0ceb613..986f717 100644
 | 
					index c036389a..0e32f3d2 100644
 | 
				
			||||||
--- a/src/http/ngx_http.c
 | 
					--- a/src/http/ngx_http.c
 | 
				
			||||||
+++ b/src/http/ngx_http.c
 | 
					+++ b/src/http/ngx_http.c
 | 
				
			||||||
@@ -8,6 +8,7 @@
 | 
					@@ -8,6 +8,7 @@
 | 
				
			||||||
@ -952,7 +952,7 @@ index 0ceb613..986f717 100644
 | 
				
			|||||||
                 return NGX_CONF_ERROR;
 | 
					                 return NGX_CONF_ERROR;
 | 
				
			||||||
             }
 | 
					             }
 | 
				
			||||||
diff --git a/src/http/ngx_http_core_module.c b/src/http/ngx_http_core_module.c
 | 
					diff --git a/src/http/ngx_http_core_module.c b/src/http/ngx_http_core_module.c
 | 
				
			||||||
index 3f1b595..d6f61bf 100644
 | 
					index 02059efd..194e62a0 100644
 | 
				
			||||||
--- a/src/http/ngx_http_core_module.c
 | 
					--- a/src/http/ngx_http_core_module.c
 | 
				
			||||||
+++ b/src/http/ngx_http_core_module.c
 | 
					+++ b/src/http/ngx_http_core_module.c
 | 
				
			||||||
@@ -8,6 +8,7 @@
 | 
					@@ -8,6 +8,7 @@
 | 
				
			||||||
@ -963,7 +963,7 @@ index 3f1b595..d6f61bf 100644
 | 
				
			|||||||
 
 | 
					 
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
 typedef struct {
 | 
					 typedef struct {
 | 
				
			||||||
@@ -2431,6 +2432,8 @@ ngx_http_subrequest(ngx_http_request_t *r,
 | 
					@@ -2448,6 +2449,8 @@ ngx_http_subrequest(ngx_http_request_t *r,
 | 
				
			||||||
     ngx_http_postponed_request_t  *pr, *p;
 | 
					     ngx_http_postponed_request_t  *pr, *p;
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
     if (r->subrequests == 0) {
 | 
					     if (r->subrequests == 0) {
 | 
				
			||||||
@ -972,9 +972,9 @@ index 3f1b595..d6f61bf 100644
 | 
				
			|||||||
         ngx_log_error(NGX_LOG_ERR, r->connection->log, 0,
 | 
					         ngx_log_error(NGX_LOG_ERR, r->connection->log, 0,
 | 
				
			||||||
                       "subrequests cycle while processing \"%V\"", uri);
 | 
					                       "subrequests cycle while processing \"%V\"", uri);
 | 
				
			||||||
         return NGX_ERROR;
 | 
					         return NGX_ERROR;
 | 
				
			||||||
@@ -2557,6 +2560,8 @@ ngx_http_subrequest(ngx_http_request_t *r,
 | 
					@@ -2596,6 +2599,8 @@ ngx_http_subrequest(ngx_http_request_t *r,
 | 
				
			||||||
 
 | 
					         ngx_http_update_location_config(sr);
 | 
				
			||||||
     *psr = sr;
 | 
					     }
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
+    ngx_http_probe_subrequest_start(sr);
 | 
					+    ngx_http_probe_subrequest_start(sr);
 | 
				
			||||||
+
 | 
					+
 | 
				
			||||||
@ -983,7 +983,7 @@ index 3f1b595..d6f61bf 100644
 | 
				
			|||||||
 
 | 
					 
 | 
				
			||||||
diff --git a/src/http/ngx_http_probe.h b/src/http/ngx_http_probe.h
 | 
					diff --git a/src/http/ngx_http_probe.h b/src/http/ngx_http_probe.h
 | 
				
			||||||
new file mode 100644
 | 
					new file mode 100644
 | 
				
			||||||
index 0000000..d7d2d45
 | 
					index 00000000..d7d2d45d
 | 
				
			||||||
--- /dev/null
 | 
					--- /dev/null
 | 
				
			||||||
+++ b/src/http/ngx_http_probe.h
 | 
					+++ b/src/http/ngx_http_probe.h
 | 
				
			||||||
@@ -0,0 +1,75 @@
 | 
					@@ -0,0 +1,75 @@
 | 
				
			||||||
@ -1063,7 +1063,7 @@ index 0000000..d7d2d45
 | 
				
			|||||||
+
 | 
					+
 | 
				
			||||||
+#endif /* _NGX_HTTP_PROBE_H_INCLUDED_ */
 | 
					+#endif /* _NGX_HTTP_PROBE_H_INCLUDED_ */
 | 
				
			||||||
diff --git a/src/http/ngx_http_request.c b/src/http/ngx_http_request.c
 | 
					diff --git a/src/http/ngx_http_request.c b/src/http/ngx_http_request.c
 | 
				
			||||||
index 860b228..7d9fb5d 100644
 | 
					index de1b2027..887cf6cd 100644
 | 
				
			||||||
--- a/src/http/ngx_http_request.c
 | 
					--- a/src/http/ngx_http_request.c
 | 
				
			||||||
+++ b/src/http/ngx_http_request.c
 | 
					+++ b/src/http/ngx_http_request.c
 | 
				
			||||||
@@ -8,6 +8,7 @@
 | 
					@@ -8,6 +8,7 @@
 | 
				
			||||||
@ -1074,7 +1074,7 @@ index 860b228..7d9fb5d 100644
 | 
				
			|||||||
 
 | 
					 
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
 static void ngx_http_wait_request_handler(ngx_event_t *ev);
 | 
					 static void ngx_http_wait_request_handler(ngx_event_t *ev);
 | 
				
			||||||
@@ -1058,7 +1059,6 @@ ngx_http_process_request_line(ngx_event_t *rev)
 | 
					@@ -1091,7 +1092,6 @@ ngx_http_process_request_line(ngx_event_t *rev)
 | 
				
			||||||
     }
 | 
					     }
 | 
				
			||||||
 }
 | 
					 }
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
@ -1082,7 +1082,7 @@ index 860b228..7d9fb5d 100644
 | 
				
			|||||||
 ngx_int_t
 | 
					 ngx_int_t
 | 
				
			||||||
 ngx_http_process_request_uri(ngx_http_request_t *r)
 | 
					 ngx_http_process_request_uri(ngx_http_request_t *r)
 | 
				
			||||||
 {
 | 
					 {
 | 
				
			||||||
@@ -1315,6 +1315,8 @@ ngx_http_process_request_headers(ngx_event_t *rev)
 | 
					@@ -1348,6 +1348,8 @@ ngx_http_process_request_headers(ngx_event_t *rev)
 | 
				
			||||||
                 return;
 | 
					                 return;
 | 
				
			||||||
             }
 | 
					             }
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
@ -1091,7 +1091,7 @@ index 860b228..7d9fb5d 100644
 | 
				
			|||||||
             ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0,
 | 
					             ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0,
 | 
				
			||||||
                            "http header: \"%V: %V\"",
 | 
					                            "http header: \"%V: %V\"",
 | 
				
			||||||
                            &h->key, &h->value);
 | 
					                            &h->key, &h->value);
 | 
				
			||||||
@@ -2285,7 +2287,11 @@ ngx_http_finalize_request(ngx_http_request_t *r, ngx_int_t rc)
 | 
					@@ -2327,7 +2329,11 @@ ngx_http_finalize_request(ngx_http_request_t *r, ngx_int_t rc)
 | 
				
			||||||
     }
 | 
					     }
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
     if (r != r->main && r->post_subrequest) {
 | 
					     if (r != r->main && r->post_subrequest) {
 | 
				
			||||||
@ -1103,7 +1103,7 @@ index 860b228..7d9fb5d 100644
 | 
				
			|||||||
     }
 | 
					     }
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
     if (rc == NGX_ERROR
 | 
					     if (rc == NGX_ERROR
 | 
				
			||||||
@@ -2335,6 +2341,8 @@ ngx_http_finalize_request(ngx_http_request_t *r, ngx_int_t rc)
 | 
					@@ -2393,6 +2399,8 @@ ngx_http_finalize_request(ngx_http_request_t *r, ngx_int_t rc)
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
         if (r->buffered || r->postponed) {
 | 
					         if (r->buffered || r->postponed) {
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
@ -1112,7 +1112,7 @@ index 860b228..7d9fb5d 100644
 | 
				
			|||||||
             if (ngx_http_set_write_handler(r) != NGX_OK) {
 | 
					             if (ngx_http_set_write_handler(r) != NGX_OK) {
 | 
				
			||||||
                 ngx_http_terminate_request(r, 0);
 | 
					                 ngx_http_terminate_request(r, 0);
 | 
				
			||||||
             }
 | 
					             }
 | 
				
			||||||
@@ -2370,10 +2378,14 @@ ngx_http_finalize_request(ngx_http_request_t *r, ngx_int_t rc)
 | 
					@@ -2425,10 +2433,14 @@ ngx_http_finalize_request(ngx_http_request_t *r, ngx_int_t rc)
 | 
				
			||||||
                 pr->postponed = pr->postponed->next;
 | 
					                 pr->postponed = pr->postponed->next;
 | 
				
			||||||
             }
 | 
					             }
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
@ -1127,7 +1127,7 @@ index 860b228..7d9fb5d 100644
 | 
				
			|||||||
             ngx_log_debug2(NGX_LOG_DEBUG_HTTP, c->log, 0,
 | 
					             ngx_log_debug2(NGX_LOG_DEBUG_HTTP, c->log, 0,
 | 
				
			||||||
                            "http finalize non-active request: \"%V?%V\"",
 | 
					                            "http finalize non-active request: \"%V?%V\"",
 | 
				
			||||||
                            &r->uri, &r->args);
 | 
					                            &r->uri, &r->args);
 | 
				
			||||||
@@ -2385,6 +2397,8 @@ ngx_http_finalize_request(ngx_http_request_t *r, ngx_int_t rc)
 | 
					@@ -2440,6 +2452,8 @@ ngx_http_finalize_request(ngx_http_request_t *r, ngx_int_t rc)
 | 
				
			||||||
             }
 | 
					             }
 | 
				
			||||||
         }
 | 
					         }
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
@ -1137,7 +1137,7 @@ index 860b228..7d9fb5d 100644
 | 
				
			|||||||
             r->main->count++;
 | 
					             r->main->count++;
 | 
				
			||||||
             ngx_http_terminate_request(r, 0);
 | 
					             ngx_http_terminate_request(r, 0);
 | 
				
			||||||
diff --git a/src/http/ngx_http_request_body.c b/src/http/ngx_http_request_body.c
 | 
					diff --git a/src/http/ngx_http_request_body.c b/src/http/ngx_http_request_body.c
 | 
				
			||||||
index e9562c0..2a65644 100644
 | 
					index c4f092e5..67a8cbf9 100644
 | 
				
			||||||
--- a/src/http/ngx_http_request_body.c
 | 
					--- a/src/http/ngx_http_request_body.c
 | 
				
			||||||
+++ b/src/http/ngx_http_request_body.c
 | 
					+++ b/src/http/ngx_http_request_body.c
 | 
				
			||||||
@@ -8,6 +8,7 @@
 | 
					@@ -8,6 +8,7 @@
 | 
				
			||||||
@ -1148,7 +1148,7 @@ index e9562c0..2a65644 100644
 | 
				
			|||||||
 
 | 
					 
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
 static void ngx_http_read_client_request_body_handler(ngx_http_request_t *r);
 | 
					 static void ngx_http_read_client_request_body_handler(ngx_http_request_t *r);
 | 
				
			||||||
@@ -471,6 +472,8 @@ ngx_http_do_read_client_request_body(ngx_http_request_t *r)
 | 
					@@ -421,6 +422,8 @@ ngx_http_do_read_client_request_body(ngx_http_request_t *r)
 | 
				
			||||||
         rb->post_handler(r);
 | 
					         rb->post_handler(r);
 | 
				
			||||||
     }
 | 
					     }
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user