Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nginx/nginx.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--auto/cc6
-rw-r--r--auto/install1
-rw-r--r--auto/os/solaris8
-rw-r--r--src/core/nginx.c10
-rw-r--r--src/core/ngx_cycle.c2
-rw-r--r--src/core/ngx_log.c26
-rw-r--r--src/core/ngx_log.h3
-rw-r--r--src/http/modules/proxy/ngx_http_proxy_handler.c8
-rw-r--r--src/http/ngx_http_core_module.c11
-rw-r--r--src/os/unix/ngx_process_cycle.c9
10 files changed, 55 insertions, 29 deletions
diff --git a/auto/cc b/auto/cc
index b05df7669..eff642125 100644
--- a/auto/cc
+++ b/auto/cc
@@ -28,12 +28,6 @@ case $CC in
# optimize for Pentium 4, gcc 3.x
CPU_OPT="-march=pentium4"
;;
-
- sparc64)
- # build 64-bit binary, sparcv9 only
- CPU_OPT="-m64"
- ;;
-
esac
# STUB for batch builds
diff --git a/auto/install b/auto/install
index 31a191d83..b838b9b2c 100644
--- a/auto/install
+++ b/auto/install
@@ -7,6 +7,7 @@ install:
test -d $PREFIX || mkdir -p $PREFIX
test -d `dirname $SBIN_PATH` || mkdir -p `dirname $SBIN_PATH`
+ test ! -f $SBIN_PATH || mv $SBIN_PATH $SBIN_PATH.old
cp nginx $SBIN_PATH
test -d `dirname $CONF_PATH` || mkdir -p `dirname $CONF_PATH`
diff --git a/auto/os/solaris b/auto/os/solaris
index 6a4bd22b8..29497ff5f 100644
--- a/auto/os/solaris
+++ b/auto/os/solaris
@@ -32,6 +32,14 @@ case $PLATFORM in
*:sun4u)
CFLAGS="$CFLAGS -mcpu=v9"
+
+ if [ ".$CPU" = ".sparc64" ]; then
+ CFLAGS="$CFLAGS -m64"
+ CPU_OPT="-m64"
+ CORE_LINK="$CORE_LINK -m64"
+
+ CC_TEST_FLAGS="$CC_TEST_FLAGS -mcpu=v9 -m64"
+ fi
;;
*)
diff --git a/src/core/nginx.c b/src/core/nginx.c
index 0f37f2ad8..a41c55cea 100644
--- a/src/core/nginx.c
+++ b/src/core/nginx.c
@@ -118,7 +118,7 @@ int main(int argc, char *const *argv)
ngx_pid = ngx_getpid();
- if (!(log = ngx_log_init_errlog())) {
+ if (!(log = ngx_log_init_stderr())) {
return 1;
}
@@ -144,6 +144,14 @@ int main(int argc, char *const *argv)
return 1;
}
+ if (ngx_test_config) {
+ log->log_level = NGX_LOG_INFO;
+ } else {
+ if (ngx_log_init_error_log() == NGX_ERROR) {
+ return 1;
+ }
+ }
+
if (ngx_os_init(log) == NGX_ERROR) {
return 1;
}
diff --git a/src/core/ngx_cycle.c b/src/core/ngx_cycle.c
index d0e31c9e0..a545c61d7 100644
--- a/src/core/ngx_cycle.c
+++ b/src/core/ngx_cycle.c
@@ -223,7 +223,7 @@ ngx_cycle_t *ngx_init_cycle(ngx_cycle_t *old_cycle)
NGX_FILE_RDWR,
NGX_FILE_CREATE_OR_OPEN|NGX_FILE_APPEND);
-#if 1
+#if 0
log->log_level = NGX_LOG_DEBUG_ALL;
#endif
ngx_log_debug3(NGX_LOG_DEBUG_CORE, log, 0,
diff --git a/src/core/ngx_log.c b/src/core/ngx_log.c
index fd8f9d940..78f3af5fc 100644
--- a/src/core/ngx_log.c
+++ b/src/core/ngx_log.c
@@ -224,11 +224,8 @@ void ngx_assert_core(ngx_log_t *log, const char *fmt, ...)
#endif
-
-ngx_log_t *ngx_log_init_errlog()
+ngx_log_t *ngx_log_init_stderr()
{
- ngx_fd_t fd;
-
#if (WIN32)
ngx_stderr.fd = GetStdHandle(STD_ERROR_HANDLE);
@@ -253,10 +250,17 @@ ngx_log_t *ngx_log_init_errlog()
#endif
ngx_log.file = &ngx_stderr;
+ ngx_log.log_level = NGX_LOG_ERR;
-#ifdef NGX_ERROR_LOG_PATH
+ return &ngx_log;
+}
- ngx_log.log_level = NGX_LOG_ERR;
+
+ngx_int_t ngx_log_init_error_log()
+{
+ ngx_fd_t fd;
+
+#ifdef NGX_ERROR_LOG_PATH
fd = ngx_open_file(NGX_ERROR_LOG_PATH, NGX_FILE_RDWR,
NGX_FILE_CREATE_OR_OPEN|NGX_FILE_APPEND);
@@ -264,7 +268,7 @@ ngx_log_t *ngx_log_init_errlog()
if (fd == NGX_INVALID_FILE) {
ngx_log_error(NGX_LOG_EMERG, (&ngx_log), ngx_errno,
ngx_open_file_n " \"" NGX_ERROR_LOG_PATH "\" failed");
- return NULL;
+ return NGX_ERROR;
}
#if (WIN32)
@@ -273,7 +277,7 @@ ngx_log_t *ngx_log_init_errlog()
ngx_log_error(NGX_LOG_EMERG, (&ngx_log), ngx_errno,
ngx_file_append_mode_n " \"" NGX_ERROR_LOG_PATH
"\" failed");
- return NULL;
+ return NGX_ERROR;
}
#else
@@ -281,18 +285,18 @@ ngx_log_t *ngx_log_init_errlog()
if (dup2(fd, STDERR_FILENO) == NGX_ERROR) {
ngx_log_error(NGX_LOG_EMERG, (&ngx_log), ngx_errno,
"dup2(STDERR) failed");
- return NULL;
+ return NGX_ERROR;
}
#endif
-#else
+#else /* no NGX_ERROR_LOG_PATH */
ngx_log.log_level = NGX_LOG_INFO;
#endif
- return &ngx_log;
+ return NGX_OK;
}
diff --git a/src/core/ngx_log.h b/src/core/ngx_log.h
index a3adb0449..4133f9835 100644
--- a/src/core/ngx_log.h
+++ b/src/core/ngx_log.h
@@ -195,7 +195,8 @@ void ngx_assert_core(ngx_log_t *log, const char *fmt, ...);
#define ngx_log_alloc_log(pool, log) ngx_palloc(pool, log, sizeof(ngx_log_t))
#define ngx_log_copy_log(new, old) ngx_memcpy(new, old, sizeof(ngx_log_t))
-ngx_log_t *ngx_log_init_errlog();
+ngx_log_t *ngx_log_init_stderr();
+ngx_int_t ngx_log_init_error_log();
ngx_log_t *ngx_log_create_errlog(ngx_cycle_t *cycle, ngx_array_t *args);
char *ngx_set_error_log_levels(ngx_conf_t *cf, ngx_log_t *log);
diff --git a/src/http/modules/proxy/ngx_http_proxy_handler.c b/src/http/modules/proxy/ngx_http_proxy_handler.c
index f394fbb24..3fa2e0bf3 100644
--- a/src/http/modules/proxy/ngx_http_proxy_handler.c
+++ b/src/http/modules/proxy/ngx_http_proxy_handler.c
@@ -919,19 +919,19 @@ static char *ngx_http_proxy_merge_loc_conf(ngx_conf_t *cf,
ngx_conf_merge_msec_value(conf->connect_timeout,
prev->connect_timeout, 60000);
- ngx_conf_merge_msec_value(conf->send_timeout, prev->send_timeout, 30000);
+ ngx_conf_merge_msec_value(conf->send_timeout, prev->send_timeout, 60000);
ngx_conf_merge_value(conf->preserve_host, prev->preserve_host, 0);
ngx_conf_merge_value(conf->set_x_real_ip, prev->set_x_real_ip, 0);
ngx_conf_merge_value(conf->add_x_forwarded_for,
prev->add_x_forwarded_for, 0);
- ngx_conf_merge_msec_value(conf->read_timeout, prev->read_timeout, 30000);
+ ngx_conf_merge_msec_value(conf->read_timeout, prev->read_timeout, 60000);
ngx_conf_merge_size_value(conf->header_buffer_size,
- prev->header_buffer_size, 4096);
+ prev->header_buffer_size, (size_t) ngx_pagesize);
- ngx_conf_merge_bufs_value(conf->bufs, prev->bufs, 8, 4096);
+ ngx_conf_merge_bufs_value(conf->bufs, prev->bufs, 8, ngx_pagesize);
if (conf->bufs.num < 2) {
ngx_conf_log_error(NGX_LOG_EMERG, cf, 0,
diff --git a/src/http/ngx_http_core_module.c b/src/http/ngx_http_core_module.c
index 68bb314b3..6df6edf45 100644
--- a/src/http/ngx_http_core_module.c
+++ b/src/http/ngx_http_core_module.c
@@ -1330,11 +1330,11 @@ static char *ngx_http_core_merge_srv_conf(ngx_conf_t *cf,
}
ngx_conf_merge_size_value(conf->connection_pool_size,
- prev->connection_pool_size, 2048);
+ prev->connection_pool_size, 256);
ngx_conf_merge_msec_value(conf->post_accept_timeout,
- prev->post_accept_timeout, 30000);
+ prev->post_accept_timeout, 60000);
ngx_conf_merge_size_value(conf->request_pool_size,
- prev->request_pool_size, 16384);
+ prev->request_pool_size, 4096);
ngx_conf_merge_msec_value(conf->client_header_timeout,
prev->client_header_timeout, 60000);
ngx_conf_merge_size_value(conf->client_header_buffer_size,
@@ -1469,9 +1469,10 @@ static char *ngx_http_core_merge_loc_conf(ngx_conf_t *cf,
prev->default_type, "text/plain");
ngx_conf_merge_size_value(conf->client_max_body_size,
- prev->client_max_body_size, 10 * 1024 * 1024);
+ prev->client_max_body_size, 1 * 1024 * 1024);
ngx_conf_merge_size_value(conf->client_body_buffer_size,
- prev->client_body_buffer_size, 8192);
+ prev->client_body_buffer_size,
+ (size_t) 2 * ngx_pagesize);
ngx_conf_merge_msec_value(conf->client_body_timeout,
prev->client_body_timeout, 60000);
ngx_conf_merge_value(conf->sendfile, prev->sendfile, 0);
diff --git a/src/os/unix/ngx_process_cycle.c b/src/os/unix/ngx_process_cycle.c
index 159d23094..5a9f79dc2 100644
--- a/src/os/unix/ngx_process_cycle.c
+++ b/src/os/unix/ngx_process_cycle.c
@@ -549,10 +549,19 @@ static void ngx_worker_process_cycle(ngx_cycle_t *cycle, void *data)
ngx_err_t err;
ngx_int_t n;
ngx_uint_t i;
+ struct timeval tv;
ngx_listening_t *ls;
ngx_core_conf_t *ccf;
ngx_connection_t *c;
+
+ 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_process = NGX_PROCESS_WORKER;
ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx, ngx_core_module);