Skip to content

Commit

Permalink
Add additional query datum to the MPMs.
Browse files Browse the repository at this point in the history
  Harrie Hazewinkel <harrie@covalent.net>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89433 13f79535-47bb-0310-9956-ffa450edef68
  • Loading branch information
wrowe committed Jun 27, 2001
1 parent db72bd2 commit 3848b08
Show file tree
Hide file tree
Showing 8 changed files with 117 additions and 6 deletions.
18 changes: 12 additions & 6 deletions include/ap_mpm.h
Expand Up @@ -158,12 +158,18 @@ AP_DECLARE(apr_status_t) ap_os_create_privileged_process(
/* an MPM is using a dynamic # */
/* threads or daemons. */

#define AP_MPMQ_MAX_DAEMONS 1 /* Max # of daemons */
#define AP_MPMQ_IS_THREADED 2 /* MPM can do threading */
#define AP_MPMQ_IS_FORKED 3 /* MPM can do forking */
#define AP_MPMQ_HARD_LIMIT_DAEMONS 4 /* The compiled max # deamons */
#define AP_MPMQ_HARD_LIMIT_THREADS 5 /* The compiled max # threads */
#define AP_MPMQ_MAX_THREADS 6 /* Max # of threads */
#define AP_MPMQ_MAX_DAEMONS 1 /* Max # of daemons */
#define AP_MPMQ_IS_THREADED 2 /* MPM can do threading */
#define AP_MPMQ_IS_FORKED 3 /* MPM can do forking */
#define AP_MPMQ_HARD_LIMIT_DAEMONS 4 /* The compiled max # deamons */
#define AP_MPMQ_HARD_LIMIT_THREADS 5 /* The compiled max # threads */
#define AP_MPMQ_MAX_THREADS 6 /* Max # of threads */
#define AP_MPMQ_MIN_SPARE_DEAMONS 7 /* Min # of spare daemons */
#define AP_MPMQ_MIN_SPARE_THREADS 8 /* Min # of spare threads */
#define AP_MPMQ_MAX_SPARE_DAEMONS 9 /* Max # of spare daemons */
#define AP_MPMQ_MAX_SPARE_THREADS 10 /* Max # of spare threads */
#define AP_MPMQ_MAX_REQUESTS_DEAMON 11 /* Max # of requests per daemon */


/**
* Query a property of the current MPM.
Expand Down
15 changes: 15 additions & 0 deletions server/mpm/beos/beos.c
Expand Up @@ -671,6 +671,21 @@ AP_DECLARE(apr_status_t) ap_mpm_query(int query_code, int *result)
case AP_MPMQ_MAX_THREADS:
*result = ap_threads_per_child;
return APR_SUCCESS;
case AP_MPMQ_MIN_SPARE_DEAMONS:
*result = 0;
return APR_SUCCESS;
case AP_MPMQ_MIN_SPARE_THREADS:
*result = max_spare_threads;
return APR_SUCCESS;
case AP_MPMQ_MAX_SPARE_DAEMONS:
*result = 0;
return APR_SUCCESS;
case AP_MPMQ_MAX_SPARE_THREADS:
*result = min_spare_threads;
return APR_SUCCESS;
case AP_MPMQ_MAX_REQUESTS_DEAMON:
*result = ap_max_requests_per_child;
return APR_SUCCESS;
}
return APR_ENOTIMPL;
}
Expand Down
15 changes: 15 additions & 0 deletions server/mpm/experimental/perchild/perchild.c
Expand Up @@ -240,6 +240,21 @@ AP_DECLARE(apr_status_t) ap_mpm_query(int query_code, int *result)
case AP_MPMQ_MAX_THREADS:
*result = max_threads;
return APR_SUCCESS;
case AP_MPMQ_MIN_SPARE_DEAMONS:
*result = 0;
return APR_SUCCESS;
case AP_MPMQ_MIN_SPARE_THREADS:
*result = min_spare_threads;
return APR_SUCCESS;
case AP_MPMQ_MAX_SPARE_DAEMONS:
*result = 0;
return APR_SUCCESS;
case AP_MPMQ_MAX_SPARE_THREADS:
*result = max_spare_threads;
return APR_SUCCESS;
case AP_MPMQ_MAX_REQUESTS_DEAMON:
*result = max_requests_per_child;
return APR_SUCCESS;
}
return APR_ENOTIMPL;
}
Expand Down
15 changes: 15 additions & 0 deletions server/mpm/perchild/perchild.c
Expand Up @@ -240,6 +240,21 @@ AP_DECLARE(apr_status_t) ap_mpm_query(int query_code, int *result)
case AP_MPMQ_MAX_THREADS:
*result = max_threads;
return APR_SUCCESS;
case AP_MPMQ_MIN_SPARE_DEAMONS:
*result = 0;
return APR_SUCCESS;
case AP_MPMQ_MIN_SPARE_THREADS:
*result = min_spare_threads;
return APR_SUCCESS;
case AP_MPMQ_MAX_SPARE_DAEMONS:
*result = 0;
return APR_SUCCESS;
case AP_MPMQ_MAX_SPARE_THREADS:
*result = max_spare_threads;
return APR_SUCCESS;
case AP_MPMQ_MAX_REQUESTS_DEAMON:
*result = max_requests_per_child;
return APR_SUCCESS;
}
return APR_ENOTIMPL;
}
Expand Down
15 changes: 15 additions & 0 deletions server/mpm/prefork/prefork.c
Expand Up @@ -333,6 +333,21 @@ AP_DECLARE(apr_status_t) ap_mpm_query(int query_code, int *result)
case AP_MPMQ_MAX_THREADS:
*result = 0;
return APR_SUCCESS;
case AP_MPMQ_MIN_SPARE_DEAMONS:
*result = ap_daemons_min_free;
return APR_SUCCESS;
case AP_MPMQ_MIN_SPARE_THREADS:
*result = 0;
return APR_SUCCESS;
case AP_MPMQ_MAX_SPARE_DAEMONS:
*result = ap_daemons_max_free;
return APR_SUCCESS;
case AP_MPMQ_MAX_SPARE_THREADS:
*result = 0;
return APR_SUCCESS;
case AP_MPMQ_MAX_REQUESTS_DEAMON:
*result = ap_max_requests_per_child;
return APR_SUCCESS;
}
return APR_ENOTIMPL;
}
Expand Down
15 changes: 15 additions & 0 deletions server/mpm/spmt_os2/spmt_os2.c
Expand Up @@ -896,6 +896,21 @@ AP_DECLARE(apr_status_t) ap_mpm_query(int query_code, int *result)
case AP_MPMQ_MAX_THREADS:
*result = ap_threads_per_child;
return APR_SUCCESS;
case AP_MPMQ_MIN_SPARE_DEAMONS:
*result = 0;
return APR_SUCCESS;
case AP_MPMQ_MIN_SPARE_THREADS:
*result = ap_daemons_min_free;
return APR_SUCCESS;
case AP_MPMQ_MAX_SPARE_DAEMONS:
*result = 0;
return APR_SUCCESS;
case AP_MPMQ_MAX_SPARE_THREADS:
*result = ap_daemons_max_free;
return APR_SUCCESS;
case AP_MPMQ_MAX_REQUESTS_DEAMON:
*result = ap_max_requests_per_child;
return APR_SUCCESS;
}
return APR_ENOTIMPL;
}
Expand Down
15 changes: 15 additions & 0 deletions server/mpm/threaded/threaded.c
Expand Up @@ -200,6 +200,21 @@ AP_DECLARE(apr_status_t) ap_mpm_query(int query_code, int *result)
case AP_MPMQ_MAX_THREADS:
*result = ap_threads_per_child;
return APR_SUCCESS;
case AP_MPMQ_MIN_SPARE_DEAMONS:
*result = 0;
return APR_SUCCESS;
case AP_MPMQ_MIN_SPARE_THREADS:
*result = min_spare_threads;
return APR_SUCCESS;
case AP_MPMQ_MAX_SPARE_DAEMONS:
*result = 0;
return APR_SUCCESS;
case AP_MPMQ_MAX_SPARE_THREADS:
*result = max_spare_threads;
return APR_SUCCESS;
case AP_MPMQ_MAX_REQUESTS_DEAMON:
*result = ap_max_requests_per_child;
return APR_SUCCESS;
}
return APR_ENOTIMPL;
}
Expand Down
15 changes: 15 additions & 0 deletions server/mpm/winnt/mpm_winnt.c
Expand Up @@ -1549,6 +1549,21 @@ AP_DECLARE(apr_status_t) ap_mpm_query(int query_code, int *result)
case AP_MPMQ_MAX_THREADS:
*result = ap_threads_per_child;
return APR_SUCCESS;
case AP_MPMQ_MIN_SPARE_DEAMONS:
*result = 0;
return APR_SUCCESS;
case AP_MPMQ_MIN_SPARE_THREADS:
*result = 0;
return APR_SUCCESS;
case AP_MPMQ_MAX_SPARE_DAEMONS:
*result = 0;
return APR_SUCCESS;
case AP_MPMQ_MAX_SPARE_THREADS:
*result = 0;
return APR_SUCCESS;
case AP_MPMQ_MAX_REQUESTS_DEAMON:
*result = ap_max_requests_per_child;
return APR_SUCCESS;
}
return APR_ENOTIMPL;
}
Expand Down

0 comments on commit 3848b08

Please sign in to comment.