> Am 11.01.2018 um 13:02 schrieb Yann Ylavic <ylavic....@gmail.com>: > > Hi, > > there a several optimizations and correctness fixes in event/fdqueue.c > that don't land in worker/fdqueue.c. > > The patch would look like the attached. > It also include some cosmectic changes in event (mainly s/type * > arg/type *arg/) ala worker which suits more with the style used > elsewhere in httpd. > > Thoughts?
If we had a single, nice build system, I'd be all for it. With the current state of things, I am not sure it is worth our time to think about common code that is not in the public API, Making both files the same, might still be worth it since future enhancements can be copied/patched more easily. And there are not *that* many people working in this area. > For now things that are event only are not aligned (e.g. timers), but > ultimately I'd like to have a single fdqueue.[ch] for both MPMs (not > too far once this patch is applied), that'd certainly help maintenance > and improvements for both. > If you agree on this, what would be the best practice/place for the common > code? Making things part of the API has a high price in back porting costs and not being able to take things away again. Related issues exist in modules too. mod_http2 and mod_proxy_http2 would like to share. mod_md once had an executable with shared code. I eliminated the sharing and the executable rather than having to deal with that pain. Not ideal, but there is limited time to put into such things. Cheers, Stefan