diff options
author | Igor Sysoev <igor@sysoev.ru> | 2005-10-07 13:30:52 +0000 |
---|---|---|
committer | Igor Sysoev <igor@sysoev.ru> | 2005-10-07 13:30:52 +0000 |
commit | 208eed22101e987a370036fa3851ce81c088c599 (patch) | |
tree | 40f2aa55bb0415eef08415373d380577eb18561f /src/core | |
parent | 12b7a12a2d2cbf4a98a23c2d6c0c06ff588d2d70 (diff) | |
download | nginx-release-0.3.0.tar.gz nginx-release-0.3.0.zip |
nginx-0.3.0-RELEASE importrelease-0.3.0
*) Change: the 10-days live time limit of worker process was
eliminated. The limit was introduced because of millisecond timers
overflow.
Diffstat (limited to 'src/core')
-rw-r--r-- | src/core/nginx.c | 4 | ||||
-rw-r--r-- | src/core/nginx.h | 2 | ||||
-rw-r--r-- | src/core/ngx_connection.h | 2 | ||||
-rw-r--r-- | src/core/ngx_core.h | 5 | ||||
-rw-r--r-- | src/core/ngx_rbtree.c | 7 | ||||
-rw-r--r-- | src/core/ngx_rbtree.h | 22 | ||||
-rw-r--r-- | src/core/ngx_string.c | 9 | ||||
-rw-r--r-- | src/core/ngx_times.c | 10 | ||||
-rw-r--r-- | src/core/ngx_times.h | 16 |
9 files changed, 40 insertions, 37 deletions
diff --git a/src/core/nginx.c b/src/core/nginx.c index 09edae5b8..cc13f75c1 100644 --- a/src/core/nginx.c +++ b/src/core/nginx.c @@ -218,7 +218,7 @@ main(int argc, char *const *argv) if (cycle == NULL) { if (ngx_test_config) { ngx_log_error(NGX_LOG_EMERG, log, 0, - "the configuration file \"%s\" test failed", + "the configuration file %s test failed", init_cycle.conf_file.data); } @@ -227,7 +227,7 @@ main(int argc, char *const *argv) if (ngx_test_config) { ngx_log_error(NGX_LOG_INFO, log, 0, - "the configuration file \"%s\" was tested successfully", + "the configuration file %s was tested successfully", cycle->conf_file.data); return 0; } diff --git a/src/core/nginx.h b/src/core/nginx.h index 78e731967..734c4016f 100644 --- a/src/core/nginx.h +++ b/src/core/nginx.h @@ -8,7 +8,7 @@ #define _NGINX_H_INCLUDED_ -#define NGINX_VER "nginx/0.2.6" +#define NGINX_VER "nginx/0.3.0" #define NGINX_VAR "NGINX" #define NGX_OLDPID_EXT ".oldbin" diff --git a/src/core/ngx_connection.h b/src/core/ngx_connection.h index e5df4372f..ca5b05325 100644 --- a/src/core/ngx_connection.h +++ b/src/core/ngx_connection.h @@ -39,7 +39,7 @@ struct ngx_listening_s { /* should be here because of the AcceptEx() preread */ size_t post_accept_buffer_size; /* should be here because of the deferred accept */ - time_t post_accept_timeout; + ngx_msec_t post_accept_timeout; ngx_listening_t *previous; ngx_connection_t *connection; diff --git a/src/core/ngx_core.h b/src/core/ngx_core.h index a32733996..27058bfc2 100644 --- a/src/core/ngx_core.h +++ b/src/core/ngx_core.h @@ -36,6 +36,7 @@ typedef void (*ngx_connection_handler_pt)(ngx_connection_t *c); #include <ngx_atomic.h> +#include <ngx_rbtree.h> #include <ngx_time.h> #include <ngx_socket.h> #include <ngx_errno.h> @@ -59,7 +60,6 @@ typedef void (*ngx_connection_handler_pt)(ngx_connection_t *c); #if (NGX_PCRE) #include <ngx_regex.h> #endif -#include <ngx_rbtree.h> #include <ngx_radix_tree.h> #include <ngx_times.h> #include <ngx_inet.h> @@ -81,4 +81,7 @@ typedef void (*ngx_connection_handler_pt)(ngx_connection_t *c); #define CRLF "\x0d\x0a" +#define ngx_abs(value) (((value) >= 0) ? (value) : - (value)) + + #endif /* _NGX_CORE_H_INCLUDED_ */ diff --git a/src/core/ngx_rbtree.c b/src/core/ngx_rbtree.c index d3bb3a573..1ebc56a3b 100644 --- a/src/core/ngx_rbtree.c +++ b/src/core/ngx_rbtree.c @@ -47,7 +47,12 @@ ngx_rbtree_insert(ngx_rbtree_t **root, ngx_rbtree_t *sentinel, temp = *root; for ( ;; ) { - if (node->key < temp->key) { + + /* node->key < temp->key */ + + if ((ngx_rbtree_key_int_t) node->key - (ngx_rbtree_key_int_t) temp->key + < 0) + { if (temp->left == sentinel) { temp->left = node; break; diff --git a/src/core/ngx_rbtree.h b/src/core/ngx_rbtree.h index c8b7092ff..d6803f912 100644 --- a/src/core/ngx_rbtree.h +++ b/src/core/ngx_rbtree.h @@ -12,14 +12,18 @@ #include <ngx_core.h> +typedef ngx_uint_t ngx_rbtree_key_t; +typedef ngx_int_t ngx_rbtree_key_int_t; + + typedef struct ngx_rbtree_s ngx_rbtree_t; struct ngx_rbtree_s { - ngx_int_t key; - ngx_rbtree_t *left; - ngx_rbtree_t *right; - ngx_rbtree_t *parent; - char color; + ngx_rbtree_key_t key; + ngx_rbtree_t *left; + ngx_rbtree_t *right; + ngx_rbtree_t *parent; + char color; }; @@ -32,11 +36,11 @@ void ngx_rbtree_delete(ngx_rbtree_t **root, ngx_rbtree_t *sentinel, static ngx_inline ngx_rbtree_t * ngx_rbtree_min(ngx_rbtree_t *node, ngx_rbtree_t *sentinel) { - while (node->left != sentinel) { - node = node->left; - } + while (node->left != sentinel) { + node = node->left; + } - return node; + return node; } diff --git a/src/core/ngx_string.c b/src/core/ngx_string.c index 575e60e84..93449abcc 100644 --- a/src/core/ngx_string.c +++ b/src/core/ngx_string.c @@ -57,6 +57,7 @@ ngx_pstrdup(ngx_pool_t *pool, ngx_str_t *src) * %[0][width][u][x|X]L int64_t/uint64_t * %[0][width|m][u][x|X]A ngx_atomic_int_t/ngx_atomic_uint_t * %P ngx_pid_t + * %M ngx_msec_t * %r rlim_t * %p pointer * %V pointer to ngx_str_t @@ -66,9 +67,6 @@ ngx_pstrdup(ngx_pool_t *pool, ngx_str_t *src) * %c char * %% % * - * TODO: - * %M ngx_msec_t - * * reserved: * %t ptrdiff_t * %S null-teminated wchar string @@ -222,6 +220,11 @@ ngx_vsnprintf(u_char *buf, size_t max, const char *fmt, va_list args) sign = 1; break; + case 'M': + ui64 = (uint64_t) va_arg(args, ngx_msec_t); + sign = 0; + break; + case 'z': if (sign) { i64 = (int64_t) va_arg(args, ssize_t); diff --git a/src/core/ngx_times.c b/src/core/ngx_times.c index 3b0dc3759..c806d55f8 100644 --- a/src/core/ngx_times.c +++ b/src/core/ngx_times.c @@ -8,11 +8,9 @@ #include <ngx_core.h> -ngx_epoch_msec_t ngx_elapsed_msec; -ngx_epoch_msec_t ngx_old_elapsed_msec; -ngx_epoch_msec_t ngx_start_msec; +ngx_msec_t ngx_current_time; -ngx_int_t ngx_gmtoff; +ngx_int_t ngx_gmtoff; static ngx_tm_t ngx_cached_gmtime; @@ -91,9 +89,7 @@ ngx_time_init(void) ngx_gettimeofday(&tv); - ngx_start_msec = (ngx_epoch_msec_t) tv.tv_sec * 1000 + tv.tv_usec / 1000; - ngx_old_elapsed_msec = 0; - ngx_elapsed_msec = 0; + ngx_current_time = (ngx_msec_t) tv.tv_sec * 1000 + tv.tv_usec / 1000; #if !(NGX_WIN32) tzset(); diff --git a/src/core/ngx_times.h b/src/core/ngx_times.h index 2959cc4b6..bbcb41348 100644 --- a/src/core/ngx_times.h +++ b/src/core/ngx_times.h @@ -39,21 +39,13 @@ extern ngx_thread_volatile ngx_str_t ngx_cached_err_log_time; extern ngx_thread_volatile ngx_str_t ngx_cached_http_time; extern ngx_thread_volatile ngx_str_t ngx_cached_http_log_time; -extern ngx_epoch_msec_t ngx_start_msec; +extern ngx_int_t ngx_gmtoff; /* - * msecs elapsed since ngx_start_msec in the current event cycle, - * used in ngx_event_add_timer() and ngx_event_find_timer() + * milliseconds elapsed since epoch and truncated to ngx_msec_t, + * used in event timers */ -extern ngx_epoch_msec_t ngx_elapsed_msec; - -/* - * msecs elapsed since ngx_start_msec in the previous event cycle, - * used in ngx_event_expire_timers() - */ -extern ngx_epoch_msec_t ngx_old_elapsed_msec; - -extern ngx_int_t ngx_gmtoff; +extern ngx_msec_t ngx_current_time; #endif /* _NGX_TIMES_H_INCLUDED_ */ |