mirror of
https://github.com/nginx/nginx.git
synced 2025-06-07 17:52:38 +08:00
nginx-0.0.1-2003-12-19-15:45:27 import
This commit is contained in:
parent
e89c4581f4
commit
1cd1e2741a
@ -6,6 +6,7 @@
|
||||
#include <ngx_core.h>
|
||||
|
||||
|
||||
/* STUB */
|
||||
#define ngx_atomic_inc(x) x++;
|
||||
#define ngx_atomic_dec(x) x--;
|
||||
|
||||
|
@ -198,6 +198,14 @@ void ngx_assert_core(ngx_log_t *log, const char *fmt, ...);
|
||||
#define ngx_log_debug2(level, log, err, fmt, arg1, arg2)
|
||||
#endif
|
||||
|
||||
#if (NGX_DEBUG)
|
||||
#define ngx_log_debug3(level, log, err, fmt, arg1, arg2, arg3) \
|
||||
if (log->log_level & level) \
|
||||
ngx_log_error_core(NGX_LOG_DEBUG, log, err, fmt, arg1, arg2, arg3)
|
||||
#else
|
||||
#define ngx_log_debug3(level, log, err, fmt, arg1, arg2, arg3)
|
||||
#endif
|
||||
|
||||
#if (NGX_DEBUG)
|
||||
#define ngx_log_debug6(level, log, err, fmt, \
|
||||
arg1, arg2, arg3, arg4, arg5, arg6) \
|
||||
@ -236,6 +244,14 @@ void ngx_assert_core(ngx_log_t *log, const char *fmt, ...);
|
||||
#define ngx_log_debug2(level, log, err, fmt, arg1, arg2)
|
||||
#endif
|
||||
|
||||
#if (NGX_DEBUG)
|
||||
#define ngx_log_debug3(level, log, err, fmt, arg1, arg2, arg3) \
|
||||
if (log->log_level & level) \
|
||||
ngx_log_debug_core(log, err, fmt, arg1, arg2, arg3)
|
||||
#else
|
||||
#define ngx_log_debug3(level, log, err, fmt, arg1, arg2, arg3)
|
||||
#endif
|
||||
|
||||
#if (NGX_DEBUG)
|
||||
#define ngx_log_debug6(level, log, err, fmt, \
|
||||
arg1, arg2, arg3, arg4, arg5, arg6) \
|
||||
|
@ -123,7 +123,7 @@ void ngx_rbtree_insert(ngx_rbtree_t **root, ngx_rbtree_t *sentinel,
|
||||
void ngx_rbtree_delete(ngx_rbtree_t **root, ngx_rbtree_t *sentinel,
|
||||
ngx_rbtree_t *node)
|
||||
{
|
||||
ngx_int_t red;
|
||||
ngx_int_t is_red;
|
||||
ngx_rbtree_t *subst, *temp, *w;
|
||||
|
||||
/* a binary tree delete */
|
||||
@ -152,7 +152,7 @@ void ngx_rbtree_delete(ngx_rbtree_t **root, ngx_rbtree_t *sentinel,
|
||||
return;
|
||||
}
|
||||
|
||||
red = ngx_rbt_is_red(subst);
|
||||
is_red = ngx_rbt_is_red(subst);
|
||||
|
||||
if (subst == subst->parent->left) {
|
||||
subst->parent->left = temp;
|
||||
@ -199,7 +199,7 @@ void ngx_rbtree_delete(ngx_rbtree_t **root, ngx_rbtree_t *sentinel,
|
||||
}
|
||||
}
|
||||
|
||||
if (red) {
|
||||
if (is_red) {
|
||||
return;
|
||||
}
|
||||
|
||||
@ -246,7 +246,7 @@ void ngx_rbtree_delete(ngx_rbtree_t **root, ngx_rbtree_t *sentinel,
|
||||
w = temp->parent->left;
|
||||
}
|
||||
|
||||
if (ngx_rbt_is_black(w->right) && ngx_rbt_is_black(w->left)) {
|
||||
if (ngx_rbt_is_black(w->left) && ngx_rbt_is_black(w->right)) {
|
||||
ngx_rbt_red(w);
|
||||
temp = temp->parent;
|
||||
|
||||
|
@ -286,10 +286,9 @@ static int ngx_kqueue_set_event(ngx_event_t *ev, int filter, u_int flags)
|
||||
|
||||
c = ev->data;
|
||||
|
||||
#if (NGX_DEBUG_EVENT)
|
||||
ngx_log_debug(ev->log, "kqueue set event: %d: ft:%d fl:%08x" _
|
||||
c->fd _ filter _ flags);
|
||||
#endif
|
||||
ngx_log_debug3(NGX_LOG_DEBUG_EVENT, c->log, 0,
|
||||
"kevent set event: %d: ft:%d fl:%04X",
|
||||
c->fd, filter, flags);
|
||||
|
||||
if (nchanges >= max_changes) {
|
||||
ngx_log_error(NGX_LOG_WARN, ev->log, 0,
|
||||
|
@ -21,9 +21,9 @@ int ngx_event_timer_init(ngx_cycle_t *cycle)
|
||||
}
|
||||
|
||||
ngx_event_timer_rbtree = &ngx_event_timer_sentinel;
|
||||
ngx_event_timer_sentinel.left = &ngx_event_timer_sentinel;
|
||||
|
||||
#if 0
|
||||
ngx_event_timer_sentinel.left = &ngx_event_timer_sentinel;
|
||||
ngx_event_timer_sentinel.right = &ngx_event_timer_sentinel;
|
||||
ngx_event_timer_sentinel.parent = &ngx_event_timer_sentinel;
|
||||
#endif
|
||||
@ -41,19 +41,18 @@ ngx_msec_t ngx_event_find_timer(void)
|
||||
{
|
||||
ngx_rbtree_t *node;
|
||||
|
||||
if (ngx_event_timer_rbtree == &ngx_event_timer_sentinel) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
node = ngx_rbtree_min(ngx_event_timer_rbtree, &ngx_event_timer_sentinel);
|
||||
|
||||
if (node == &ngx_event_timer_sentinel) {
|
||||
return 0;
|
||||
|
||||
} else {
|
||||
return (ngx_msec_t)
|
||||
return (ngx_msec_t)
|
||||
(node->key * NGX_TIMER_RESOLUTION -
|
||||
ngx_elapsed_msec / NGX_TIMER_RESOLUTION * NGX_TIMER_RESOLUTION);
|
||||
#if 0
|
||||
(node->key * NGX_TIMER_RESOLUTION - ngx_elapsed_msec);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -63,13 +62,14 @@ void ngx_event_expire_timers(ngx_msec_t timer)
|
||||
ngx_rbtree_t *node;
|
||||
|
||||
for ( ;; ) {
|
||||
node = ngx_rbtree_min(ngx_event_timer_rbtree,
|
||||
&ngx_event_timer_sentinel);
|
||||
|
||||
if (node == &ngx_event_timer_sentinel) {
|
||||
if (ngx_event_timer_rbtree == &ngx_event_timer_sentinel) {
|
||||
break;
|
||||
}
|
||||
|
||||
node = ngx_rbtree_min(ngx_event_timer_rbtree,
|
||||
&ngx_event_timer_sentinel);
|
||||
|
||||
if ((ngx_msec_t) node->key <= (ngx_msec_t)
|
||||
(ngx_old_elapsed_msec + timer) / NGX_TIMER_RESOLUTION)
|
||||
{
|
||||
|
@ -16,7 +16,7 @@
|
||||
* 100 msec - 13 years 8 months
|
||||
*/
|
||||
|
||||
#define NGX_TIMER_RESOLUTION 50
|
||||
#define NGX_TIMER_RESOLUTION 1
|
||||
|
||||
|
||||
#if 0
|
||||
@ -36,6 +36,9 @@ extern ngx_rbtree_t ngx_event_timer_sentinel;
|
||||
|
||||
ngx_inline static void ngx_event_del_timer(ngx_event_t *ev)
|
||||
{
|
||||
ngx_log_debug1(NGX_LOG_DEBUG_EVENT, ev->log, 0,
|
||||
"event timer del: %d", ev->rbtree_key);
|
||||
|
||||
ngx_rbtree_delete(&ngx_event_timer_rbtree, &ngx_event_timer_sentinel,
|
||||
(ngx_rbtree_t *) &ev->rbtree_key);
|
||||
|
||||
@ -56,6 +59,9 @@ ngx_inline static void ngx_event_add_timer(ngx_event_t *ev, ngx_msec_t timer)
|
||||
(ngx_elapsed_msec + timer) / NGX_TIMER_RESOLUTION;
|
||||
#endif
|
||||
|
||||
ngx_log_debug1(NGX_LOG_DEBUG_EVENT, ev->log, 0,
|
||||
"event timer add: %d", ev->rbtree_key);
|
||||
|
||||
ngx_rbtree_insert(&ngx_event_timer_rbtree, &ngx_event_timer_sentinel,
|
||||
(ngx_rbtree_t *) &ev->rbtree_key);
|
||||
|
||||
|
@ -10,12 +10,6 @@ static char *ngx_http_block(ngx_conf_t *cf, ngx_command_t *cmd, void *conf);
|
||||
|
||||
int ngx_http_max_module;
|
||||
|
||||
ngx_uint_t ngx_http_reading_state;
|
||||
ngx_uint_t ngx_http_processing_state;
|
||||
ngx_uint_t ngx_http_writing_state;
|
||||
ngx_uint_t ngx_http_lingering_close_state;
|
||||
ngx_uint_t ngx_http_keepalive_state;
|
||||
|
||||
ngx_uint_t ngx_http_total_requests;
|
||||
uint64_t ngx_http_total_sent;
|
||||
|
||||
|
@ -89,12 +89,6 @@ extern ngx_module_t ngx_http_module;
|
||||
|
||||
extern int ngx_max_module;
|
||||
|
||||
extern ngx_uint_t ngx_http_reading_state;
|
||||
extern ngx_uint_t ngx_http_processing_state;
|
||||
extern ngx_uint_t ngx_http_writing_state;
|
||||
extern ngx_uint_t ngx_http_lingering_close_state;
|
||||
extern ngx_uint_t ngx_http_keepalive_state;
|
||||
|
||||
extern ngx_uint_t ngx_http_total_requests;
|
||||
extern uint64_t ngx_http_total_sent;
|
||||
|
||||
|
@ -107,8 +107,6 @@ void ngx_http_init_connection(ngx_connection_t *c)
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
|
||||
ngx_atomic_inc(ngx_http_reading_state);
|
||||
}
|
||||
|
||||
|
||||
@ -129,7 +127,6 @@ static void ngx_http_init_request(ngx_event_t *rev)
|
||||
|
||||
if (rev->timedout) {
|
||||
ngx_log_error(NGX_LOG_INFO, c->log, NGX_ETIMEDOUT, "client timed out");
|
||||
ngx_atomic_dec(ngx_http_reading_state);
|
||||
ngx_http_close_connection(c);
|
||||
return;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user