You are viewing a plain text version of this content. The canonical link for it is here.
Posted to site-cvs@tcl.apache.org by mx...@apache.org on 2015/06/30 16:54:33 UTC
svn commit: r1688465 - in /tcl/rivet/trunk: ChangeLog
src/mod_rivet/apache_config.c src/mod_rivet/rivet_worker_mpm.c
Author: mxmanghi
Date: Tue Jun 30 14:54:32 2015
New Revision: 1688465
URL: http://svn.apache.org/r1688465
Log:
* src/mod_rivet/rivet_worker_mpm.c: thread id determination
method changed to support Apache 2.2
Modified:
tcl/rivet/trunk/ChangeLog
tcl/rivet/trunk/src/mod_rivet/apache_config.c
tcl/rivet/trunk/src/mod_rivet/rivet_worker_mpm.c
Modified: tcl/rivet/trunk/ChangeLog
URL: http://svn.apache.org/viewvc/tcl/rivet/trunk/ChangeLog?rev=1688465&r1=1688464&r2=1688465&view=diff
==============================================================================
--- tcl/rivet/trunk/ChangeLog (original)
+++ tcl/rivet/trunk/ChangeLog Tue Jun 30 14:54:32 2015
@@ -1,3 +1,7 @@
+2015-06-30 Massimo Manghi <mx...@apache.org>
+ * src/mod_rivet/rivet_worker_mpm.c: thread id determination
+ method changed to support Apache 2.2
+
2015-06-28 Massimo Manghi <mx...@apache.org>
* src/mod_rivet/mod_rivet.c: fixed errors in comments
* src/mod_rivet/rivet_worker_mpm.c: Binding release of mutex and
Modified: tcl/rivet/trunk/src/mod_rivet/apache_config.c
URL: http://svn.apache.org/viewvc/tcl/rivet/trunk/src/mod_rivet/apache_config.c?rev=1688465&r1=1688464&r2=1688465&view=diff
==============================================================================
--- tcl/rivet/trunk/src/mod_rivet/apache_config.c (original)
+++ tcl/rivet/trunk/src/mod_rivet/apache_config.c Tue Jun 30 14:54:32 2015
@@ -403,51 +403,24 @@ Rivet_MergeConfig(apr_pool_t *p, void *b
/* server_interp isn't set at this point. */
/* rivet_global_init_script is global, not per server. */
- rsc->rivet_child_init_script = overrides->rivet_child_init_script ?
- overrides->rivet_child_init_script : base->rivet_child_init_script;
-
- rsc->rivet_child_exit_script = overrides->rivet_child_exit_script ?
- overrides->rivet_child_exit_script : base->rivet_child_exit_script;
-
- rsc->rivet_before_script = overrides->rivet_before_script ?
- overrides->rivet_before_script : base->rivet_before_script;
-
- rsc->rivet_after_script = overrides->rivet_after_script ?
- overrides->rivet_after_script : base->rivet_after_script;
-
- rsc->rivet_error_script = overrides->rivet_error_script ?
- overrides->rivet_error_script : base->rivet_error_script;
-
- rsc->rivet_default_error_script = overrides->rivet_default_error_script ?
- overrides->rivet_default_error_script : base->rivet_default_error_script;
-
- rsc->rivet_abort_script = overrides->rivet_abort_script ?
- overrides->rivet_abort_script : base->rivet_abort_script;
-
- rsc->after_every_script = overrides->after_every_script ?
- overrides->after_every_script : base->after_every_script;
-
- rsc->upload_max = overrides->upload_max ?
- overrides->upload_max : base->upload_max;
+ RIVET_CONF_SELECT(rsc,base,overrides,rivet_child_init_script)
+ RIVET_CONF_SELECT(rsc,base,overrides,rivet_child_exit_script)
+ RIVET_CONF_SELECT(rsc,base,overrides,rivet_before_script)
+ RIVET_CONF_SELECT(rsc,base,overrides,rivet_after_script)
+ RIVET_CONF_SELECT(rsc,base,overrides,rivet_error_script)
+ RIVET_CONF_SELECT(rsc,base,overrides,rivet_default_error_script)
+ RIVET_CONF_SELECT(rsc,base,overrides,rivet_abort_script)
+ RIVET_CONF_SELECT(rsc,base,overrides,after_every_script)
+ RIVET_CONF_SELECT(rsc,base,overrides,upload_max)
rsc->separate_virtual_interps = base->separate_virtual_interps;
rsc->honor_header_only_reqs = base->honor_header_only_reqs;
rsc->separate_channels = base->separate_channels;
- /* server_name is set up later. */
-
- rsc->upload_dir = overrides->upload_dir ?
- overrides->upload_dir : base->upload_dir;
-
- rsc->rivet_server_vars = overrides->rivet_server_vars ?
- overrides->rivet_server_vars : base->rivet_server_vars;
-
- rsc->rivet_dir_vars = overrides->rivet_dir_vars ?
- overrides->rivet_dir_vars : base->rivet_dir_vars;
-
- rsc->rivet_user_vars = overrides->rivet_user_vars ?
- overrides->rivet_user_vars : base->rivet_user_vars;
-
+ RIVET_CONF_SELECT(rsc,base,overrides,upload_dir)
+ RIVET_CONF_SELECT(rsc,base,overrides,rivet_server_vars)
+ RIVET_CONF_SELECT(rsc,base,overrides,rivet_dir_vars)
+ RIVET_CONF_SELECT(rsc,base,overrides,rivet_user_vars)
RIVET_CONF_SELECT(rsc,base,overrides,path)
return rsc;
Modified: tcl/rivet/trunk/src/mod_rivet/rivet_worker_mpm.c
URL: http://svn.apache.org/viewvc/tcl/rivet/trunk/src/mod_rivet/rivet_worker_mpm.c?rev=1688465&r1=1688464&r2=1688465&view=diff
==============================================================================
--- tcl/rivet/trunk/src/mod_rivet/rivet_worker_mpm.c (original)
+++ tcl/rivet/trunk/src/mod_rivet/rivet_worker_mpm.c Tue Jun 30 14:54:32 2015
@@ -106,7 +106,7 @@ void Rivet_MPM_Shutdown (void)
int i,waits;
apr_thread_mutex_lock(module_globals->pool_mutex);
- job = (handler_private *) apr_palloc(module_globals->pool,sizeof(handler_private));
+ job = (handler_private *) apr_pcalloc(module_globals->pool,sizeof(handler_private));
apr_thread_mutex_unlock(module_globals->pool_mutex);
job->job_type = orderly_exit;
@@ -412,8 +412,8 @@ void Rivet_MPM_ChildInit (apr_pool_t* po
module_globals->mpm->workers = NULL;
module_globals->mpm->server_shutdown = 0;
- module_globals->mpm->threads_count = (apr_uint32_t *) apr_palloc(pool,sizeof(apr_uint32_t));
- module_globals->mpm->running_threads_count = (apr_uint32_t *) apr_palloc(pool,sizeof(apr_uint32_t));
+ module_globals->mpm->threads_count = (apr_uint32_t *) apr_pcalloc(pool,sizeof(apr_uint32_t));
+ module_globals->mpm->running_threads_count = (apr_uint32_t *) apr_pcalloc(pool,sizeof(apr_uint32_t));
apr_atomic_set32(module_globals->mpm->threads_count,0);
apr_atomic_set32(module_globals->mpm->running_threads_count,0);
@@ -540,9 +540,18 @@ int Rivet_MPM_Request (request_rec* r)
if (request_private == NULL)
{
- apr_pool_t *tpool = apr_thread_pool_get(r->connection->current_thread);
+ apr_pool_t* tpool;
+ apr_thread_t* thread_id;
- request_private = apr_palloc(tpool,sizeof(handler_private));
+#if HTTP_VERSION(AP_SERVER_MAJORVERSION_NUMBER,AP_SERVER_MINORVERSION_NUMBER) == 2004
+ thread_id = r->connection->current_thread;
+#else
+ apr_os_thread_t os_thread_id = apr_os_thread_current();
+ apr_os_thread_put(&thread_id,&os_thread_id,r->pool);
+#endif
+
+ tpool = apr_thread_pool_get(thread_id);
+ request_private = apr_pcalloc(tpool,sizeof(handler_private));
apr_thread_cond_create (&(request_private->cond), tpool);
apr_thread_mutex_create (&(request_private->mutex), APR_THREAD_MUTEX_UNNESTED, tpool);
---------------------------------------------------------------------
To unsubscribe, e-mail: site-cvs-unsubscribe@tcl.apache.org
For additional commands, e-mail: site-cvs-help@tcl.apache.org