From d92be21f389d789908a53e87ef0b84acbff717b2 Mon Sep 17 00:00:00 2001 From: Bill Stoddard Date: Wed, 5 Jul 2000 19:40:39 +0000 Subject: [PATCH] Allocate iols out of the ptrans pool rather than mallocing them out of the heap. The extra malloc/free is a significant performance hit on some platforms and repeatedly alloc/freeing small chunks of storage can fragment the heap. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85770 13f79535-47bb-0310-9956-ffa450edef68 --- server/mpm/beos/beos.c | 2 +- server/mpm/dexter/dexter.c | 2 +- server/mpm/mpmt_beos/mpmt_beos.c | 2 +- server/mpm/mpmt_pthread/mpmt_pthread.c | 2 +- server/mpm/prefork/prefork.c | 2 +- server/mpm/spmt_os2/spmt_os2.c | 2 +- server/mpm/winnt/mpm_winnt.c | 2 +- 7 files changed, 7 insertions(+), 7 deletions(-) diff --git a/server/mpm/beos/beos.c b/server/mpm/beos/beos.c index 02a293f551..c4c7041f42 100644 --- a/server/mpm/beos/beos.c +++ b/server/mpm/beos/beos.c @@ -388,7 +388,7 @@ static void process_socket(ap_pool_t *p, ap_socket_t *sock, int my_child_num) return; } - iol = ap_iol_attach_socket(sock); + iol = ap_iol_attach_socket(p, sock); if (iol == NULL) { ap_log_error(APLOG_MARK, APLOG_WARNING, errno, NULL, "error attaching to socket"); diff --git a/server/mpm/dexter/dexter.c b/server/mpm/dexter/dexter.c index 6545eaa565..1faf0bca4a 100644 --- a/server/mpm/dexter/dexter.c +++ b/server/mpm/dexter/dexter.c @@ -504,7 +504,7 @@ static void process_socket(ap_pool_t *p, ap_socket_t *sock, long conn_id) } sock_disable_nagle(csd); - iol = ap_iol_attach_socket(sock); + iol = ap_iol_attach_socket(p, sock); conn_io = ap_bcreate(p, B_RDWR); ap_bpush_iol(conn_io, iol); diff --git a/server/mpm/mpmt_beos/mpmt_beos.c b/server/mpm/mpmt_beos/mpmt_beos.c index b491fb8108..2421bf06f6 100644 --- a/server/mpm/mpmt_beos/mpmt_beos.c +++ b/server/mpm/mpmt_beos/mpmt_beos.c @@ -365,7 +365,7 @@ static void process_socket(ap_pool_t *p, ap_socket_t *sock, int my_child_num, in long conn_id = my_child_num * HARD_THREAD_LIMIT + my_thread_num; int csd; - iol = ap_iol_attach_socket(sock); + iol = ap_iol_attach_socket(p, sock); if (iol == NULL) { if (errno == EBADF) { ap_log_error(APLOG_MARK, APLOG_NOERRNO|APLOG_WARNING, errno, NULL, diff --git a/server/mpm/mpmt_pthread/mpmt_pthread.c b/server/mpm/mpmt_pthread/mpmt_pthread.c index f036c469bf..69cdfbb2e0 100644 --- a/server/mpm/mpmt_pthread/mpmt_pthread.c +++ b/server/mpm/mpmt_pthread/mpmt_pthread.c @@ -499,7 +499,7 @@ static void process_socket(ap_pool_t *p, ap_socket_t *sock, int my_child_num, in sock_disable_nagle(csd); - iol = ap_iol_attach_socket(sock); + iol = ap_iol_attach_socket(p, sock); (void) ap_update_child_status(my_child_num, my_thread_num, SERVER_BUSY_READ, (request_rec *) NULL); diff --git a/server/mpm/prefork/prefork.c b/server/mpm/prefork/prefork.c index c4279ba481..555227df31 100644 --- a/server/mpm/prefork/prefork.c +++ b/server/mpm/prefork/prefork.c @@ -1039,7 +1039,7 @@ static void child_main(int child_num_arg) sock_disable_nagle(sockdes); - iol = ap_iol_attach_socket(csd); + iol = ap_iol_attach_socket(ptrans, csd); (void) ap_update_child_status(my_child_num, SERVER_BUSY_READ, (request_rec *) NULL); diff --git a/server/mpm/spmt_os2/spmt_os2.c b/server/mpm/spmt_os2/spmt_os2.c index 38a8cadf44..65d34a2138 100644 --- a/server/mpm/spmt_os2/spmt_os2.c +++ b/server/mpm/spmt_os2/spmt_os2.c @@ -994,7 +994,7 @@ static void child_main(void *child_num_arg) sock_disable_nagle(csd); - iol = ap_iol_attach_socket(csd); + iol = ap_iol_attach_socket(ptrans, csd); if (iol == NULL) { ap_log_error(APLOG_MARK, APLOG_WARNING|APLOG_NOERRNO, 0, NULL, diff --git a/server/mpm/winnt/mpm_winnt.c b/server/mpm/winnt/mpm_winnt.c index 492ab748ea..a587e40010 100644 --- a/server/mpm/winnt/mpm_winnt.c +++ b/server/mpm/winnt/mpm_winnt.c @@ -1085,7 +1085,7 @@ static void worker_main(int child_num) sock_disable_nagle(context->accept_socket); ap_put_os_sock(&context->sock, &context->accept_socket, context->ptrans); - iol = ap_iol_attach_socket(context->sock); + iol = ap_iol_attach_socket(context->ptrans, context->sock); if (iol == NULL) { ap_log_error(APLOG_MARK, APLOG_ERR, APR_ENOMEM, server_conf, "worker_main: attach_socket() failed. Continuing..."); -- 2.40.0