You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@apr.apache.org by jean-frederic clere <jf...@fujitsu-siemens.com> on 2002/11/21 15:36:54 UTC
Re: cvs commit: apr/locks/unix proc_mutex.c
Hi Ryan,
apr_proc_mutex_destroy is still in locks/unix/global_mutex.c.
Do I miss something?
Cheers
Jean-frederic
rbb@apache.org wrote:
> rbb 2002/11/20 13:11:43
>
> Modified: include apr_proc_mutex.h
> include/arch/unix proc_mutex.h
> locks/unix proc_mutex.c
> Log:
> Register the proc_mutex cleanup with an exported API. Most of this
> change is just a name change to make it very obvious what is happening.
>
> Revision Changes Path
> 1.10 +8 -0 apr/include/apr_proc_mutex.h
>
> Index: apr_proc_mutex.h
> ===================================================================
> RCS file: /home/cvs/apr/include/apr_proc_mutex.h,v
> retrieving revision 1.9
> retrieving revision 1.10
> diff -u -r1.9 -r1.10
> --- apr_proc_mutex.h 10 Nov 2002 08:35:16 -0000 1.9
> +++ apr_proc_mutex.h 20 Nov 2002 21:11:43 -0000 1.10
> @@ -163,6 +163,14 @@
> APR_DECLARE(apr_status_t) apr_proc_mutex_destroy(apr_proc_mutex_t *mutex);
>
> /**
> + * Destroy the mutex and free the memory associated with the lock.
> + * @param mutex the mutex to destroy.
> + * @note This function is generally used to kill a cleanup on an already
> + * created mutex
> + */
> +APR_DECLARE(apr_status_t) apr_proc_mutex_cleanup(void *mutex);
> +
> +/**
> * Display the name of the mutex, as it relates to the actual method used.
> * This matches the valid options for Apache's AcceptMutex directive
> * @param mutex the name of the mutex
>
>
>
> 1.11 +1 -1 apr/include/arch/unix/proc_mutex.h
>
> Index: proc_mutex.h
> ===================================================================
> RCS file: /home/cvs/apr/include/arch/unix/proc_mutex.h,v
> retrieving revision 1.10
> retrieving revision 1.11
> diff -u -r1.10 -r1.11
> --- proc_mutex.h 18 Nov 2002 01:59:03 -0000 1.10
> +++ proc_mutex.h 20 Nov 2002 21:11:43 -0000 1.11
> @@ -111,7 +111,7 @@
> apr_status_t (*acquire)(apr_proc_mutex_t *);
> apr_status_t (*tryacquire)(apr_proc_mutex_t *);
> apr_status_t (*release)(apr_proc_mutex_t *);
> - apr_status_t (*destroy)(apr_proc_mutex_t *);
> + apr_status_t (*cleanup)(void *);
> apr_status_t (*child_init)(apr_proc_mutex_t **, apr_pool_t *, const char *);
> const char *name;
> };
>
>
>
> 1.21 +18 -23 apr/locks/unix/proc_mutex.c
>
> Index: proc_mutex.c
> ===================================================================
> RCS file: /home/cvs/apr/locks/unix/proc_mutex.c,v
> retrieving revision 1.20
> retrieving revision 1.21
> diff -u -r1.20 -r1.21
> --- proc_mutex.c 18 Nov 2002 01:59:03 -0000 1.20
> +++ proc_mutex.c 20 Nov 2002 21:11:43 -0000 1.21
> @@ -63,6 +63,12 @@
> #define SEM_FAILED (-1)
> #endif
>
> +static apr_status_t proc_mutex_destroy(apr_proc_mutex_t *mutex)
> +{
> + return apr_pool_cleanup_run(mutex->pool, mutex, apr_proc_mutex_cleanup);
> +}
> +
> +
> static void proc_mutex_posix_setup(void)
> {
> }
> @@ -122,7 +128,7 @@
> sem_unlink((const char *) semname);
> new_mutex->interproc->filedes = (int)psem; /* Ugg */
> apr_pool_cleanup_register(new_mutex->pool, (void *)new_mutex,
> - proc_mutex_posix_cleanup,
> + apr_proc_mutex_cleanup,
> apr_pool_cleanup_null);
> return APR_SUCCESS;
> }
> @@ -149,17 +155,6 @@
> return APR_SUCCESS;
> }
>
> -static apr_status_t proc_mutex_posix_destroy(apr_proc_mutex_t *mutex)
> -{
> - apr_status_t stat;
> -
> - if ((stat = proc_mutex_posix_cleanup(mutex)) == APR_SUCCESS) {
> - apr_pool_cleanup_kill(mutex->pool, mutex, proc_mutex_posix_cleanup);
> - return APR_SUCCESS;
> - }
> - return stat;
> -}
> -
> static apr_status_t proc_mutex_posix_child_init(apr_proc_mutex_t **mutex,
> apr_pool_t *cont,
> const char *fname)
> @@ -178,7 +173,7 @@
> proc_mutex_posix_acquire,
> NULL, /* no tryacquire */
> proc_mutex_posix_release,
> - proc_mutex_posix_destroy,
> + proc_mutex_posix_cleanup,
> proc_mutex_posix_child_init,
> "posixsem"
> };
> @@ -234,7 +229,7 @@
> }
> new_mutex->curr_locked = 0;
> apr_pool_cleanup_register(new_mutex->pool,
> - (void *)new_mutex, proc_mutex_sysv_cleanup,
> + (void *)new_mutex, apr_proc_mutex_cleanup,
> apr_pool_cleanup_null);
> return APR_SUCCESS;
> }
> @@ -294,7 +289,7 @@
> proc_mutex_sysv_acquire,
> NULL, /* no tryacquire */
> proc_mutex_sysv_release,
> - proc_mutex_sysv_destroy,
> + proc_mutex_sysv_cleanup,
> proc_mutex_sysv_child_init,
> "sysvsem"
> };
> @@ -399,7 +394,7 @@
> new_mutex->curr_locked = 0;
> apr_pool_cleanup_register(new_mutex->pool,
> (void *)new_mutex,
> - proc_mutex_proc_pthread_cleanup,
> + apr_proc_mutex_cleanup,
> apr_pool_cleanup_null);
> return APR_SUCCESS;
> }
> @@ -469,7 +464,7 @@
> proc_mutex_proc_pthread_acquire,
> NULL, /* no tryacquire */
> proc_mutex_proc_pthread_release,
> - proc_mutex_proc_pthread_destroy,
> + proc_mutex_proc_pthread_cleanup,
> proc_mutex_proc_pthread_child_init,
> "pthread"
> };
> @@ -544,7 +539,7 @@
> unlink(new_mutex->fname);
> apr_pool_cleanup_register(new_mutex->pool,
> (void*)new_mutex,
> - proc_mutex_fcntl_cleanup,
> + apr_proc_mutex_cleanup,
> apr_pool_cleanup_null);
> return APR_SUCCESS;
> }
> @@ -605,7 +600,7 @@
> proc_mutex_fcntl_acquire,
> NULL, /* no tryacquire */
> proc_mutex_fcntl_release,
> - proc_mutex_fcntl_destroy,
> + proc_mutex_fcntl_cleanup,
> proc_mutex_fcntl_child_init,
> "fcntl"
> };
> @@ -659,7 +654,7 @@
> }
> new_mutex->curr_locked = 0;
> apr_pool_cleanup_register(new_mutex->pool, (void *)new_mutex,
> - proc_mutex_flock_cleanup,
> + apr_proc_mutex_cleanup,
> apr_pool_cleanup_null);
> return APR_SUCCESS;
> }
> @@ -735,7 +730,7 @@
> proc_mutex_flock_acquire,
> NULL, /* no tryacquire */
> proc_mutex_flock_release,
> - proc_mutex_flock_destroy,
> + proc_mutex_flock_cleanup,
> proc_mutex_flock_child_init,
> "flock"
> };
> @@ -895,9 +890,9 @@
> return mutex->meth->release(mutex);
> }
>
> -APR_DECLARE(apr_status_t) apr_proc_mutex_destroy(apr_proc_mutex_t *mutex)
> +APR_DECLARE(apr_status_t) apr_proc_mutex_cleanup(void *mutex)
> {
> - return mutex->meth->destroy(mutex);
> + return ((apr_proc_mutex_t *)mutex)->meth->cleanup(mutex);
> }
>
> APR_DECLARE(const char *) apr_proc_mutex_name(apr_proc_mutex_t *mutex)
>
>
>
>
>
Re: cvs commit: apr/locks/unix proc_mutex.c
Posted by rb...@apache.org.
On Thu, 21 Nov 2002, jean-frederic clere wrote:
> Hi Ryan,
>
> apr_proc_mutex_destroy is still in locks/unix/global_mutex.c.
>
> Do I miss something?
Just a type on my part. I have fixed it. Thanks.
Ryan
>
> Cheers
>
> Jean-frederic
>
>
> rbb@apache.org wrote:
> > rbb 2002/11/20 13:11:43
> >
> > Modified: include apr_proc_mutex.h
> > include/arch/unix proc_mutex.h
> > locks/unix proc_mutex.c
> > Log:
> > Register the proc_mutex cleanup with an exported API. Most of this
> > change is just a name change to make it very obvious what is happening.
> >
> > Revision Changes Path
> > 1.10 +8 -0 apr/include/apr_proc_mutex.h
> >
> > Index: apr_proc_mutex.h
> > ===================================================================
> > RCS file: /home/cvs/apr/include/apr_proc_mutex.h,v
> > retrieving revision 1.9
> > retrieving revision 1.10
> > diff -u -r1.9 -r1.10
> > --- apr_proc_mutex.h 10 Nov 2002 08:35:16 -0000 1.9
> > +++ apr_proc_mutex.h 20 Nov 2002 21:11:43 -0000 1.10
> > @@ -163,6 +163,14 @@
> > APR_DECLARE(apr_status_t) apr_proc_mutex_destroy(apr_proc_mutex_t *mutex);
> >
> > /**
> > + * Destroy the mutex and free the memory associated with the lock.
> > + * @param mutex the mutex to destroy.
> > + * @note This function is generally used to kill a cleanup on an already
> > + * created mutex
> > + */
> > +APR_DECLARE(apr_status_t) apr_proc_mutex_cleanup(void *mutex);
> > +
> > +/**
> > * Display the name of the mutex, as it relates to the actual method used.
> > * This matches the valid options for Apache's AcceptMutex directive
> > * @param mutex the name of the mutex
> >
> >
> >
> > 1.11 +1 -1 apr/include/arch/unix/proc_mutex.h
> >
> > Index: proc_mutex.h
> > ===================================================================
> > RCS file: /home/cvs/apr/include/arch/unix/proc_mutex.h,v
> > retrieving revision 1.10
> > retrieving revision 1.11
> > diff -u -r1.10 -r1.11
> > --- proc_mutex.h 18 Nov 2002 01:59:03 -0000 1.10
> > +++ proc_mutex.h 20 Nov 2002 21:11:43 -0000 1.11
> > @@ -111,7 +111,7 @@
> > apr_status_t (*acquire)(apr_proc_mutex_t *);
> > apr_status_t (*tryacquire)(apr_proc_mutex_t *);
> > apr_status_t (*release)(apr_proc_mutex_t *);
> > - apr_status_t (*destroy)(apr_proc_mutex_t *);
> > + apr_status_t (*cleanup)(void *);
> > apr_status_t (*child_init)(apr_proc_mutex_t **, apr_pool_t *, const char *);
> > const char *name;
> > };
> >
> >
> >
> > 1.21 +18 -23 apr/locks/unix/proc_mutex.c
> >
> > Index: proc_mutex.c
> > ===================================================================
> > RCS file: /home/cvs/apr/locks/unix/proc_mutex.c,v
> > retrieving revision 1.20
> > retrieving revision 1.21
> > diff -u -r1.20 -r1.21
> > --- proc_mutex.c 18 Nov 2002 01:59:03 -0000 1.20
> > +++ proc_mutex.c 20 Nov 2002 21:11:43 -0000 1.21
> > @@ -63,6 +63,12 @@
> > #define SEM_FAILED (-1)
> > #endif
> >
> > +static apr_status_t proc_mutex_destroy(apr_proc_mutex_t *mutex)
> > +{
> > + return apr_pool_cleanup_run(mutex->pool, mutex, apr_proc_mutex_cleanup);
> > +}
> > +
> > +
> > static void proc_mutex_posix_setup(void)
> > {
> > }
> > @@ -122,7 +128,7 @@
> > sem_unlink((const char *) semname);
> > new_mutex->interproc->filedes = (int)psem; /* Ugg */
> > apr_pool_cleanup_register(new_mutex->pool, (void *)new_mutex,
> > - proc_mutex_posix_cleanup,
> > + apr_proc_mutex_cleanup,
> > apr_pool_cleanup_null);
> > return APR_SUCCESS;
> > }
> > @@ -149,17 +155,6 @@
> > return APR_SUCCESS;
> > }
> >
> > -static apr_status_t proc_mutex_posix_destroy(apr_proc_mutex_t *mutex)
> > -{
> > - apr_status_t stat;
> > -
> > - if ((stat = proc_mutex_posix_cleanup(mutex)) == APR_SUCCESS) {
> > - apr_pool_cleanup_kill(mutex->pool, mutex, proc_mutex_posix_cleanup);
> > - return APR_SUCCESS;
> > - }
> > - return stat;
> > -}
> > -
> > static apr_status_t proc_mutex_posix_child_init(apr_proc_mutex_t **mutex,
> > apr_pool_t *cont,
> > const char *fname)
> > @@ -178,7 +173,7 @@
> > proc_mutex_posix_acquire,
> > NULL, /* no tryacquire */
> > proc_mutex_posix_release,
> > - proc_mutex_posix_destroy,
> > + proc_mutex_posix_cleanup,
> > proc_mutex_posix_child_init,
> > "posixsem"
> > };
> > @@ -234,7 +229,7 @@
> > }
> > new_mutex->curr_locked = 0;
> > apr_pool_cleanup_register(new_mutex->pool,
> > - (void *)new_mutex, proc_mutex_sysv_cleanup,
> > + (void *)new_mutex, apr_proc_mutex_cleanup,
> > apr_pool_cleanup_null);
> > return APR_SUCCESS;
> > }
> > @@ -294,7 +289,7 @@
> > proc_mutex_sysv_acquire,
> > NULL, /* no tryacquire */
> > proc_mutex_sysv_release,
> > - proc_mutex_sysv_destroy,
> > + proc_mutex_sysv_cleanup,
> > proc_mutex_sysv_child_init,
> > "sysvsem"
> > };
> > @@ -399,7 +394,7 @@
> > new_mutex->curr_locked = 0;
> > apr_pool_cleanup_register(new_mutex->pool,
> > (void *)new_mutex,
> > - proc_mutex_proc_pthread_cleanup,
> > + apr_proc_mutex_cleanup,
> > apr_pool_cleanup_null);
> > return APR_SUCCESS;
> > }
> > @@ -469,7 +464,7 @@
> > proc_mutex_proc_pthread_acquire,
> > NULL, /* no tryacquire */
> > proc_mutex_proc_pthread_release,
> > - proc_mutex_proc_pthread_destroy,
> > + proc_mutex_proc_pthread_cleanup,
> > proc_mutex_proc_pthread_child_init,
> > "pthread"
> > };
> > @@ -544,7 +539,7 @@
> > unlink(new_mutex->fname);
> > apr_pool_cleanup_register(new_mutex->pool,
> > (void*)new_mutex,
> > - proc_mutex_fcntl_cleanup,
> > + apr_proc_mutex_cleanup,
> > apr_pool_cleanup_null);
> > return APR_SUCCESS;
> > }
> > @@ -605,7 +600,7 @@
> > proc_mutex_fcntl_acquire,
> > NULL, /* no tryacquire */
> > proc_mutex_fcntl_release,
> > - proc_mutex_fcntl_destroy,
> > + proc_mutex_fcntl_cleanup,
> > proc_mutex_fcntl_child_init,
> > "fcntl"
> > };
> > @@ -659,7 +654,7 @@
> > }
> > new_mutex->curr_locked = 0;
> > apr_pool_cleanup_register(new_mutex->pool, (void *)new_mutex,
> > - proc_mutex_flock_cleanup,
> > + apr_proc_mutex_cleanup,
> > apr_pool_cleanup_null);
> > return APR_SUCCESS;
> > }
> > @@ -735,7 +730,7 @@
> > proc_mutex_flock_acquire,
> > NULL, /* no tryacquire */
> > proc_mutex_flock_release,
> > - proc_mutex_flock_destroy,
> > + proc_mutex_flock_cleanup,
> > proc_mutex_flock_child_init,
> > "flock"
> > };
> > @@ -895,9 +890,9 @@
> > return mutex->meth->release(mutex);
> > }
> >
> > -APR_DECLARE(apr_status_t) apr_proc_mutex_destroy(apr_proc_mutex_t *mutex)
> > +APR_DECLARE(apr_status_t) apr_proc_mutex_cleanup(void *mutex)
> > {
> > - return mutex->meth->destroy(mutex);
> > + return ((apr_proc_mutex_t *)mutex)->meth->cleanup(mutex);
> > }
> >
> > APR_DECLARE(const char *) apr_proc_mutex_name(apr_proc_mutex_t *mutex)
> >
> >
> >
> >
> >
>
>
>
>