apr-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From <...@rkbloom.net>
Subject Re: documented 1.0 showstoppers
Date Fri, 04 Jun 2004 14:04:22 GMT

On Fri, 4 Jun 2004, Amit Athavale wrote:

> Quoting Ryans solution
> ><Ryan>
> >
> >
> >I've been working on this, and I don't see a solution.  I have the parameter
> >added to child_init, and the structures get allocated.  But, that doesn't solve
> >the problem, because many lock types just can't be used across an apr_proc_create.
> >
> >The only solution I can think of for this is to remove APR_DEFAULT_LOCK and
> >replace it with two macros:
> >
> >and
> >
> >feel free to tell me to change the names.  The first (APR_DEFAULT_LOCK_INHERIT)
> >is what you use if you want to use apr_fork.  This isn't portable, but it allows
> >you to create locks that can be inherited.  The second (APR_DEFAULT_LOCK_EXEC)
> >is the portable option.  This is what you use when you want to call apr_proc_create.
> >
> >Opinions?  Any volunteers to write this code?  I'll do it if nobody else steps
> >up, but I am hoping to have less time soon, and I would really like to make more
> >progress on the test suite.
> >
> ></Ryan>
> >
> I have couple of basic questions.
> 1> I am not entirely clear on what would be the behavior of
>    and apr_proc_create w.r.t current problem. Do you mean to say locks
> created with
>    APR_DEFAULT_LOCK_EXEC can not be inherited at all ?

Not that they can't be inherited, but that they can be opened from a
process with a new address space.  Just about any lock type can be
inherited, but not any can be opened from a new process.

> 2> How do we check lock type in _child_init() when process is spawned by
> apr_proc_create ?

You don't check it.  You basically have to assume that the user knew what
they were doing.

> I can contribute to this if idea is acceptable to all and most
> importantly idea
> is entirely clear to me ;)

I'm off-line for a while, new baby born this morning, but I'll answer
questions if I have time.


View raw message