[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: [PATCH] Issue 2732 -- Apache shutdown crash

From: Malcolm Rowe <malcolm-svn-dev_at_farside.org.uk>
Date: 2007-04-06 11:12:18 CEST

On Thu, Apr 05, 2007 at 06:33:26PM -0600, D.J. Heap wrote:
> Could someone review and test this patch on Linux? I think this is
> the simplest way to solve the problem, but I'm not positive.
>

I've not reviewed this thoroughly, but two observations:

- there's no need to rename the functions to init2() - they're private
  and only called via a private vtable, so there are no compatibility
  concerns.

- if you're going to pass 'the' common pool (I assume the same one
  that's passed to the serialised_init function?) down to the module
  init function, could you call it 'common_pool' in the function
  arguments and note that it's guaranteed to be the same pool in the
  doc-comments?

Finally, one thing that really bugs me about our current scheme is that
there's no way to gain access to the common pool at fs open or create
time, which means that there's a fair amount of caching-type things that
we just can't do.

[Recall that the series of calls through the vtable is e.g. "open",
"serialised_init(common_pool)", where only the latter is guaranteed to
be serialised with other calls (to serialised_init).]

I'd much prefer it if we could change the vtable to eliminate the
separate serialised_init call, and just serialise the open/create calls
(against other open/create calls). (I don't know if there was some
reason we didn't do that initially - perhaps I'm missing something?).
Is this something that fits with what you're trying to fix as well?

Regards,
Malcolm

  • application/pgp-signature attachment: stored
Received on Fri Apr 6 11:12:33 2007

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.