You are viewing a plain text version of this content. The canonical link for it is here.
Posted to packagers@httpd.apache.org by Michael Felt <ma...@gmail.com> on 2012/02/08 15:08:24 UTC

Re: [PATCH] AIX configure options

Well, it was building "something". I'll try the proposed change and make
sure it is still giving me "all" the mods.
FYI - I have added --enable-ssl (so that the same script works for both
2.2.22 and 2.4.0 which have different ideas of "all".
And I hope configure will still leave AIX modules as shared (as it used to
make them all static by default - long ago).

I shall try both 2.4.0 and 2.2.22 (without --enable-ssl) - and I am
continuing to work towards to havin g APR external to httpd.

On Tue, Feb 7, 2012 at 8:09 PM, Jeff Trawick <tr...@gmail.com> wrote:

> The buildaix.ksh script committed recently had some outdated options
> or requirements, and didn't build loadable MPMs.  Suggested changes
> are below.  Do or do not fold, spindle, or mutilate; commit with or
> without testing; etc.
>
> Index: build/aix/buildaix.ksh
> ===================================================================
> --- build/aix/buildaix.ksh      (revision 1241549)
> +++ build/aix/buildaix.ksh      (working copy)
> @@ -30,11 +30,7 @@
>  > nohup.out
>  ./configure \
>         --enable-layout=$LAYOUT \
> -       --enable-module=so \
> -       --enable-proxy \
> -       --enable-cache \
> -       --enable-disk-cache \
> -       --with-mpm=worker \
> +       --enable-mpms-shared=all \
>         --enable-mods-shared=all | tee nohup.out
>
>  make | tee -a nohup.out
>
> --
> Born in Roswell... married an alien...
>

RE: [PATCH] AIX configure options

Posted by "Plüm, Rüdiger, VF-Group" <ru...@vodafone.com>.
      --enable-mpms-shared=all \



will not work with 2.2. Only 2.4 and up.

With 2.2 you still need -       --with-mpm=worker

 

Regards

 

Rüdiger

 

From: Michael Felt [mailto:mamfelt@gmail.com] 
Sent: Mittwoch, 8. Februar 2012 15:08
To: dev@httpd.apache.org; packagers@httpd.apache.org
Subject: Re: [PATCH] AIX configure options

 

Well, it was building "something". I'll try the proposed change and make sure it is still giving me "all" the mods.
FYI - I have added --enable-ssl (so that the same script works for both 2.2.22 and 2.4.0 which have different ideas of "all".
And I hope configure will still leave AIX modules as shared (as it used to make them all static by default - long ago).

I shall try both 2.4.0 and 2.2.22 (without --enable-ssl) - and I am continuing to work towards to havin g APR external to httpd.

On Tue, Feb 7, 2012 at 8:09 PM, Jeff Trawick <tr...@gmail.com> wrote:

The buildaix.ksh script committed recently had some outdated options
or requirements, and didn't build loadable MPMs.  Suggested changes
are below.  Do or do not fold, spindle, or mutilate; commit with or
without testing; etc.

Index: build/aix/buildaix.ksh
===================================================================
--- build/aix/buildaix.ksh      (revision 1241549)
+++ build/aix/buildaix.ksh      (working copy)
@@ -30,11 +30,7 @@
 > nohup.out
 ./configure \
        --enable-layout=$LAYOUT \
-       --enable-module=so \
-       --enable-proxy \
-       --enable-cache \
-       --enable-disk-cache \
-       --with-mpm=worker \
+       --enable-mpms-shared=all \
        --enable-mods-shared=all | tee nohup.out

 make | tee -a nohup.out

--
Born in Roswell... married an alien...

 


Re: [PATCH] AIX configure options

Posted by Eric Covener <co...@gmail.com>.
> FYI: I am working on getting a build for a svn client as well.

In my experience, java-based svnkit is easy and keeps you out of
screwing up packages used by openssl/wget/ssh on AIX.

Re: [PATCH] AIX configure options

Posted by Michael Felt <ma...@gmail.com>.
Otherwise I see this...
root@x105:[/data/prj/httpd-2.2.22]apachectl -l
Compiled in modules:
  core.c
  prefork.c
  http_core.c
  mod_so.c

root@x105:[/data/prj/httpd-2.2.22]ps -G 202 -mo THREAD
    USER    PID   PPID      TID ST  CP PRI SC    WCHAN        F     TT BND
COMMAND
  daemon 262160 553020        - A    0  60  1 f100060000eb1208
40001      -   - /opt/httpd/sbin/httpd -k start
       -      -      -   520219 S    0  60  1 f100060000eb1208
400400      -   - -
  daemon 389208 553020        - A    0  60  1 f100060000eb1208
40001      -   - /opt/httpd/sbin/httpd -k start
       -      -      -   884751 S    0  60  1 f100060000eb1208
400400      -   - -
  daemon 458856 553020        - A    0  60  1 f100060000eb1208
40001      -   - /opt/httpd/sbin/httpd -k start
       -      -      -   954573 S    0  60  1 f100060000eb1208
400400      -   - -
  daemon 491570 553020        - A    0  60  1 f100060000eb1208
40001      -   - /opt/httpd/sbin/httpd -k start
       -      -      -  1163467 S    0  60  1 f100060000eb1208
400400      -   - -
  daemon 536790 553020        - A    0  60  1 f100060000eb1208
40001      -   - /opt/httpd/sbin/httpd -k start
       -      -      -   659649 S    0  60  1 f100060000eb1208
400400      -   - -

root@x105:[/data/prj/httpd-2.2.22]apachectl -M
Loaded Modules:
 core_module (static)
 mpm_prefork_module (static)
 http_module (static)
 so_module (static)
 authn_file_module (shared)
 authn_dbm_module (shared)
 authn_anon_module (shared)
 authn_dbd_module (shared)
 authn_default_module (shared)
 authz_host_module (shared)
 authz_groupfile_module (shared)
 authz_user_module (shared)
 authz_dbm_module (shared)
 authz_owner_module (shared)
 authz_default_module (shared)
 auth_basic_module (shared)
 auth_digest_module (shared)
 dbd_module (shared)
 dumpio_module (shared)
 reqtimeout_module (shared)
 ext_filter_module (shared)
 include_module (shared)
 filter_module (shared)
 substitute_module (shared)
 deflate_module (shared)
 log_config_module (shared)
 log_forensic_module (shared)
 logio_module (shared)
 env_module (shared)
 mime_magic_module (shared)
 cern_meta_module (shared)
 expires_module (shared)
 headers_module (shared)
 ident_module (shared)
 usertrack_module (shared)
 unique_id_module (shared)
 setenvif_module (shared)
 version_module (shared)
 mime_module (shared)
 dav_module (shared)
 status_module (shared)
 autoindex_module (shared)
 asis_module (shared)
 info_module (shared)
 cgi_module (shared)
 dav_fs_module (shared)
 vhost_alias_module (shared)
 negotiation_module (shared)
 dir_module (shared)
 imagemap_module (shared)
 actions_module (shared)
 speling_module (shared)
 userdir_module (shared)
 alias_module (shared)
 rewrite_module (shared)
Syntax OK

So, my conclusion is that "mpm=worker" is working as designed, even if the
filenames in modules/* are different compared to other packages.
IMHO, for AIX threaded is supported, and well known, and prefferred. I
would hope faster than forking processes as well.


On Wed, Feb 8, 2012 at 9:40 PM, Michael Felt <ma...@gmail.com> wrote:

> I was assuming that "worker.c" was the code that spawned the threads.
> (remember, this is 2.2.22, not 2.4.0, in case that makes any difference)
>
> So, please correct me where I am wrong:
> from "/etc/httpd/extra/httpd-mpm.conf
>
> #
> # Only one of the below sections will be relevant on your
> # installed httpd.  Use "apachectl -l" to find out the
> # active mpm.
> #
>
> ... I assumed that this is where "worker.c" was telling me that mpm=worker
> <IfModule mpm_prefork_module>
> ....
> # worker MPM
> # StartServers: initial number of server processes to start
> # MaxClients: maximum number of simultaneous client connections
> # MinSpareThreads: minimum number of worker threads which are kept spare
> ...
> <IfModule mpm_worker_module>
>     StartServers          2
>     MaxClients          150
>     MinSpareThreads      25
> ...
> <IfModule mpm_beos_module>
>
> etc..
>
> Note - these are the ONLY compiled in modules:
>
> root@x105:[/]apachectl -l
> Compiled in modules:
>   core.c
>   worker.c
>   http_core.c
>   mod_so.c
> ---
> OR
> root@x105:[/]apachectl -M
> Loaded Modules:
>  core_module (static)
>  mpm_worker_module (static)
>  http_module (static)
>  so_module (static)
>  authn_file_module (shared)
>  authn_dbm_module (shared)
>  authn_anon_module (shared)
>  authn_dbd_module (shared)
>  authn_default_module (shared)
>  authz_host_module (shared)
>  authz_groupfile_module (shared)
>  authz_user_module (shared)
>  authz_dbm_module (shared)
>  authz_owner_module (shared)
>  authz_default_module (shared)
>  auth_basic_module (shared)
>  auth_digest_module (shared)
>  dbd_module (shared)
>  dumpio_module (shared)
>  reqtimeout_module (shared)
>  ext_filter_module (shared)
>  include_module (shared)
>  filter_module (shared)
>  substitute_module (shared)
>  deflate_module (shared)
>  log_config_module (shared)
>  log_forensic_module (shared)
>  logio_module (shared)
>  env_module (shared)
>  mime_magic_module (shared)
>  cern_meta_module (shared)
>  expires_module (shared)
>  headers_module (shared)
>  ident_module (shared)
>  usertrack_module (shared)
>  unique_id_module (shared)
>  setenvif_module (shared)
>  version_module (shared)
>  mime_module (shared)
>  dav_module (shared)
>  status_module (shared)
>  autoindex_module (shared)
>  asis_module (shared)
>  info_module (shared)
>  cgid_module (shared)
>  dav_fs_module (shared)
>  vhost_alias_module (shared)
>  negotiation_module (shared)
>  dir_module (shared)
>  imagemap_module (shared)
>  actions_module (shared)
>  speling_module (shared)
>  userdir_module (shared)
>  alias_module (shared)
>  rewrite_module (shared)
> Syntax OK
>
> which is the result of:
>  ./configure --enable-layout=AIX --with-mpm=worker --enable-mods-shared=all
>
> It is what I "expected", so where am I going wrong?
>
>
> On Wed, Feb 8, 2012 at 9:27 PM, Jeff Trawick <tr...@gmail.com> wrote:
>
>> On Wed, Feb 8, 2012 at 3:02 PM, Michael Felt <ma...@gmail.com> wrote:
>> > Well, ..., removed external apr, just to be sure it was "the same as
>> before"
>> >
>> > For simplicity, I am thinking of MPM as multi-threaded versus
>> > single-threaded. If that is correct, on AIX I am seeing multi-threaded
>> > "pre-fork" behavior.
>>
>> Basically: The prefork MPM has single-threaded child processes; the
>> worker MPM has multi-threaded child processes.
>>
>> > ===
>> > root@x105:[/]apachectl -l
>> > Compiled in modules:
>> >   core.c
>> >   worker.c
>>
>> With "--enable-mpms-shared=all" you should not see prefork.c or
>> worker.c (or any MPM) in this list.  Something is going wrong at
>> configure time.
>>
>>
>> >   http_core.c
>> >   mod_so.c
>> > ===
>> > root@x105:[/]ps -G 202 -mo THREAD
>> >     USER    PID   PPID      TID ST  CP PRI SC    WCHAN        F     TT
>> BND
>> > COMMAND
>> >   daemon 299078 458806        - A    0  60 28        *    40001
>> -   -
>> > /opt/httpd/sbin/httpd -k start
>> >        -      -      -   524427 S    0  60  1 f100070f10008040  8410400
>> > -   - -
>> >        -      -      -   647261 S    0  60  1 f100070f10009e40  8410400
>> > -   - -
>> >        -      -      -   667799 S    0  60  1 f100070f1000a340  8410400
>> > -   - -
>> >        -      -      -   671983 S    0  60  1 f100070f1000a440  8410400
>> > -   - -
>> >        -      -      -   680117 S    0  60  1 f100070f1000a640  8410400
>> > -   - -
>> >        -      -      -   684109 S    0  60  1 f100070f1000a740  8410400
>> > -   - -
>> >        -      -      -   749707 S    0  60  1 f100070f1000b740  8410400
>> > -   - -
>> >        -      -      -   888971 S    0  60  1 f100070f1000d940  8410400
>> > -   - -
>> >        -      -      -   905243 Z    0  60  1        -   c00001
>> -   - -
>> >        -      -      -   970855 S    0  60  1 f100010012c4ffb8   410400
>> > -   - -
>> >        -      -      -   999669 S    0  60  1 f100070f1000f440  8410400
>> > -   - -
>> >        -      -      -  1003655 S    0  60  1 f100070f1000f540  8410400
>> > -   - -
>> >        -      -      -  1044605 S    0  60  1 f100070f1000ff40  8410400
>> > -   - -
>> >        -      -      -  1069255 S    0  60  1 f100070f10010540  8410400
>> > -   - -
>> >        -      -      -  1101951 S    0  60  1 f100070f10010d40  8410400
>> > -   - -
>> >        -      -      -  1204243 S    0  60  1 f100070f10012640  8410400
>> > -   - -
>> >        -      -      -  1233133 S    0  60  1 f100070f10012d40  8410400
>> > -   - -
>> >        -      -      -  1245225 S    0  60  1 f100070f10013040  8410400
>> > -   - -
>> >        -      -      -  1249349 S    0  60  1 f100070f10013140  8410400
>> > -   - -
>> >        -      -      -  1261619 S    0  60  1 f100070f10013440  8410400
>> > -   - -
>> >        -      -      -  1278023 S    0  60  1 f100070f10013840  8410400
>> > -   - -
>> >        -      -      -  1294395 S    0  60  1 f100070f10013c40  8410400
>> > -   - -
>> >        -      -      -  1319117 S    0  60  1 f100070f10014240  8410400
>> > -   - -
>> >        -      -      -  1323147 S    0  60  1 f100070f10014340  8410400
>> > -   - -
>> >        -      -      -  1331321 S    0  60  1 f100070f10014540  8410400
>> > -   - -
>> >        -      -      -  1355913 S    0  60  1 f100060000ebca08   400400
>> > -   - -
>> >        -      -      -  1368225 S    0  60  1 f100070f10014e40  8410400
>> > -   - -
>> >        -      -      -  1409275 S    0  60  1 f100070f10015840  8410400
>> > -   - -
>> >   daemon 491756 458806        - A    0  60  1 f100060000e91208    40401
>> > -   - /opt/httpd/sbin/httpd -k start
>> >        -      -      -   839725 S    0  60  1 f100060000e91208   400400
>> > -   - -
>> >   daemon 565316 458806        - A    0  60 28        *    40001
>> -   -
>> > /opt/httpd/sbin/httpd -k start
>> >        -      -      -   504043 S    0  60  1 f100070f10007b40  8410400
>> > -   - -
>> >        -      -      -   512187 S    0  60  1 f100070f10007d40  8410400
>> > -   - -
>> >        -      -      -   659535 Z    0  60  1        -   c00001
>> -   - -
>> >        -      -      -   729261 S    0  60  1 f100070f1000b240  8410400
>> > -   - -
>> >        -      -      -   733431 S    0  60  1 f100070f1000b340  8410400
>> > -   - -
>> >        -      -      -   753851 S    0  60  1 f100070f1000b840  8410400
>> > -   - -
>> >        -      -      -   925923 S    0  60  1 f100070f1000e240  8410400
>> > -   - -
>> >        -      -      -   929947 S    0  60  1 f100070f1000e340  8410400
>> > -   - -
>> >        -      -      -   938061 S    0  60  1 f100070f1000e540  8410400
>> > -   - -
>> >        -      -      -   975039 S    0  60  1 f100070f1000ee40  8410400
>> > -   - -
>> >        -      -      -  1007673 S    0  60  1 f100060000ebca08   400400
>> > -   - -
>> >        -      -      -  1040579 S    0  60  1 f100070f1000fe40  8410400
>> > -   - -
>> >        -      -      -  1073265 S    0  60  1 f100070f10010640  8410400
>> > -   - -
>> >        -      -      -  1126419 S    0  60  1 f100070f10011340  8410400
>> > -   - -
>> >        -      -      -  1171705 S    0  60  1 f100070f10011e40  8410400
>> > -   - -
>> >        -      -      -  1183967 S    0  60  1 f100070f10012140  8410400
>> > -   - -
>> >        -      -      -  1192149 S    0  60  1 f100070f10012340  8410400
>> > -   - -
>> >        -      -      -  1228911 S    0  60  1 f100070f10012c40  8410400
>> > -   - -
>> >        -      -      -  1237123 S    0  60  1 f100070f10012e40  8410400
>> > -   - -
>> >        -      -      -  1257713 S    0  60  1 f100010012c4ffb8   410400
>> > -   - -
>> >        -      -      -  1310959 S    0  60  1 f100070f10014040  8410400
>> > -   - -
>> >        -      -      -  1339473 S    0  60  1 f100070f10014740  8410400
>> > -   - -
>> >        -      -      -  1343615 S    0  60  1 f100070f10014840  8410400
>> > -   - -
>> >        -      -      -  1347699 S    0  60  1 f100070f10014940  8410400
>> > -   - -
>> >        -      -      -  1364159 S    0  60  1 f100070f10014d40  8410400
>> > -   - -
>> >        -      -      -  1372165 S    0  60  1 f100070f10014f40  8410400
>> > -   - -
>> >        -      -      -  1376461 S    0  60  1 f100070f10015040  8410400
>> > -   - -
>> >        -      -      -  1396845 S    0  60  1 f100070f10015540  8410400
>> > -   - -
>> > root@x105:[/]
>> > ====
>> > In the listing above, the PID numbers are the even numbers (processes)
>> while
>> > the column TID (thread ID) are all odd. Threads are indented and
>> "under" the
>> > process.
>> >
>> > Only "changes" were creation of a group daemon (id = 202, hence ps -G
>> 202),
>> > and activating the extra/httpd-mpm.conf file via /etc/httpd/httpd.conf.
>> >
>> > So, even though I do not see any files named *mpm*.so I would think that
>> > this shows that AIX it is "worker" and not pre-fork.
>> >
>> >
>> > On Wed, Feb 8, 2012 at 5:57 PM, Jeff Trawick <tr...@gmail.com> wrote:
>> >>
>> >> On Wed, Feb 8, 2012 at 11:47 AM, Michael Felt <ma...@gmail.com>
>> wrote:
>> >> > Well, just slightly confused.
>> >> > On my system I have "tested" in as much as I can https://hostnameand it
>> >> > says "It works!".
>> >> > What I need some assistence with perhaps is determeing which "mpm"
>> >> > binary
>> >> > was built, as I am only building one with 2.2.22 at the moment.
>> >>
>> >> Look in your modules directory for *mpm*.so to see what was
>> >> built+installed.
>> >>
>> >> Look in your httpd.conf to see which of those available MPMs is loaded
>> >> via LoadModule.
>> >>
>> >> (I think you'll find that prefork and worker are built for AIX, and
>> >> worker is the one loaded by default.)
>> >>
>> >> >
>> >> > re: Having only one script - I am not surprised there must be more
>> than
>> >> > one,
>> >> > but I hoped :)
>> >> > There are actually two scripts - one that does the
>> configure/make/make
>> >> > install, and one that creates the
>> >> > template needed to make the package.
>> >> >
>> >> > FYI: I am working on getting a build for a svn client as well. AND -
>> I
>> >> > am
>> >> > doing these things because I am very tired of having to download 10
>> to
>> >> > 20
>> >> > .rpm packages, each with moving dependancies it seems, in order to
>> >> > install
>> >> > something that is supposed readily available. In short, I am trying
>> to
>> >> > make
>> >> > some packages that just 'install' with saying - you need this too,
>> and
>> >> > then
>> >> > when you install that - it says and I need this first, etc etc.
>> >> >
>> >> > In a word, boring.
>> >> >
>> >> > FYI: current tools (IBM and others) use /opt/freeware as their main
>> >> > installation area - so I am opting for /opt/* (no freeware in the
>> name)
>> >> > for
>> >> > packages like coreutils, libz, pcre, apr, apr-util, etc. and
>> >> > applications
>> >> > (packaging) such as httpd and svn in /opt/httpd, /opt/svn. With your
>> >> > wealth
>> >> > of prior experience - if you see a trap I am setting for myself,
>> please
>> >> > warn
>> >> > me - and better - lead me to safety.
>> >> >
>> >> > regards, Michael
>> >> >
>> >> >
>> >> > On Wed, Feb 8, 2012 at 3:40 PM, Jeff Trawick <tr...@gmail.com>
>> wrote:
>> >> >>
>> >> >> On Wed, Feb 8, 2012 at 9:08 AM, Michael Felt <ma...@gmail.com>
>> wrote:
>> >> >> > Well, it was building "something". I'll try the proposed change
>> and
>> >> >> > make
>> >> >> > sure it is still giving me "all" the mods.
>> >> >>
>> >> >> yeah, that was the idea...  thanks!
>> >> >>
>> >> >> > FYI - I have added --enable-ssl (so that the same script works for
>> >> >> > both
>> >> >> > 2.2.22 and 2.4.0 which have different ideas of "all".
>> >> >>
>> >> >> As Graham mentioned, expect to have different scripts for different
>> >> >> releases and do the right thing for each release.  It isn't a good
>> >> >> thing if people who play with  configure more often but might not
>> know
>> >> >> the ancient history stare at the script and wonder about the odd
>> >> >> choice of arguments.  (I happen to remember about the
>> AIX/--enable-so
>> >> >> issue from long ago, but that needs to die.)
>> >> >>
>> >> >> > And I hope configure will still leave AIX modules as shared (as it
>> >> >> > used
>> >> >> > to
>> >> >> > make them all static by default - long ago).
>> >> >>
>> >> >> If it doesn't build them shared using the appropriate configure
>> args,
>> >> >> that's what needs to be fixed.  (Most people won't use this script.)
>> >> >>
>> >> >> >
>> >> >> > I shall try both 2.4.0 and 2.2.22 (without --enable-ssl) - and I
>> am
>> >> >> > continuing to work towards to havin g APR external to httpd.
>> >> >> >
>> >> >> >
>> >> >> > On Tue, Feb 7, 2012 at 8:09 PM, Jeff Trawick <tr...@gmail.com>
>> >> >> > wrote:
>> >> >> >>
>> >> >> >> The buildaix.ksh script committed recently had some outdated
>> options
>> >> >> >> or requirements, and didn't build loadable MPMs.  Suggested
>> changes
>> >> >> >> are below.  Do or do not fold, spindle, or mutilate; commit with
>> or
>> >> >> >> without testing; etc.
>> >> >> >>
>> >> >> >> Index: build/aix/buildaix.ksh
>> >> >> >>
>> ===================================================================
>> >> >> >> --- build/aix/buildaix.ksh      (revision 1241549)
>> >> >> >> +++ build/aix/buildaix.ksh      (working copy)
>> >> >> >> @@ -30,11 +30,7 @@
>> >> >> >>  > nohup.out
>> >> >> >>  ./configure \
>> >> >> >>         --enable-layout=$LAYOUT \
>> >> >> >> -       --enable-module=so \
>> >> >> >> -       --enable-proxy \
>> >> >> >> -       --enable-cache \
>> >> >> >> -       --enable-disk-cache \
>> >> >> >> -       --with-mpm=worker \
>> >> >> >> +       --enable-mpms-shared=all \
>> >> >> >>         --enable-mods-shared=all | tee nohup.out
>> >> >> >>
>> >> >> >>  make | tee -a nohup.out
>> >> >> >>
>> >> >> >> --
>> >> >> >> Born in Roswell... married an alien...
>> >> >> >
>> >> >> >
>> >> >>
>> >> >>
>> >> >>
>> >> >> --
>> >> >> Born in Roswell... married an alien...
>> >> >
>> >> >
>> >>
>> >>
>> >>
>> >> --
>> >> Born in Roswell... married an alien...
>> >
>> >
>>
>>
>>
>> --
>> Born in Roswell... married an alien...
>>
>
>

Re: [PATCH] AIX configure options

Posted by Michael Felt <ma...@gmail.com>.
sounds good for me. Apologies for confusion!

On Wed, Feb 8, 2012 at 10:33 PM, Jeff Trawick <tr...@gmail.com> wrote:

> On Wed, Feb 8, 2012 at 3:40 PM, Michael Felt <ma...@gmail.com> wrote:
> > I was assuming that "worker.c" was the code that spawned the threads.
> > (remember, this is 2.2.22, not 2.4.0, in case that makes any difference)
>
> uhh, huge difference...  2.2.x does not have loadable MPMs or the
> corresponding --enable-mpms-shared=all flag
>
> for simplification can we limit discussion to 2.4.x/2.5.x until that
> is working fine?  that's the configure logic I started the thread for
>
> >
> > So, please correct me where I am wrong:
> > from "/etc/httpd/extra/httpd-mpm.conf
> >
> > #
> > # Only one of the below sections will be relevant on your
> > # installed httpd.  Use "apachectl -l" to find out the
> > # active mpm.
> > #
> >
> > ... I assumed that this is where "worker.c" was telling me that
> mpm=worker
> > <IfModule mpm_prefork_module>
> > ....
> > # worker MPM
> > # StartServers: initial number of server processes to start
> > # MaxClients: maximum number of simultaneous client connections
> > # MinSpareThreads: minimum number of worker threads which are kept spare
> > ...
> > <IfModule mpm_worker_module>
> >     StartServers          2
> >     MaxClients          150
> >     MinSpareThreads      25
> > ...
> > <IfModule mpm_beos_module>
> >
> > etc..
> >
> > Note - these are the ONLY compiled in modules:
> >
> > root@x105:[/]apachectl -l
> > Compiled in modules:
> >   core.c
> >   worker.c
> >   http_core.c
> >   mod_so.c
> > ---
> > OR
> > root@x105:[/]apachectl -M
> > Loaded Modules:
> >  core_module (static)
> >  mpm_worker_module (static)
> >  http_module (static)
> >  so_module (static)
> >  authn_file_module (shared)
> >  authn_dbm_module (shared)
> >  authn_anon_module (shared)
> >  authn_dbd_module (shared)
> >  authn_default_module (shared)
> >  authz_host_module (shared)
> >  authz_groupfile_module (shared)
> >  authz_user_module (shared)
> >  authz_dbm_module (shared)
> >  authz_owner_module (shared)
> >  authz_default_module (shared)
> >  auth_basic_module (shared)
> >  auth_digest_module (shared)
> >  dbd_module (shared)
> >  dumpio_module (shared)
> >  reqtimeout_module (shared)
> >  ext_filter_module (shared)
> >  include_module (shared)
> >  filter_module (shared)
> >  substitute_module (shared)
> >  deflate_module (shared)
> >  log_config_module (shared)
> >  log_forensic_module (shared)
> >  logio_module (shared)
> >  env_module (shared)
> >  mime_magic_module (shared)
> >  cern_meta_module (shared)
> >  expires_module (shared)
> >  headers_module (shared)
> >  ident_module (shared)
> >  usertrack_module (shared)
> >  unique_id_module (shared)
> >  setenvif_module (shared)
> >  version_module (shared)
> >  mime_module (shared)
> >  dav_module (shared)
> >  status_module (shared)
> >  autoindex_module (shared)
> >  asis_module (shared)
> >  info_module (shared)
> >  cgid_module (shared)
> >  dav_fs_module (shared)
> >  vhost_alias_module (shared)
> >  negotiation_module (shared)
> >  dir_module (shared)
> >  imagemap_module (shared)
> >  actions_module (shared)
> >  speling_module (shared)
> >  userdir_module (shared)
> >  alias_module (shared)
> >  rewrite_module (shared)
> > Syntax OK
> >
> > which is the result of:
> >  ./configure --enable-layout=AIX --with-mpm=worker
> --enable-mods-shared=all
> >
> > It is what I "expected", so where am I going wrong?
> >
> >
> > On Wed, Feb 8, 2012 at 9:27 PM, Jeff Trawick <tr...@gmail.com> wrote:
> >>
> >> On Wed, Feb 8, 2012 at 3:02 PM, Michael Felt <ma...@gmail.com> wrote:
> >> > Well, ..., removed external apr, just to be sure it was "the same as
> >> > before"
> >> >
> >> > For simplicity, I am thinking of MPM as multi-threaded versus
> >> > single-threaded. If that is correct, on AIX I am seeing multi-threaded
> >> > "pre-fork" behavior.
> >>
> >> Basically: The prefork MPM has single-threaded child processes; the
> >> worker MPM has multi-threaded child processes.
> >>
> >> > ===
> >> > root@x105:[/]apachectl -l
> >> > Compiled in modules:
> >> >   core.c
> >> >   worker.c
> >>
> >> With "--enable-mpms-shared=all" you should not see prefork.c or
> >> worker.c (or any MPM) in this list.  Something is going wrong at
> >> configure time.
> >>
> >>
> >> >   http_core.c
> >> >   mod_so.c
> >> > ===
> >> > root@x105:[/]ps -G 202 -mo THREAD
> >> >     USER    PID   PPID      TID ST  CP PRI SC    WCHAN        F     TT
> >> > BND
> >> > COMMAND
> >> >   daemon 299078 458806        - A    0  60 28        *    40001      -
> >> > -
> >> > /opt/httpd/sbin/httpd -k start
> >> >        -      -      -   524427 S    0  60  1 f100070f10008040
> 8410400
> >> > -   - -
> >> >        -      -      -   647261 S    0  60  1 f100070f10009e40
> 8410400
> >> > -   - -
> >> >        -      -      -   667799 S    0  60  1 f100070f1000a340
> 8410400
> >> > -   - -
> >> >        -      -      -   671983 S    0  60  1 f100070f1000a440
> 8410400
> >> > -   - -
> >> >        -      -      -   680117 S    0  60  1 f100070f1000a640
> 8410400
> >> > -   - -
> >> >        -      -      -   684109 S    0  60  1 f100070f1000a740
> 8410400
> >> > -   - -
> >> >        -      -      -   749707 S    0  60  1 f100070f1000b740
> 8410400
> >> > -   - -
> >> >        -      -      -   888971 S    0  60  1 f100070f1000d940
> 8410400
> >> > -   - -
> >> >        -      -      -   905243 Z    0  60  1        -   c00001      -
> >> > - -
> >> >        -      -      -   970855 S    0  60  1 f100010012c4ffb8
> 410400
> >> > -   - -
> >> >        -      -      -   999669 S    0  60  1 f100070f1000f440
> 8410400
> >> > -   - -
> >> >        -      -      -  1003655 S    0  60  1 f100070f1000f540
> 8410400
> >> > -   - -
> >> >        -      -      -  1044605 S    0  60  1 f100070f1000ff40
> 8410400
> >> > -   - -
> >> >        -      -      -  1069255 S    0  60  1 f100070f10010540
> 8410400
> >> > -   - -
> >> >        -      -      -  1101951 S    0  60  1 f100070f10010d40
> 8410400
> >> > -   - -
> >> >        -      -      -  1204243 S    0  60  1 f100070f10012640
> 8410400
> >> > -   - -
> >> >        -      -      -  1233133 S    0  60  1 f100070f10012d40
> 8410400
> >> > -   - -
> >> >        -      -      -  1245225 S    0  60  1 f100070f10013040
> 8410400
> >> > -   - -
> >> >        -      -      -  1249349 S    0  60  1 f100070f10013140
> 8410400
> >> > -   - -
> >> >        -      -      -  1261619 S    0  60  1 f100070f10013440
> 8410400
> >> > -   - -
> >> >        -      -      -  1278023 S    0  60  1 f100070f10013840
> 8410400
> >> > -   - -
> >> >        -      -      -  1294395 S    0  60  1 f100070f10013c40
> 8410400
> >> > -   - -
> >> >        -      -      -  1319117 S    0  60  1 f100070f10014240
> 8410400
> >> > -   - -
> >> >        -      -      -  1323147 S    0  60  1 f100070f10014340
> 8410400
> >> > -   - -
> >> >        -      -      -  1331321 S    0  60  1 f100070f10014540
> 8410400
> >> > -   - -
> >> >        -      -      -  1355913 S    0  60  1 f100060000ebca08
> 400400
> >> > -   - -
> >> >        -      -      -  1368225 S    0  60  1 f100070f10014e40
> 8410400
> >> > -   - -
> >> >        -      -      -  1409275 S    0  60  1 f100070f10015840
> 8410400
> >> > -   - -
> >> >   daemon 491756 458806        - A    0  60  1 f100060000e91208
> 40401
> >> > -   - /opt/httpd/sbin/httpd -k start
> >> >        -      -      -   839725 S    0  60  1 f100060000e91208
> 400400
> >> > -   - -
> >> >   daemon 565316 458806        - A    0  60 28        *    40001      -
> >> > -
> >> > /opt/httpd/sbin/httpd -k start
> >> >        -      -      -   504043 S    0  60  1 f100070f10007b40
> 8410400
> >> > -   - -
> >> >        -      -      -   512187 S    0  60  1 f100070f10007d40
> 8410400
> >> > -   - -
> >> >        -      -      -   659535 Z    0  60  1        -   c00001      -
> >> > - -
> >> >        -      -      -   729261 S    0  60  1 f100070f1000b240
> 8410400
> >> > -   - -
> >> >        -      -      -   733431 S    0  60  1 f100070f1000b340
> 8410400
> >> > -   - -
> >> >        -      -      -   753851 S    0  60  1 f100070f1000b840
> 8410400
> >> > -   - -
> >> >        -      -      -   925923 S    0  60  1 f100070f1000e240
> 8410400
> >> > -   - -
> >> >        -      -      -   929947 S    0  60  1 f100070f1000e340
> 8410400
> >> > -   - -
> >> >        -      -      -   938061 S    0  60  1 f100070f1000e540
> 8410400
> >> > -   - -
> >> >        -      -      -   975039 S    0  60  1 f100070f1000ee40
> 8410400
> >> > -   - -
> >> >        -      -      -  1007673 S    0  60  1 f100060000ebca08
> 400400
> >> > -   - -
> >> >        -      -      -  1040579 S    0  60  1 f100070f1000fe40
> 8410400
> >> > -   - -
> >> >        -      -      -  1073265 S    0  60  1 f100070f10010640
> 8410400
> >> > -   - -
> >> >        -      -      -  1126419 S    0  60  1 f100070f10011340
> 8410400
> >> > -   - -
> >> >        -      -      -  1171705 S    0  60  1 f100070f10011e40
> 8410400
> >> > -   - -
> >> >        -      -      -  1183967 S    0  60  1 f100070f10012140
> 8410400
> >> > -   - -
> >> >        -      -      -  1192149 S    0  60  1 f100070f10012340
> 8410400
> >> > -   - -
> >> >        -      -      -  1228911 S    0  60  1 f100070f10012c40
> 8410400
> >> > -   - -
> >> >        -      -      -  1237123 S    0  60  1 f100070f10012e40
> 8410400
> >> > -   - -
> >> >        -      -      -  1257713 S    0  60  1 f100010012c4ffb8
> 410400
> >> > -   - -
> >> >        -      -      -  1310959 S    0  60  1 f100070f10014040
> 8410400
> >> > -   - -
> >> >        -      -      -  1339473 S    0  60  1 f100070f10014740
> 8410400
> >> > -   - -
> >> >        -      -      -  1343615 S    0  60  1 f100070f10014840
> 8410400
> >> > -   - -
> >> >        -      -      -  1347699 S    0  60  1 f100070f10014940
> 8410400
> >> > -   - -
> >> >        -      -      -  1364159 S    0  60  1 f100070f10014d40
> 8410400
> >> > -   - -
> >> >        -      -      -  1372165 S    0  60  1 f100070f10014f40
> 8410400
> >> > -   - -
> >> >        -      -      -  1376461 S    0  60  1 f100070f10015040
> 8410400
> >> > -   - -
> >> >        -      -      -  1396845 S    0  60  1 f100070f10015540
> 8410400
> >> > -   - -
> >> > root@x105:[/]
> >> > ====
> >> > In the listing above, the PID numbers are the even numbers (processes)
> >> > while
> >> > the column TID (thread ID) are all odd. Threads are indented and
> "under"
> >> > the
> >> > process.
> >> >
> >> > Only "changes" were creation of a group daemon (id = 202, hence ps -G
> >> > 202),
> >> > and activating the extra/httpd-mpm.conf file via
> /etc/httpd/httpd.conf.
> >> >
> >> > So, even though I do not see any files named *mpm*.so I would think
> that
> >> > this shows that AIX it is "worker" and not pre-fork.
> >> >
> >> >
> >> > On Wed, Feb 8, 2012 at 5:57 PM, Jeff Trawick <tr...@gmail.com>
> wrote:
> >> >>
> >> >> On Wed, Feb 8, 2012 at 11:47 AM, Michael Felt <ma...@gmail.com>
> >> >> wrote:
> >> >> > Well, just slightly confused.
> >> >> > On my system I have "tested" in as much as I can https://hostnameand
> >> >> > it
> >> >> > says "It works!".
> >> >> > What I need some assistence with perhaps is determeing which "mpm"
> >> >> > binary
> >> >> > was built, as I am only building one with 2.2.22 at the moment.
> >> >>
> >> >> Look in your modules directory for *mpm*.so to see what was
> >> >> built+installed.
> >> >>
> >> >> Look in your httpd.conf to see which of those available MPMs is
> loaded
> >> >> via LoadModule.
> >> >>
> >> >> (I think you'll find that prefork and worker are built for AIX, and
> >> >> worker is the one loaded by default.)
> >> >>
> >> >> >
> >> >> > re: Having only one script - I am not surprised there must be more
> >> >> > than
> >> >> > one,
> >> >> > but I hoped :)
> >> >> > There are actually two scripts - one that does the
> >> >> > configure/make/make
> >> >> > install, and one that creates the
> >> >> > template needed to make the package.
> >> >> >
> >> >> > FYI: I am working on getting a build for a svn client as well. AND
> -
> >> >> > I
> >> >> > am
> >> >> > doing these things because I am very tired of having to download 10
> >> >> > to
> >> >> > 20
> >> >> > .rpm packages, each with moving dependancies it seems, in order to
> >> >> > install
> >> >> > something that is supposed readily available. In short, I am trying
> >> >> > to
> >> >> > make
> >> >> > some packages that just 'install' with saying - you need this too,
> >> >> > and
> >> >> > then
> >> >> > when you install that - it says and I need this first, etc etc.
> >> >> >
> >> >> > In a word, boring.
> >> >> >
> >> >> > FYI: current tools (IBM and others) use /opt/freeware as their main
> >> >> > installation area - so I am opting for /opt/* (no freeware in the
> >> >> > name)
> >> >> > for
> >> >> > packages like coreutils, libz, pcre, apr, apr-util, etc. and
> >> >> > applications
> >> >> > (packaging) such as httpd and svn in /opt/httpd, /opt/svn. With
> your
> >> >> > wealth
> >> >> > of prior experience - if you see a trap I am setting for myself,
> >> >> > please
> >> >> > warn
> >> >> > me - and better - lead me to safety.
> >> >> >
> >> >> > regards, Michael
> >> >> >
> >> >> >
> >> >> > On Wed, Feb 8, 2012 at 3:40 PM, Jeff Trawick <tr...@gmail.com>
> >> >> > wrote:
> >> >> >>
> >> >> >> On Wed, Feb 8, 2012 at 9:08 AM, Michael Felt <ma...@gmail.com>
> >> >> >> wrote:
> >> >> >> > Well, it was building "something". I'll try the proposed change
> >> >> >> > and
> >> >> >> > make
> >> >> >> > sure it is still giving me "all" the mods.
> >> >> >>
> >> >> >> yeah, that was the idea...  thanks!
> >> >> >>
> >> >> >> > FYI - I have added --enable-ssl (so that the same script works
> for
> >> >> >> > both
> >> >> >> > 2.2.22 and 2.4.0 which have different ideas of "all".
> >> >> >>
> >> >> >> As Graham mentioned, expect to have different scripts for
> different
> >> >> >> releases and do the right thing for each release.  It isn't a good
> >> >> >> thing if people who play with  configure more often but might not
> >> >> >> know
> >> >> >> the ancient history stare at the script and wonder about the odd
> >> >> >> choice of arguments.  (I happen to remember about the
> >> >> >> AIX/--enable-so
> >> >> >> issue from long ago, but that needs to die.)
> >> >> >>
> >> >> >> > And I hope configure will still leave AIX modules as shared (as
> it
> >> >> >> > used
> >> >> >> > to
> >> >> >> > make them all static by default - long ago).
> >> >> >>
> >> >> >> If it doesn't build them shared using the appropriate configure
> >> >> >> args,
> >> >> >> that's what needs to be fixed.  (Most people won't use this
> script.)
> >> >> >>
> >> >> >> >
> >> >> >> > I shall try both 2.4.0 and 2.2.22 (without --enable-ssl) - and I
> >> >> >> > am
> >> >> >> > continuing to work towards to havin g APR external to httpd.
> >> >> >> >
> >> >> >> >
> >> >> >> > On Tue, Feb 7, 2012 at 8:09 PM, Jeff Trawick <trawick@gmail.com
> >
> >> >> >> > wrote:
> >> >> >> >>
> >> >> >> >> The buildaix.ksh script committed recently had some outdated
> >> >> >> >> options
> >> >> >> >> or requirements, and didn't build loadable MPMs.  Suggested
> >> >> >> >> changes
> >> >> >> >> are below.  Do or do not fold, spindle, or mutilate; commit
> with
> >> >> >> >> or
> >> >> >> >> without testing; etc.
> >> >> >> >>
> >> >> >> >> Index: build/aix/buildaix.ksh
> >> >> >> >>
> >> >> >> >>
> ===================================================================
> >> >> >> >> --- build/aix/buildaix.ksh      (revision 1241549)
> >> >> >> >> +++ build/aix/buildaix.ksh      (working copy)
> >> >> >> >> @@ -30,11 +30,7 @@
> >> >> >> >>  > nohup.out
> >> >> >> >>  ./configure \
> >> >> >> >>         --enable-layout=$LAYOUT \
> >> >> >> >> -       --enable-module=so \
> >> >> >> >> -       --enable-proxy \
> >> >> >> >> -       --enable-cache \
> >> >> >> >> -       --enable-disk-cache \
> >> >> >> >> -       --with-mpm=worker \
> >> >> >> >> +       --enable-mpms-shared=all \
> >> >> >> >>         --enable-mods-shared=all | tee nohup.out
> >> >> >> >>
> >> >> >> >>  make | tee -a nohup.out
> >> >> >> >>
> >> >> >> >> --
> >> >> >> >> Born in Roswell... married an alien...
> >> >> >> >
> >> >> >> >
> >> >> >>
> >> >> >>
> >> >> >>
> >> >> >> --
> >> >> >> Born in Roswell... married an alien...
> >> >> >
> >> >> >
> >> >>
> >> >>
> >> >>
> >> >> --
> >> >> Born in Roswell... married an alien...
> >> >
> >> >
> >>
> >>
> >>
> >> --
> >> Born in Roswell... married an alien...
> >
> >
>
>
>
> --
> Born in Roswell... married an alien...
>

Re: [PATCH] AIX configure options

Posted by Jeff Trawick <tr...@gmail.com>.
On Wed, Feb 8, 2012 at 3:40 PM, Michael Felt <ma...@gmail.com> wrote:
> I was assuming that "worker.c" was the code that spawned the threads.
> (remember, this is 2.2.22, not 2.4.0, in case that makes any difference)

uhh, huge difference...  2.2.x does not have loadable MPMs or the
corresponding --enable-mpms-shared=all flag

for simplification can we limit discussion to 2.4.x/2.5.x until that
is working fine?  that's the configure logic I started the thread for

>
> So, please correct me where I am wrong:
> from "/etc/httpd/extra/httpd-mpm.conf
>
> #
> # Only one of the below sections will be relevant on your
> # installed httpd.  Use "apachectl -l" to find out the
> # active mpm.
> #
>
> ... I assumed that this is where "worker.c" was telling me that mpm=worker
> <IfModule mpm_prefork_module>
> ....
> # worker MPM
> # StartServers: initial number of server processes to start
> # MaxClients: maximum number of simultaneous client connections
> # MinSpareThreads: minimum number of worker threads which are kept spare
> ...
> <IfModule mpm_worker_module>
>     StartServers          2
>     MaxClients          150
>     MinSpareThreads      25
> ...
> <IfModule mpm_beos_module>
>
> etc..
>
> Note - these are the ONLY compiled in modules:
>
> root@x105:[/]apachectl -l
> Compiled in modules:
>   core.c
>   worker.c
>   http_core.c
>   mod_so.c
> ---
> OR
> root@x105:[/]apachectl -M
> Loaded Modules:
>  core_module (static)
>  mpm_worker_module (static)
>  http_module (static)
>  so_module (static)
>  authn_file_module (shared)
>  authn_dbm_module (shared)
>  authn_anon_module (shared)
>  authn_dbd_module (shared)
>  authn_default_module (shared)
>  authz_host_module (shared)
>  authz_groupfile_module (shared)
>  authz_user_module (shared)
>  authz_dbm_module (shared)
>  authz_owner_module (shared)
>  authz_default_module (shared)
>  auth_basic_module (shared)
>  auth_digest_module (shared)
>  dbd_module (shared)
>  dumpio_module (shared)
>  reqtimeout_module (shared)
>  ext_filter_module (shared)
>  include_module (shared)
>  filter_module (shared)
>  substitute_module (shared)
>  deflate_module (shared)
>  log_config_module (shared)
>  log_forensic_module (shared)
>  logio_module (shared)
>  env_module (shared)
>  mime_magic_module (shared)
>  cern_meta_module (shared)
>  expires_module (shared)
>  headers_module (shared)
>  ident_module (shared)
>  usertrack_module (shared)
>  unique_id_module (shared)
>  setenvif_module (shared)
>  version_module (shared)
>  mime_module (shared)
>  dav_module (shared)
>  status_module (shared)
>  autoindex_module (shared)
>  asis_module (shared)
>  info_module (shared)
>  cgid_module (shared)
>  dav_fs_module (shared)
>  vhost_alias_module (shared)
>  negotiation_module (shared)
>  dir_module (shared)
>  imagemap_module (shared)
>  actions_module (shared)
>  speling_module (shared)
>  userdir_module (shared)
>  alias_module (shared)
>  rewrite_module (shared)
> Syntax OK
>
> which is the result of:
>  ./configure --enable-layout=AIX --with-mpm=worker --enable-mods-shared=all
>
> It is what I "expected", so where am I going wrong?
>
>
> On Wed, Feb 8, 2012 at 9:27 PM, Jeff Trawick <tr...@gmail.com> wrote:
>>
>> On Wed, Feb 8, 2012 at 3:02 PM, Michael Felt <ma...@gmail.com> wrote:
>> > Well, ..., removed external apr, just to be sure it was "the same as
>> > before"
>> >
>> > For simplicity, I am thinking of MPM as multi-threaded versus
>> > single-threaded. If that is correct, on AIX I am seeing multi-threaded
>> > "pre-fork" behavior.
>>
>> Basically: The prefork MPM has single-threaded child processes; the
>> worker MPM has multi-threaded child processes.
>>
>> > ===
>> > root@x105:[/]apachectl -l
>> > Compiled in modules:
>> >   core.c
>> >   worker.c
>>
>> With "--enable-mpms-shared=all" you should not see prefork.c or
>> worker.c (or any MPM) in this list.  Something is going wrong at
>> configure time.
>>
>>
>> >   http_core.c
>> >   mod_so.c
>> > ===
>> > root@x105:[/]ps -G 202 -mo THREAD
>> >     USER    PID   PPID      TID ST  CP PRI SC    WCHAN        F     TT
>> > BND
>> > COMMAND
>> >   daemon 299078 458806        - A    0  60 28        *    40001      -
>> > -
>> > /opt/httpd/sbin/httpd -k start
>> >        -      -      -   524427 S    0  60  1 f100070f10008040  8410400
>> > -   - -
>> >        -      -      -   647261 S    0  60  1 f100070f10009e40  8410400
>> > -   - -
>> >        -      -      -   667799 S    0  60  1 f100070f1000a340  8410400
>> > -   - -
>> >        -      -      -   671983 S    0  60  1 f100070f1000a440  8410400
>> > -   - -
>> >        -      -      -   680117 S    0  60  1 f100070f1000a640  8410400
>> > -   - -
>> >        -      -      -   684109 S    0  60  1 f100070f1000a740  8410400
>> > -   - -
>> >        -      -      -   749707 S    0  60  1 f100070f1000b740  8410400
>> > -   - -
>> >        -      -      -   888971 S    0  60  1 f100070f1000d940  8410400
>> > -   - -
>> >        -      -      -   905243 Z    0  60  1        -   c00001      -
>> > - -
>> >        -      -      -   970855 S    0  60  1 f100010012c4ffb8   410400
>> > -   - -
>> >        -      -      -   999669 S    0  60  1 f100070f1000f440  8410400
>> > -   - -
>> >        -      -      -  1003655 S    0  60  1 f100070f1000f540  8410400
>> > -   - -
>> >        -      -      -  1044605 S    0  60  1 f100070f1000ff40  8410400
>> > -   - -
>> >        -      -      -  1069255 S    0  60  1 f100070f10010540  8410400
>> > -   - -
>> >        -      -      -  1101951 S    0  60  1 f100070f10010d40  8410400
>> > -   - -
>> >        -      -      -  1204243 S    0  60  1 f100070f10012640  8410400
>> > -   - -
>> >        -      -      -  1233133 S    0  60  1 f100070f10012d40  8410400
>> > -   - -
>> >        -      -      -  1245225 S    0  60  1 f100070f10013040  8410400
>> > -   - -
>> >        -      -      -  1249349 S    0  60  1 f100070f10013140  8410400
>> > -   - -
>> >        -      -      -  1261619 S    0  60  1 f100070f10013440  8410400
>> > -   - -
>> >        -      -      -  1278023 S    0  60  1 f100070f10013840  8410400
>> > -   - -
>> >        -      -      -  1294395 S    0  60  1 f100070f10013c40  8410400
>> > -   - -
>> >        -      -      -  1319117 S    0  60  1 f100070f10014240  8410400
>> > -   - -
>> >        -      -      -  1323147 S    0  60  1 f100070f10014340  8410400
>> > -   - -
>> >        -      -      -  1331321 S    0  60  1 f100070f10014540  8410400
>> > -   - -
>> >        -      -      -  1355913 S    0  60  1 f100060000ebca08   400400
>> > -   - -
>> >        -      -      -  1368225 S    0  60  1 f100070f10014e40  8410400
>> > -   - -
>> >        -      -      -  1409275 S    0  60  1 f100070f10015840  8410400
>> > -   - -
>> >   daemon 491756 458806        - A    0  60  1 f100060000e91208    40401
>> > -   - /opt/httpd/sbin/httpd -k start
>> >        -      -      -   839725 S    0  60  1 f100060000e91208   400400
>> > -   - -
>> >   daemon 565316 458806        - A    0  60 28        *    40001      -
>> > -
>> > /opt/httpd/sbin/httpd -k start
>> >        -      -      -   504043 S    0  60  1 f100070f10007b40  8410400
>> > -   - -
>> >        -      -      -   512187 S    0  60  1 f100070f10007d40  8410400
>> > -   - -
>> >        -      -      -   659535 Z    0  60  1        -   c00001      -
>> > - -
>> >        -      -      -   729261 S    0  60  1 f100070f1000b240  8410400
>> > -   - -
>> >        -      -      -   733431 S    0  60  1 f100070f1000b340  8410400
>> > -   - -
>> >        -      -      -   753851 S    0  60  1 f100070f1000b840  8410400
>> > -   - -
>> >        -      -      -   925923 S    0  60  1 f100070f1000e240  8410400
>> > -   - -
>> >        -      -      -   929947 S    0  60  1 f100070f1000e340  8410400
>> > -   - -
>> >        -      -      -   938061 S    0  60  1 f100070f1000e540  8410400
>> > -   - -
>> >        -      -      -   975039 S    0  60  1 f100070f1000ee40  8410400
>> > -   - -
>> >        -      -      -  1007673 S    0  60  1 f100060000ebca08   400400
>> > -   - -
>> >        -      -      -  1040579 S    0  60  1 f100070f1000fe40  8410400
>> > -   - -
>> >        -      -      -  1073265 S    0  60  1 f100070f10010640  8410400
>> > -   - -
>> >        -      -      -  1126419 S    0  60  1 f100070f10011340  8410400
>> > -   - -
>> >        -      -      -  1171705 S    0  60  1 f100070f10011e40  8410400
>> > -   - -
>> >        -      -      -  1183967 S    0  60  1 f100070f10012140  8410400
>> > -   - -
>> >        -      -      -  1192149 S    0  60  1 f100070f10012340  8410400
>> > -   - -
>> >        -      -      -  1228911 S    0  60  1 f100070f10012c40  8410400
>> > -   - -
>> >        -      -      -  1237123 S    0  60  1 f100070f10012e40  8410400
>> > -   - -
>> >        -      -      -  1257713 S    0  60  1 f100010012c4ffb8   410400
>> > -   - -
>> >        -      -      -  1310959 S    0  60  1 f100070f10014040  8410400
>> > -   - -
>> >        -      -      -  1339473 S    0  60  1 f100070f10014740  8410400
>> > -   - -
>> >        -      -      -  1343615 S    0  60  1 f100070f10014840  8410400
>> > -   - -
>> >        -      -      -  1347699 S    0  60  1 f100070f10014940  8410400
>> > -   - -
>> >        -      -      -  1364159 S    0  60  1 f100070f10014d40  8410400
>> > -   - -
>> >        -      -      -  1372165 S    0  60  1 f100070f10014f40  8410400
>> > -   - -
>> >        -      -      -  1376461 S    0  60  1 f100070f10015040  8410400
>> > -   - -
>> >        -      -      -  1396845 S    0  60  1 f100070f10015540  8410400
>> > -   - -
>> > root@x105:[/]
>> > ====
>> > In the listing above, the PID numbers are the even numbers (processes)
>> > while
>> > the column TID (thread ID) are all odd. Threads are indented and "under"
>> > the
>> > process.
>> >
>> > Only "changes" were creation of a group daemon (id = 202, hence ps -G
>> > 202),
>> > and activating the extra/httpd-mpm.conf file via /etc/httpd/httpd.conf.
>> >
>> > So, even though I do not see any files named *mpm*.so I would think that
>> > this shows that AIX it is "worker" and not pre-fork.
>> >
>> >
>> > On Wed, Feb 8, 2012 at 5:57 PM, Jeff Trawick <tr...@gmail.com> wrote:
>> >>
>> >> On Wed, Feb 8, 2012 at 11:47 AM, Michael Felt <ma...@gmail.com>
>> >> wrote:
>> >> > Well, just slightly confused.
>> >> > On my system I have "tested" in as much as I can https://hostname and
>> >> > it
>> >> > says "It works!".
>> >> > What I need some assistence with perhaps is determeing which "mpm"
>> >> > binary
>> >> > was built, as I am only building one with 2.2.22 at the moment.
>> >>
>> >> Look in your modules directory for *mpm*.so to see what was
>> >> built+installed.
>> >>
>> >> Look in your httpd.conf to see which of those available MPMs is loaded
>> >> via LoadModule.
>> >>
>> >> (I think you'll find that prefork and worker are built for AIX, and
>> >> worker is the one loaded by default.)
>> >>
>> >> >
>> >> > re: Having only one script - I am not surprised there must be more
>> >> > than
>> >> > one,
>> >> > but I hoped :)
>> >> > There are actually two scripts - one that does the
>> >> > configure/make/make
>> >> > install, and one that creates the
>> >> > template needed to make the package.
>> >> >
>> >> > FYI: I am working on getting a build for a svn client as well. AND -
>> >> > I
>> >> > am
>> >> > doing these things because I am very tired of having to download 10
>> >> > to
>> >> > 20
>> >> > .rpm packages, each with moving dependancies it seems, in order to
>> >> > install
>> >> > something that is supposed readily available. In short, I am trying
>> >> > to
>> >> > make
>> >> > some packages that just 'install' with saying - you need this too,
>> >> > and
>> >> > then
>> >> > when you install that - it says and I need this first, etc etc.
>> >> >
>> >> > In a word, boring.
>> >> >
>> >> > FYI: current tools (IBM and others) use /opt/freeware as their main
>> >> > installation area - so I am opting for /opt/* (no freeware in the
>> >> > name)
>> >> > for
>> >> > packages like coreutils, libz, pcre, apr, apr-util, etc. and
>> >> > applications
>> >> > (packaging) such as httpd and svn in /opt/httpd, /opt/svn. With your
>> >> > wealth
>> >> > of prior experience - if you see a trap I am setting for myself,
>> >> > please
>> >> > warn
>> >> > me - and better - lead me to safety.
>> >> >
>> >> > regards, Michael
>> >> >
>> >> >
>> >> > On Wed, Feb 8, 2012 at 3:40 PM, Jeff Trawick <tr...@gmail.com>
>> >> > wrote:
>> >> >>
>> >> >> On Wed, Feb 8, 2012 at 9:08 AM, Michael Felt <ma...@gmail.com>
>> >> >> wrote:
>> >> >> > Well, it was building "something". I'll try the proposed change
>> >> >> > and
>> >> >> > make
>> >> >> > sure it is still giving me "all" the mods.
>> >> >>
>> >> >> yeah, that was the idea...  thanks!
>> >> >>
>> >> >> > FYI - I have added --enable-ssl (so that the same script works for
>> >> >> > both
>> >> >> > 2.2.22 and 2.4.0 which have different ideas of "all".
>> >> >>
>> >> >> As Graham mentioned, expect to have different scripts for different
>> >> >> releases and do the right thing for each release.  It isn't a good
>> >> >> thing if people who play with  configure more often but might not
>> >> >> know
>> >> >> the ancient history stare at the script and wonder about the odd
>> >> >> choice of arguments.  (I happen to remember about the
>> >> >> AIX/--enable-so
>> >> >> issue from long ago, but that needs to die.)
>> >> >>
>> >> >> > And I hope configure will still leave AIX modules as shared (as it
>> >> >> > used
>> >> >> > to
>> >> >> > make them all static by default - long ago).
>> >> >>
>> >> >> If it doesn't build them shared using the appropriate configure
>> >> >> args,
>> >> >> that's what needs to be fixed.  (Most people won't use this script.)
>> >> >>
>> >> >> >
>> >> >> > I shall try both 2.4.0 and 2.2.22 (without --enable-ssl) - and I
>> >> >> > am
>> >> >> > continuing to work towards to havin g APR external to httpd.
>> >> >> >
>> >> >> >
>> >> >> > On Tue, Feb 7, 2012 at 8:09 PM, Jeff Trawick <tr...@gmail.com>
>> >> >> > wrote:
>> >> >> >>
>> >> >> >> The buildaix.ksh script committed recently had some outdated
>> >> >> >> options
>> >> >> >> or requirements, and didn't build loadable MPMs.  Suggested
>> >> >> >> changes
>> >> >> >> are below.  Do or do not fold, spindle, or mutilate; commit with
>> >> >> >> or
>> >> >> >> without testing; etc.
>> >> >> >>
>> >> >> >> Index: build/aix/buildaix.ksh
>> >> >> >>
>> >> >> >> ===================================================================
>> >> >> >> --- build/aix/buildaix.ksh      (revision 1241549)
>> >> >> >> +++ build/aix/buildaix.ksh      (working copy)
>> >> >> >> @@ -30,11 +30,7 @@
>> >> >> >>  > nohup.out
>> >> >> >>  ./configure \
>> >> >> >>         --enable-layout=$LAYOUT \
>> >> >> >> -       --enable-module=so \
>> >> >> >> -       --enable-proxy \
>> >> >> >> -       --enable-cache \
>> >> >> >> -       --enable-disk-cache \
>> >> >> >> -       --with-mpm=worker \
>> >> >> >> +       --enable-mpms-shared=all \
>> >> >> >>         --enable-mods-shared=all | tee nohup.out
>> >> >> >>
>> >> >> >>  make | tee -a nohup.out
>> >> >> >>
>> >> >> >> --
>> >> >> >> Born in Roswell... married an alien...
>> >> >> >
>> >> >> >
>> >> >>
>> >> >>
>> >> >>
>> >> >> --
>> >> >> Born in Roswell... married an alien...
>> >> >
>> >> >
>> >>
>> >>
>> >>
>> >> --
>> >> Born in Roswell... married an alien...
>> >
>> >
>>
>>
>>
>> --
>> Born in Roswell... married an alien...
>
>



-- 
Born in Roswell... married an alien...

Re: [PATCH] AIX configure options

Posted by Michael Felt <ma...@gmail.com>.
I was assuming that "worker.c" was the code that spawned the threads.
(remember, this is 2.2.22, not 2.4.0, in case that makes any difference)

So, please correct me where I am wrong:
from "/etc/httpd/extra/httpd-mpm.conf

#
# Only one of the below sections will be relevant on your
# installed httpd.  Use "apachectl -l" to find out the
# active mpm.
#

... I assumed that this is where "worker.c" was telling me that mpm=worker
<IfModule mpm_prefork_module>
....
# worker MPM
# StartServers: initial number of server processes to start
# MaxClients: maximum number of simultaneous client connections
# MinSpareThreads: minimum number of worker threads which are kept spare
...
<IfModule mpm_worker_module>
    StartServers          2
    MaxClients          150
    MinSpareThreads      25
...
<IfModule mpm_beos_module>

etc..

Note - these are the ONLY compiled in modules:
root@x105:[/]apachectl -l
Compiled in modules:
  core.c
  worker.c
  http_core.c
  mod_so.c
---
OR
root@x105:[/]apachectl -M
Loaded Modules:
 core_module (static)
 mpm_worker_module (static)
 http_module (static)
 so_module (static)
 authn_file_module (shared)
 authn_dbm_module (shared)
 authn_anon_module (shared)
 authn_dbd_module (shared)
 authn_default_module (shared)
 authz_host_module (shared)
 authz_groupfile_module (shared)
 authz_user_module (shared)
 authz_dbm_module (shared)
 authz_owner_module (shared)
 authz_default_module (shared)
 auth_basic_module (shared)
 auth_digest_module (shared)
 dbd_module (shared)
 dumpio_module (shared)
 reqtimeout_module (shared)
 ext_filter_module (shared)
 include_module (shared)
 filter_module (shared)
 substitute_module (shared)
 deflate_module (shared)
 log_config_module (shared)
 log_forensic_module (shared)
 logio_module (shared)
 env_module (shared)
 mime_magic_module (shared)
 cern_meta_module (shared)
 expires_module (shared)
 headers_module (shared)
 ident_module (shared)
 usertrack_module (shared)
 unique_id_module (shared)
 setenvif_module (shared)
 version_module (shared)
 mime_module (shared)
 dav_module (shared)
 status_module (shared)
 autoindex_module (shared)
 asis_module (shared)
 info_module (shared)
 cgid_module (shared)
 dav_fs_module (shared)
 vhost_alias_module (shared)
 negotiation_module (shared)
 dir_module (shared)
 imagemap_module (shared)
 actions_module (shared)
 speling_module (shared)
 userdir_module (shared)
 alias_module (shared)
 rewrite_module (shared)
Syntax OK

which is the result of:
 ./configure --enable-layout=AIX --with-mpm=worker --enable-mods-shared=all

It is what I "expected", so where am I going wrong?

On Wed, Feb 8, 2012 at 9:27 PM, Jeff Trawick <tr...@gmail.com> wrote:

> On Wed, Feb 8, 2012 at 3:02 PM, Michael Felt <ma...@gmail.com> wrote:
> > Well, ..., removed external apr, just to be sure it was "the same as
> before"
> >
> > For simplicity, I am thinking of MPM as multi-threaded versus
> > single-threaded. If that is correct, on AIX I am seeing multi-threaded
> > "pre-fork" behavior.
>
> Basically: The prefork MPM has single-threaded child processes; the
> worker MPM has multi-threaded child processes.
>
> > ===
> > root@x105:[/]apachectl -l
> > Compiled in modules:
> >   core.c
> >   worker.c
>
> With "--enable-mpms-shared=all" you should not see prefork.c or
> worker.c (or any MPM) in this list.  Something is going wrong at
> configure time.
>
>
> >   http_core.c
> >   mod_so.c
> > ===
> > root@x105:[/]ps -G 202 -mo THREAD
> >     USER    PID   PPID      TID ST  CP PRI SC    WCHAN        F     TT
> BND
> > COMMAND
> >   daemon 299078 458806        - A    0  60 28        *    40001      -
> -
> > /opt/httpd/sbin/httpd -k start
> >        -      -      -   524427 S    0  60  1 f100070f10008040  8410400
> > -   - -
> >        -      -      -   647261 S    0  60  1 f100070f10009e40  8410400
> > -   - -
> >        -      -      -   667799 S    0  60  1 f100070f1000a340  8410400
> > -   - -
> >        -      -      -   671983 S    0  60  1 f100070f1000a440  8410400
> > -   - -
> >        -      -      -   680117 S    0  60  1 f100070f1000a640  8410400
> > -   - -
> >        -      -      -   684109 S    0  60  1 f100070f1000a740  8410400
> > -   - -
> >        -      -      -   749707 S    0  60  1 f100070f1000b740  8410400
> > -   - -
> >        -      -      -   888971 S    0  60  1 f100070f1000d940  8410400
> > -   - -
> >        -      -      -   905243 Z    0  60  1        -   c00001      -
> - -
> >        -      -      -   970855 S    0  60  1 f100010012c4ffb8   410400
> > -   - -
> >        -      -      -   999669 S    0  60  1 f100070f1000f440  8410400
> > -   - -
> >        -      -      -  1003655 S    0  60  1 f100070f1000f540  8410400
> > -   - -
> >        -      -      -  1044605 S    0  60  1 f100070f1000ff40  8410400
> > -   - -
> >        -      -      -  1069255 S    0  60  1 f100070f10010540  8410400
> > -   - -
> >        -      -      -  1101951 S    0  60  1 f100070f10010d40  8410400
> > -   - -
> >        -      -      -  1204243 S    0  60  1 f100070f10012640  8410400
> > -   - -
> >        -      -      -  1233133 S    0  60  1 f100070f10012d40  8410400
> > -   - -
> >        -      -      -  1245225 S    0  60  1 f100070f10013040  8410400
> > -   - -
> >        -      -      -  1249349 S    0  60  1 f100070f10013140  8410400
> > -   - -
> >        -      -      -  1261619 S    0  60  1 f100070f10013440  8410400
> > -   - -
> >        -      -      -  1278023 S    0  60  1 f100070f10013840  8410400
> > -   - -
> >        -      -      -  1294395 S    0  60  1 f100070f10013c40  8410400
> > -   - -
> >        -      -      -  1319117 S    0  60  1 f100070f10014240  8410400
> > -   - -
> >        -      -      -  1323147 S    0  60  1 f100070f10014340  8410400
> > -   - -
> >        -      -      -  1331321 S    0  60  1 f100070f10014540  8410400
> > -   - -
> >        -      -      -  1355913 S    0  60  1 f100060000ebca08   400400
> > -   - -
> >        -      -      -  1368225 S    0  60  1 f100070f10014e40  8410400
> > -   - -
> >        -      -      -  1409275 S    0  60  1 f100070f10015840  8410400
> > -   - -
> >   daemon 491756 458806        - A    0  60  1 f100060000e91208    40401
> > -   - /opt/httpd/sbin/httpd -k start
> >        -      -      -   839725 S    0  60  1 f100060000e91208   400400
> > -   - -
> >   daemon 565316 458806        - A    0  60 28        *    40001      -
> -
> > /opt/httpd/sbin/httpd -k start
> >        -      -      -   504043 S    0  60  1 f100070f10007b40  8410400
> > -   - -
> >        -      -      -   512187 S    0  60  1 f100070f10007d40  8410400
> > -   - -
> >        -      -      -   659535 Z    0  60  1        -   c00001      -
> - -
> >        -      -      -   729261 S    0  60  1 f100070f1000b240  8410400
> > -   - -
> >        -      -      -   733431 S    0  60  1 f100070f1000b340  8410400
> > -   - -
> >        -      -      -   753851 S    0  60  1 f100070f1000b840  8410400
> > -   - -
> >        -      -      -   925923 S    0  60  1 f100070f1000e240  8410400
> > -   - -
> >        -      -      -   929947 S    0  60  1 f100070f1000e340  8410400
> > -   - -
> >        -      -      -   938061 S    0  60  1 f100070f1000e540  8410400
> > -   - -
> >        -      -      -   975039 S    0  60  1 f100070f1000ee40  8410400
> > -   - -
> >        -      -      -  1007673 S    0  60  1 f100060000ebca08   400400
> > -   - -
> >        -      -      -  1040579 S    0  60  1 f100070f1000fe40  8410400
> > -   - -
> >        -      -      -  1073265 S    0  60  1 f100070f10010640  8410400
> > -   - -
> >        -      -      -  1126419 S    0  60  1 f100070f10011340  8410400
> > -   - -
> >        -      -      -  1171705 S    0  60  1 f100070f10011e40  8410400
> > -   - -
> >        -      -      -  1183967 S    0  60  1 f100070f10012140  8410400
> > -   - -
> >        -      -      -  1192149 S    0  60  1 f100070f10012340  8410400
> > -   - -
> >        -      -      -  1228911 S    0  60  1 f100070f10012c40  8410400
> > -   - -
> >        -      -      -  1237123 S    0  60  1 f100070f10012e40  8410400
> > -   - -
> >        -      -      -  1257713 S    0  60  1 f100010012c4ffb8   410400
> > -   - -
> >        -      -      -  1310959 S    0  60  1 f100070f10014040  8410400
> > -   - -
> >        -      -      -  1339473 S    0  60  1 f100070f10014740  8410400
> > -   - -
> >        -      -      -  1343615 S    0  60  1 f100070f10014840  8410400
> > -   - -
> >        -      -      -  1347699 S    0  60  1 f100070f10014940  8410400
> > -   - -
> >        -      -      -  1364159 S    0  60  1 f100070f10014d40  8410400
> > -   - -
> >        -      -      -  1372165 S    0  60  1 f100070f10014f40  8410400
> > -   - -
> >        -      -      -  1376461 S    0  60  1 f100070f10015040  8410400
> > -   - -
> >        -      -      -  1396845 S    0  60  1 f100070f10015540  8410400
> > -   - -
> > root@x105:[/]
> > ====
> > In the listing above, the PID numbers are the even numbers (processes)
> while
> > the column TID (thread ID) are all odd. Threads are indented and "under"
> the
> > process.
> >
> > Only "changes" were creation of a group daemon (id = 202, hence ps -G
> 202),
> > and activating the extra/httpd-mpm.conf file via /etc/httpd/httpd.conf.
> >
> > So, even though I do not see any files named *mpm*.so I would think that
> > this shows that AIX it is "worker" and not pre-fork.
> >
> >
> > On Wed, Feb 8, 2012 at 5:57 PM, Jeff Trawick <tr...@gmail.com> wrote:
> >>
> >> On Wed, Feb 8, 2012 at 11:47 AM, Michael Felt <ma...@gmail.com>
> wrote:
> >> > Well, just slightly confused.
> >> > On my system I have "tested" in as much as I can https://hostnameand it
> >> > says "It works!".
> >> > What I need some assistence with perhaps is determeing which "mpm"
> >> > binary
> >> > was built, as I am only building one with 2.2.22 at the moment.
> >>
> >> Look in your modules directory for *mpm*.so to see what was
> >> built+installed.
> >>
> >> Look in your httpd.conf to see which of those available MPMs is loaded
> >> via LoadModule.
> >>
> >> (I think you'll find that prefork and worker are built for AIX, and
> >> worker is the one loaded by default.)
> >>
> >> >
> >> > re: Having only one script - I am not surprised there must be more
> than
> >> > one,
> >> > but I hoped :)
> >> > There are actually two scripts - one that does the configure/make/make
> >> > install, and one that creates the
> >> > template needed to make the package.
> >> >
> >> > FYI: I am working on getting a build for a svn client as well. AND - I
> >> > am
> >> > doing these things because I am very tired of having to download 10 to
> >> > 20
> >> > .rpm packages, each with moving dependancies it seems, in order to
> >> > install
> >> > something that is supposed readily available. In short, I am trying to
> >> > make
> >> > some packages that just 'install' with saying - you need this too, and
> >> > then
> >> > when you install that - it says and I need this first, etc etc.
> >> >
> >> > In a word, boring.
> >> >
> >> > FYI: current tools (IBM and others) use /opt/freeware as their main
> >> > installation area - so I am opting for /opt/* (no freeware in the
> name)
> >> > for
> >> > packages like coreutils, libz, pcre, apr, apr-util, etc. and
> >> > applications
> >> > (packaging) such as httpd and svn in /opt/httpd, /opt/svn. With your
> >> > wealth
> >> > of prior experience - if you see a trap I am setting for myself,
> please
> >> > warn
> >> > me - and better - lead me to safety.
> >> >
> >> > regards, Michael
> >> >
> >> >
> >> > On Wed, Feb 8, 2012 at 3:40 PM, Jeff Trawick <tr...@gmail.com>
> wrote:
> >> >>
> >> >> On Wed, Feb 8, 2012 at 9:08 AM, Michael Felt <ma...@gmail.com>
> wrote:
> >> >> > Well, it was building "something". I'll try the proposed change and
> >> >> > make
> >> >> > sure it is still giving me "all" the mods.
> >> >>
> >> >> yeah, that was the idea...  thanks!
> >> >>
> >> >> > FYI - I have added --enable-ssl (so that the same script works for
> >> >> > both
> >> >> > 2.2.22 and 2.4.0 which have different ideas of "all".
> >> >>
> >> >> As Graham mentioned, expect to have different scripts for different
> >> >> releases and do the right thing for each release.  It isn't a good
> >> >> thing if people who play with  configure more often but might not
> know
> >> >> the ancient history stare at the script and wonder about the odd
> >> >> choice of arguments.  (I happen to remember about the AIX/--enable-so
> >> >> issue from long ago, but that needs to die.)
> >> >>
> >> >> > And I hope configure will still leave AIX modules as shared (as it
> >> >> > used
> >> >> > to
> >> >> > make them all static by default - long ago).
> >> >>
> >> >> If it doesn't build them shared using the appropriate configure args,
> >> >> that's what needs to be fixed.  (Most people won't use this script.)
> >> >>
> >> >> >
> >> >> > I shall try both 2.4.0 and 2.2.22 (without --enable-ssl) - and I am
> >> >> > continuing to work towards to havin g APR external to httpd.
> >> >> >
> >> >> >
> >> >> > On Tue, Feb 7, 2012 at 8:09 PM, Jeff Trawick <tr...@gmail.com>
> >> >> > wrote:
> >> >> >>
> >> >> >> The buildaix.ksh script committed recently had some outdated
> options
> >> >> >> or requirements, and didn't build loadable MPMs.  Suggested
> changes
> >> >> >> are below.  Do or do not fold, spindle, or mutilate; commit with
> or
> >> >> >> without testing; etc.
> >> >> >>
> >> >> >> Index: build/aix/buildaix.ksh
> >> >> >>
> ===================================================================
> >> >> >> --- build/aix/buildaix.ksh      (revision 1241549)
> >> >> >> +++ build/aix/buildaix.ksh      (working copy)
> >> >> >> @@ -30,11 +30,7 @@
> >> >> >>  > nohup.out
> >> >> >>  ./configure \
> >> >> >>         --enable-layout=$LAYOUT \
> >> >> >> -       --enable-module=so \
> >> >> >> -       --enable-proxy \
> >> >> >> -       --enable-cache \
> >> >> >> -       --enable-disk-cache \
> >> >> >> -       --with-mpm=worker \
> >> >> >> +       --enable-mpms-shared=all \
> >> >> >>         --enable-mods-shared=all | tee nohup.out
> >> >> >>
> >> >> >>  make | tee -a nohup.out
> >> >> >>
> >> >> >> --
> >> >> >> Born in Roswell... married an alien...
> >> >> >
> >> >> >
> >> >>
> >> >>
> >> >>
> >> >> --
> >> >> Born in Roswell... married an alien...
> >> >
> >> >
> >>
> >>
> >>
> >> --
> >> Born in Roswell... married an alien...
> >
> >
>
>
>
> --
> Born in Roswell... married an alien...
>

Re: [PATCH] AIX configure options

Posted by Jeff Trawick <tr...@gmail.com>.
On Wed, Feb 8, 2012 at 3:02 PM, Michael Felt <ma...@gmail.com> wrote:
> Well, ..., removed external apr, just to be sure it was "the same as before"
>
> For simplicity, I am thinking of MPM as multi-threaded versus
> single-threaded. If that is correct, on AIX I am seeing multi-threaded
> "pre-fork" behavior.

Basically: The prefork MPM has single-threaded child processes; the
worker MPM has multi-threaded child processes.

> ===
> root@x105:[/]apachectl -l
> Compiled in modules:
>   core.c
>   worker.c

With "--enable-mpms-shared=all" you should not see prefork.c or
worker.c (or any MPM) in this list.  Something is going wrong at
configure time.


>   http_core.c
>   mod_so.c
> ===
> root@x105:[/]ps -G 202 -mo THREAD
>     USER    PID   PPID      TID ST  CP PRI SC    WCHAN        F     TT BND
> COMMAND
>   daemon 299078 458806        - A    0  60 28        *    40001      -   -
> /opt/httpd/sbin/httpd -k start
>        -      -      -   524427 S    0  60  1 f100070f10008040  8410400
> -   - -
>        -      -      -   647261 S    0  60  1 f100070f10009e40  8410400
> -   - -
>        -      -      -   667799 S    0  60  1 f100070f1000a340  8410400
> -   - -
>        -      -      -   671983 S    0  60  1 f100070f1000a440  8410400
> -   - -
>        -      -      -   680117 S    0  60  1 f100070f1000a640  8410400
> -   - -
>        -      -      -   684109 S    0  60  1 f100070f1000a740  8410400
> -   - -
>        -      -      -   749707 S    0  60  1 f100070f1000b740  8410400
> -   - -
>        -      -      -   888971 S    0  60  1 f100070f1000d940  8410400
> -   - -
>        -      -      -   905243 Z    0  60  1        -   c00001      -   - -
>        -      -      -   970855 S    0  60  1 f100010012c4ffb8   410400
> -   - -
>        -      -      -   999669 S    0  60  1 f100070f1000f440  8410400
> -   - -
>        -      -      -  1003655 S    0  60  1 f100070f1000f540  8410400
> -   - -
>        -      -      -  1044605 S    0  60  1 f100070f1000ff40  8410400
> -   - -
>        -      -      -  1069255 S    0  60  1 f100070f10010540  8410400
> -   - -
>        -      -      -  1101951 S    0  60  1 f100070f10010d40  8410400
> -   - -
>        -      -      -  1204243 S    0  60  1 f100070f10012640  8410400
> -   - -
>        -      -      -  1233133 S    0  60  1 f100070f10012d40  8410400
> -   - -
>        -      -      -  1245225 S    0  60  1 f100070f10013040  8410400
> -   - -
>        -      -      -  1249349 S    0  60  1 f100070f10013140  8410400
> -   - -
>        -      -      -  1261619 S    0  60  1 f100070f10013440  8410400
> -   - -
>        -      -      -  1278023 S    0  60  1 f100070f10013840  8410400
> -   - -
>        -      -      -  1294395 S    0  60  1 f100070f10013c40  8410400
> -   - -
>        -      -      -  1319117 S    0  60  1 f100070f10014240  8410400
> -   - -
>        -      -      -  1323147 S    0  60  1 f100070f10014340  8410400
> -   - -
>        -      -      -  1331321 S    0  60  1 f100070f10014540  8410400
> -   - -
>        -      -      -  1355913 S    0  60  1 f100060000ebca08   400400
> -   - -
>        -      -      -  1368225 S    0  60  1 f100070f10014e40  8410400
> -   - -
>        -      -      -  1409275 S    0  60  1 f100070f10015840  8410400
> -   - -
>   daemon 491756 458806        - A    0  60  1 f100060000e91208    40401
> -   - /opt/httpd/sbin/httpd -k start
>        -      -      -   839725 S    0  60  1 f100060000e91208   400400
> -   - -
>   daemon 565316 458806        - A    0  60 28        *    40001      -   -
> /opt/httpd/sbin/httpd -k start
>        -      -      -   504043 S    0  60  1 f100070f10007b40  8410400
> -   - -
>        -      -      -   512187 S    0  60  1 f100070f10007d40  8410400
> -   - -
>        -      -      -   659535 Z    0  60  1        -   c00001      -   - -
>        -      -      -   729261 S    0  60  1 f100070f1000b240  8410400
> -   - -
>        -      -      -   733431 S    0  60  1 f100070f1000b340  8410400
> -   - -
>        -      -      -   753851 S    0  60  1 f100070f1000b840  8410400
> -   - -
>        -      -      -   925923 S    0  60  1 f100070f1000e240  8410400
> -   - -
>        -      -      -   929947 S    0  60  1 f100070f1000e340  8410400
> -   - -
>        -      -      -   938061 S    0  60  1 f100070f1000e540  8410400
> -   - -
>        -      -      -   975039 S    0  60  1 f100070f1000ee40  8410400
> -   - -
>        -      -      -  1007673 S    0  60  1 f100060000ebca08   400400
> -   - -
>        -      -      -  1040579 S    0  60  1 f100070f1000fe40  8410400
> -   - -
>        -      -      -  1073265 S    0  60  1 f100070f10010640  8410400
> -   - -
>        -      -      -  1126419 S    0  60  1 f100070f10011340  8410400
> -   - -
>        -      -      -  1171705 S    0  60  1 f100070f10011e40  8410400
> -   - -
>        -      -      -  1183967 S    0  60  1 f100070f10012140  8410400
> -   - -
>        -      -      -  1192149 S    0  60  1 f100070f10012340  8410400
> -   - -
>        -      -      -  1228911 S    0  60  1 f100070f10012c40  8410400
> -   - -
>        -      -      -  1237123 S    0  60  1 f100070f10012e40  8410400
> -   - -
>        -      -      -  1257713 S    0  60  1 f100010012c4ffb8   410400
> -   - -
>        -      -      -  1310959 S    0  60  1 f100070f10014040  8410400
> -   - -
>        -      -      -  1339473 S    0  60  1 f100070f10014740  8410400
> -   - -
>        -      -      -  1343615 S    0  60  1 f100070f10014840  8410400
> -   - -
>        -      -      -  1347699 S    0  60  1 f100070f10014940  8410400
> -   - -
>        -      -      -  1364159 S    0  60  1 f100070f10014d40  8410400
> -   - -
>        -      -      -  1372165 S    0  60  1 f100070f10014f40  8410400
> -   - -
>        -      -      -  1376461 S    0  60  1 f100070f10015040  8410400
> -   - -
>        -      -      -  1396845 S    0  60  1 f100070f10015540  8410400
> -   - -
> root@x105:[/]
> ====
> In the listing above, the PID numbers are the even numbers (processes) while
> the column TID (thread ID) are all odd. Threads are indented and "under" the
> process.
>
> Only "changes" were creation of a group daemon (id = 202, hence ps -G 202),
> and activating the extra/httpd-mpm.conf file via /etc/httpd/httpd.conf.
>
> So, even though I do not see any files named *mpm*.so I would think that
> this shows that AIX it is "worker" and not pre-fork.
>
>
> On Wed, Feb 8, 2012 at 5:57 PM, Jeff Trawick <tr...@gmail.com> wrote:
>>
>> On Wed, Feb 8, 2012 at 11:47 AM, Michael Felt <ma...@gmail.com> wrote:
>> > Well, just slightly confused.
>> > On my system I have "tested" in as much as I can https://hostname and it
>> > says "It works!".
>> > What I need some assistence with perhaps is determeing which "mpm"
>> > binary
>> > was built, as I am only building one with 2.2.22 at the moment.
>>
>> Look in your modules directory for *mpm*.so to see what was
>> built+installed.
>>
>> Look in your httpd.conf to see which of those available MPMs is loaded
>> via LoadModule.
>>
>> (I think you'll find that prefork and worker are built for AIX, and
>> worker is the one loaded by default.)
>>
>> >
>> > re: Having only one script - I am not surprised there must be more than
>> > one,
>> > but I hoped :)
>> > There are actually two scripts - one that does the configure/make/make
>> > install, and one that creates the
>> > template needed to make the package.
>> >
>> > FYI: I am working on getting a build for a svn client as well. AND - I
>> > am
>> > doing these things because I am very tired of having to download 10 to
>> > 20
>> > .rpm packages, each with moving dependancies it seems, in order to
>> > install
>> > something that is supposed readily available. In short, I am trying to
>> > make
>> > some packages that just 'install' with saying - you need this too, and
>> > then
>> > when you install that - it says and I need this first, etc etc.
>> >
>> > In a word, boring.
>> >
>> > FYI: current tools (IBM and others) use /opt/freeware as their main
>> > installation area - so I am opting for /opt/* (no freeware in the name)
>> > for
>> > packages like coreutils, libz, pcre, apr, apr-util, etc. and
>> > applications
>> > (packaging) such as httpd and svn in /opt/httpd, /opt/svn. With your
>> > wealth
>> > of prior experience - if you see a trap I am setting for myself, please
>> > warn
>> > me - and better - lead me to safety.
>> >
>> > regards, Michael
>> >
>> >
>> > On Wed, Feb 8, 2012 at 3:40 PM, Jeff Trawick <tr...@gmail.com> wrote:
>> >>
>> >> On Wed, Feb 8, 2012 at 9:08 AM, Michael Felt <ma...@gmail.com> wrote:
>> >> > Well, it was building "something". I'll try the proposed change and
>> >> > make
>> >> > sure it is still giving me "all" the mods.
>> >>
>> >> yeah, that was the idea...  thanks!
>> >>
>> >> > FYI - I have added --enable-ssl (so that the same script works for
>> >> > both
>> >> > 2.2.22 and 2.4.0 which have different ideas of "all".
>> >>
>> >> As Graham mentioned, expect to have different scripts for different
>> >> releases and do the right thing for each release.  It isn't a good
>> >> thing if people who play with  configure more often but might not know
>> >> the ancient history stare at the script and wonder about the odd
>> >> choice of arguments.  (I happen to remember about the AIX/--enable-so
>> >> issue from long ago, but that needs to die.)
>> >>
>> >> > And I hope configure will still leave AIX modules as shared (as it
>> >> > used
>> >> > to
>> >> > make them all static by default - long ago).
>> >>
>> >> If it doesn't build them shared using the appropriate configure args,
>> >> that's what needs to be fixed.  (Most people won't use this script.)
>> >>
>> >> >
>> >> > I shall try both 2.4.0 and 2.2.22 (without --enable-ssl) - and I am
>> >> > continuing to work towards to havin g APR external to httpd.
>> >> >
>> >> >
>> >> > On Tue, Feb 7, 2012 at 8:09 PM, Jeff Trawick <tr...@gmail.com>
>> >> > wrote:
>> >> >>
>> >> >> The buildaix.ksh script committed recently had some outdated options
>> >> >> or requirements, and didn't build loadable MPMs.  Suggested changes
>> >> >> are below.  Do or do not fold, spindle, or mutilate; commit with or
>> >> >> without testing; etc.
>> >> >>
>> >> >> Index: build/aix/buildaix.ksh
>> >> >> ===================================================================
>> >> >> --- build/aix/buildaix.ksh      (revision 1241549)
>> >> >> +++ build/aix/buildaix.ksh      (working copy)
>> >> >> @@ -30,11 +30,7 @@
>> >> >>  > nohup.out
>> >> >>  ./configure \
>> >> >>         --enable-layout=$LAYOUT \
>> >> >> -       --enable-module=so \
>> >> >> -       --enable-proxy \
>> >> >> -       --enable-cache \
>> >> >> -       --enable-disk-cache \
>> >> >> -       --with-mpm=worker \
>> >> >> +       --enable-mpms-shared=all \
>> >> >>         --enable-mods-shared=all | tee nohup.out
>> >> >>
>> >> >>  make | tee -a nohup.out
>> >> >>
>> >> >> --
>> >> >> Born in Roswell... married an alien...
>> >> >
>> >> >
>> >>
>> >>
>> >>
>> >> --
>> >> Born in Roswell... married an alien...
>> >
>> >
>>
>>
>>
>> --
>> Born in Roswell... married an alien...
>
>



-- 
Born in Roswell... married an alien...

Re: [PATCH] AIX configure options

Posted by Michael Felt <ma...@gmail.com>.
Well, ..., removed external apr, just to be sure it was "the same as before"

For simplicity, I am thinking of MPM as multi-threaded versus
single-threaded. If that is correct, on AIX I am seeing multi-threaded
"pre-fork" behavior.
===
root@x105:[/]apachectl -l
Compiled in modules:
  core.c
  worker.c
  http_core.c
  mod_so.c
===
root@x105:[/]ps -G 202 -mo THREAD
    USER    PID   PPID      TID ST  CP PRI SC    WCHAN        F     TT BND
COMMAND
  daemon 299078 458806        - A    0  60 28        *    40001      -   -
/opt/httpd/sbin/httpd -k start
       -      -      -   524427 S    0  60  1 f100070f10008040
8410400      -   - -
       -      -      -   647261 S    0  60  1 f100070f10009e40
8410400      -   - -
       -      -      -   667799 S    0  60  1 f100070f1000a340
8410400      -   - -
       -      -      -   671983 S    0  60  1 f100070f1000a440
8410400      -   - -
       -      -      -   680117 S    0  60  1 f100070f1000a640
8410400      -   - -
       -      -      -   684109 S    0  60  1 f100070f1000a740
8410400      -   - -
       -      -      -   749707 S    0  60  1 f100070f1000b740
8410400      -   - -
       -      -      -   888971 S    0  60  1 f100070f1000d940
8410400      -   - -
       -      -      -   905243 Z    0  60  1        -   c00001      -   - -
       -      -      -   970855 S    0  60  1 f100010012c4ffb8
410400      -   - -
       -      -      -   999669 S    0  60  1 f100070f1000f440
8410400      -   - -
       -      -      -  1003655 S    0  60  1 f100070f1000f540
8410400      -   - -
       -      -      -  1044605 S    0  60  1 f100070f1000ff40
8410400      -   - -
       -      -      -  1069255 S    0  60  1 f100070f10010540
8410400      -   - -
       -      -      -  1101951 S    0  60  1 f100070f10010d40
8410400      -   - -
       -      -      -  1204243 S    0  60  1 f100070f10012640
8410400      -   - -
       -      -      -  1233133 S    0  60  1 f100070f10012d40
8410400      -   - -
       -      -      -  1245225 S    0  60  1 f100070f10013040
8410400      -   - -
       -      -      -  1249349 S    0  60  1 f100070f10013140
8410400      -   - -
       -      -      -  1261619 S    0  60  1 f100070f10013440
8410400      -   - -
       -      -      -  1278023 S    0  60  1 f100070f10013840
8410400      -   - -
       -      -      -  1294395 S    0  60  1 f100070f10013c40
8410400      -   - -
       -      -      -  1319117 S    0  60  1 f100070f10014240
8410400      -   - -
       -      -      -  1323147 S    0  60  1 f100070f10014340
8410400      -   - -
       -      -      -  1331321 S    0  60  1 f100070f10014540
8410400      -   - -
       -      -      -  1355913 S    0  60  1 f100060000ebca08
400400      -   - -
       -      -      -  1368225 S    0  60  1 f100070f10014e40
8410400      -   - -
       -      -      -  1409275 S    0  60  1 f100070f10015840
8410400      -   - -
  daemon 491756 458806        - A    0  60  1 f100060000e91208
40401      -   - /opt/httpd/sbin/httpd -k start
       -      -      -   839725 S    0  60  1 f100060000e91208
400400      -   - -
  daemon 565316 458806        - A    0  60 28        *    40001      -   -
/opt/httpd/sbin/httpd -k start
       -      -      -   504043 S    0  60  1 f100070f10007b40
8410400      -   - -
       -      -      -   512187 S    0  60  1 f100070f10007d40
8410400      -   - -
       -      -      -   659535 Z    0  60  1        -   c00001      -   - -
       -      -      -   729261 S    0  60  1 f100070f1000b240
8410400      -   - -
       -      -      -   733431 S    0  60  1 f100070f1000b340
8410400      -   - -
       -      -      -   753851 S    0  60  1 f100070f1000b840
8410400      -   - -
       -      -      -   925923 S    0  60  1 f100070f1000e240
8410400      -   - -
       -      -      -   929947 S    0  60  1 f100070f1000e340
8410400      -   - -
       -      -      -   938061 S    0  60  1 f100070f1000e540
8410400      -   - -
       -      -      -   975039 S    0  60  1 f100070f1000ee40
8410400      -   - -
       -      -      -  1007673 S    0  60  1 f100060000ebca08
400400      -   - -
       -      -      -  1040579 S    0  60  1 f100070f1000fe40
8410400      -   - -
       -      -      -  1073265 S    0  60  1 f100070f10010640
8410400      -   - -
       -      -      -  1126419 S    0  60  1 f100070f10011340
8410400      -   - -
       -      -      -  1171705 S    0  60  1 f100070f10011e40
8410400      -   - -
       -      -      -  1183967 S    0  60  1 f100070f10012140
8410400      -   - -
       -      -      -  1192149 S    0  60  1 f100070f10012340
8410400      -   - -
       -      -      -  1228911 S    0  60  1 f100070f10012c40
8410400      -   - -
       -      -      -  1237123 S    0  60  1 f100070f10012e40
8410400      -   - -
       -      -      -  1257713 S    0  60  1 f100010012c4ffb8
410400      -   - -
       -      -      -  1310959 S    0  60  1 f100070f10014040
8410400      -   - -
       -      -      -  1339473 S    0  60  1 f100070f10014740
8410400      -   - -
       -      -      -  1343615 S    0  60  1 f100070f10014840
8410400      -   - -
       -      -      -  1347699 S    0  60  1 f100070f10014940
8410400      -   - -
       -      -      -  1364159 S    0  60  1 f100070f10014d40
8410400      -   - -
       -      -      -  1372165 S    0  60  1 f100070f10014f40
8410400      -   - -
       -      -      -  1376461 S    0  60  1 f100070f10015040
8410400      -   - -
       -      -      -  1396845 S    0  60  1 f100070f10015540
8410400      -   - -
root@x105:[/]
====
In the listing above, the PID numbers are the even numbers (processes)
while the column TID (thread ID) are all odd. Threads are indented and
"under" the process.

Only "changes" were creation of a group daemon (id = 202, hence ps -G 202),
and activating the extra/httpd-mpm.conf file via /etc/httpd/httpd.conf.

So, even though I do not see any files named *mpm*.so I would think that
this shows that AIX it is "worker" and not pre-fork.

On Wed, Feb 8, 2012 at 5:57 PM, Jeff Trawick <tr...@gmail.com> wrote:

> On Wed, Feb 8, 2012 at 11:47 AM, Michael Felt <ma...@gmail.com> wrote:
> > Well, just slightly confused.
> > On my system I have "tested" in as much as I can https://hostname and it
> > says "It works!".
> > What I need some assistence with perhaps is determeing which "mpm" binary
> > was built, as I am only building one with 2.2.22 at the moment.
>
> Look in your modules directory for *mpm*.so to see what was
> built+installed.
>
> Look in your httpd.conf to see which of those available MPMs is loaded
> via LoadModule.
>
> (I think you'll find that prefork and worker are built for AIX, and
> worker is the one loaded by default.)
>
> >
> > re: Having only one script - I am not surprised there must be more than
> one,
> > but I hoped :)
> > There are actually two scripts - one that does the configure/make/make
> > install, and one that creates the
> > template needed to make the package.
> >
> > FYI: I am working on getting a build for a svn client as well. AND - I am
> > doing these things because I am very tired of having to download 10 to 20
> > .rpm packages, each with moving dependancies it seems, in order to
> install
> > something that is supposed readily available. In short, I am trying to
> make
> > some packages that just 'install' with saying - you need this too, and
> then
> > when you install that - it says and I need this first, etc etc.
> >
> > In a word, boring.
> >
> > FYI: current tools (IBM and others) use /opt/freeware as their main
> > installation area - so I am opting for /opt/* (no freeware in the name)
> for
> > packages like coreutils, libz, pcre, apr, apr-util, etc. and applications
> > (packaging) such as httpd and svn in /opt/httpd, /opt/svn. With your
> wealth
> > of prior experience - if you see a trap I am setting for myself, please
> warn
> > me - and better - lead me to safety.
> >
> > regards, Michael
> >
> >
> > On Wed, Feb 8, 2012 at 3:40 PM, Jeff Trawick <tr...@gmail.com> wrote:
> >>
> >> On Wed, Feb 8, 2012 at 9:08 AM, Michael Felt <ma...@gmail.com> wrote:
> >> > Well, it was building "something". I'll try the proposed change and
> make
> >> > sure it is still giving me "all" the mods.
> >>
> >> yeah, that was the idea...  thanks!
> >>
> >> > FYI - I have added --enable-ssl (so that the same script works for
> both
> >> > 2.2.22 and 2.4.0 which have different ideas of "all".
> >>
> >> As Graham mentioned, expect to have different scripts for different
> >> releases and do the right thing for each release.  It isn't a good
> >> thing if people who play with  configure more often but might not know
> >> the ancient history stare at the script and wonder about the odd
> >> choice of arguments.  (I happen to remember about the AIX/--enable-so
> >> issue from long ago, but that needs to die.)
> >>
> >> > And I hope configure will still leave AIX modules as shared (as it
> used
> >> > to
> >> > make them all static by default - long ago).
> >>
> >> If it doesn't build them shared using the appropriate configure args,
> >> that's what needs to be fixed.  (Most people won't use this script.)
> >>
> >> >
> >> > I shall try both 2.4.0 and 2.2.22 (without --enable-ssl) - and I am
> >> > continuing to work towards to havin g APR external to httpd.
> >> >
> >> >
> >> > On Tue, Feb 7, 2012 at 8:09 PM, Jeff Trawick <tr...@gmail.com>
> wrote:
> >> >>
> >> >> The buildaix.ksh script committed recently had some outdated options
> >> >> or requirements, and didn't build loadable MPMs.  Suggested changes
> >> >> are below.  Do or do not fold, spindle, or mutilate; commit with or
> >> >> without testing; etc.
> >> >>
> >> >> Index: build/aix/buildaix.ksh
> >> >> ===================================================================
> >> >> --- build/aix/buildaix.ksh      (revision 1241549)
> >> >> +++ build/aix/buildaix.ksh      (working copy)
> >> >> @@ -30,11 +30,7 @@
> >> >>  > nohup.out
> >> >>  ./configure \
> >> >>         --enable-layout=$LAYOUT \
> >> >> -       --enable-module=so \
> >> >> -       --enable-proxy \
> >> >> -       --enable-cache \
> >> >> -       --enable-disk-cache \
> >> >> -       --with-mpm=worker \
> >> >> +       --enable-mpms-shared=all \
> >> >>         --enable-mods-shared=all | tee nohup.out
> >> >>
> >> >>  make | tee -a nohup.out
> >> >>
> >> >> --
> >> >> Born in Roswell... married an alien...
> >> >
> >> >
> >>
> >>
> >>
> >> --
> >> Born in Roswell... married an alien...
> >
> >
>
>
>
> --
> Born in Roswell... married an alien...
>

Re: [PATCH] AIX configure options

Posted by Jeff Trawick <tr...@gmail.com>.
On Wed, Feb 8, 2012 at 11:47 AM, Michael Felt <ma...@gmail.com> wrote:
> Well, just slightly confused.
> On my system I have "tested" in as much as I can https://hostname and it
> says "It works!".
> What I need some assistence with perhaps is determeing which "mpm" binary
> was built, as I am only building one with 2.2.22 at the moment.

Look in your modules directory for *mpm*.so to see what was built+installed.

Look in your httpd.conf to see which of those available MPMs is loaded
via LoadModule.

(I think you'll find that prefork and worker are built for AIX, and
worker is the one loaded by default.)

>
> re: Having only one script - I am not surprised there must be more than one,
> but I hoped :)
> There are actually two scripts - one that does the configure/make/make
> install, and one that creates the
> template needed to make the package.
>
> FYI: I am working on getting a build for a svn client as well. AND - I am
> doing these things because I am very tired of having to download 10 to 20
> .rpm packages, each with moving dependancies it seems, in order to install
> something that is supposed readily available. In short, I am trying to make
> some packages that just 'install' with saying - you need this too, and then
> when you install that - it says and I need this first, etc etc.
>
> In a word, boring.
>
> FYI: current tools (IBM and others) use /opt/freeware as their main
> installation area - so I am opting for /opt/* (no freeware in the name) for
> packages like coreutils, libz, pcre, apr, apr-util, etc. and applications
> (packaging) such as httpd and svn in /opt/httpd, /opt/svn. With your wealth
> of prior experience - if you see a trap I am setting for myself, please warn
> me - and better - lead me to safety.
>
> regards, Michael
>
>
> On Wed, Feb 8, 2012 at 3:40 PM, Jeff Trawick <tr...@gmail.com> wrote:
>>
>> On Wed, Feb 8, 2012 at 9:08 AM, Michael Felt <ma...@gmail.com> wrote:
>> > Well, it was building "something". I'll try the proposed change and make
>> > sure it is still giving me "all" the mods.
>>
>> yeah, that was the idea...  thanks!
>>
>> > FYI - I have added --enable-ssl (so that the same script works for both
>> > 2.2.22 and 2.4.0 which have different ideas of "all".
>>
>> As Graham mentioned, expect to have different scripts for different
>> releases and do the right thing for each release.  It isn't a good
>> thing if people who play with  configure more often but might not know
>> the ancient history stare at the script and wonder about the odd
>> choice of arguments.  (I happen to remember about the AIX/--enable-so
>> issue from long ago, but that needs to die.)
>>
>> > And I hope configure will still leave AIX modules as shared (as it used
>> > to
>> > make them all static by default - long ago).
>>
>> If it doesn't build them shared using the appropriate configure args,
>> that's what needs to be fixed.  (Most people won't use this script.)
>>
>> >
>> > I shall try both 2.4.0 and 2.2.22 (without --enable-ssl) - and I am
>> > continuing to work towards to havin g APR external to httpd.
>> >
>> >
>> > On Tue, Feb 7, 2012 at 8:09 PM, Jeff Trawick <tr...@gmail.com> wrote:
>> >>
>> >> The buildaix.ksh script committed recently had some outdated options
>> >> or requirements, and didn't build loadable MPMs.  Suggested changes
>> >> are below.  Do or do not fold, spindle, or mutilate; commit with or
>> >> without testing; etc.
>> >>
>> >> Index: build/aix/buildaix.ksh
>> >> ===================================================================
>> >> --- build/aix/buildaix.ksh      (revision 1241549)
>> >> +++ build/aix/buildaix.ksh      (working copy)
>> >> @@ -30,11 +30,7 @@
>> >>  > nohup.out
>> >>  ./configure \
>> >>         --enable-layout=$LAYOUT \
>> >> -       --enable-module=so \
>> >> -       --enable-proxy \
>> >> -       --enable-cache \
>> >> -       --enable-disk-cache \
>> >> -       --with-mpm=worker \
>> >> +       --enable-mpms-shared=all \
>> >>         --enable-mods-shared=all | tee nohup.out
>> >>
>> >>  make | tee -a nohup.out
>> >>
>> >> --
>> >> Born in Roswell... married an alien...
>> >
>> >
>>
>>
>>
>> --
>> Born in Roswell... married an alien...
>
>



-- 
Born in Roswell... married an alien...

Re: [PATCH] AIX configure options

Posted by Michael Felt <ma...@gmail.com>.
Well, just slightly confused.
On my system I have "tested" in as much as I can https://hostname and it
says "It works!".
What I need some assistence with perhaps is determeing which "mpm" binary
was built, as I am only building one with 2.2.22 at the moment.

re: Having only one script - I am not surprised there must be more than
one, but I hoped :)
There are actually two scripts - one that does the configure/make/make
install, and one that creates the
template needed to make the package.

FYI: I am working on getting a build for a svn client as well. AND - I am
doing these things because I am very tired of having to download 10 to 20
.rpm packages, each with moving dependancies it seems, in order to install
something that is supposed readily available. In short, I am trying to make
some packages that just 'install' with saying - you need this too, and then
when you install that - it says and I need this first, etc etc.

In a word, boring.

FYI: current tools (IBM and others) use /opt/freeware as their main
installation area - so I am opting for /opt/* (no freeware in the name) for
packages like coreutils, libz, pcre, apr, apr-util, etc. and applications
(packaging) such as httpd and svn in /opt/httpd, /opt/svn. With your wealth
of prior experience - if you see a trap I am setting for myself, please
warn me - and better - lead me to safety.

regards, Michael

On Wed, Feb 8, 2012 at 3:40 PM, Jeff Trawick <tr...@gmail.com> wrote:

> On Wed, Feb 8, 2012 at 9:08 AM, Michael Felt <ma...@gmail.com> wrote:
> > Well, it was building "something". I'll try the proposed change and make
> > sure it is still giving me "all" the mods.
>
> yeah, that was the idea...  thanks!
>
> > FYI - I have added --enable-ssl (so that the same script works for both
> > 2.2.22 and 2.4.0 which have different ideas of "all".
>
> As Graham mentioned, expect to have different scripts for different
> releases and do the right thing for each release.  It isn't a good
> thing if people who play with  configure more often but might not know
> the ancient history stare at the script and wonder about the odd
> choice of arguments.  (I happen to remember about the AIX/--enable-so
> issue from long ago, but that needs to die.)
>
> > And I hope configure will still leave AIX modules as shared (as it used
> to
> > make them all static by default - long ago).
>
> If it doesn't build them shared using the appropriate configure args,
> that's what needs to be fixed.  (Most people won't use this script.)
>
> >
> > I shall try both 2.4.0 and 2.2.22 (without --enable-ssl) - and I am
> > continuing to work towards to havin g APR external to httpd.
> >
> >
> > On Tue, Feb 7, 2012 at 8:09 PM, Jeff Trawick <tr...@gmail.com> wrote:
> >>
> >> The buildaix.ksh script committed recently had some outdated options
> >> or requirements, and didn't build loadable MPMs.  Suggested changes
> >> are below.  Do or do not fold, spindle, or mutilate; commit with or
> >> without testing; etc.
> >>
> >> Index: build/aix/buildaix.ksh
> >> ===================================================================
> >> --- build/aix/buildaix.ksh      (revision 1241549)
> >> +++ build/aix/buildaix.ksh      (working copy)
> >> @@ -30,11 +30,7 @@
> >>  > nohup.out
> >>  ./configure \
> >>         --enable-layout=$LAYOUT \
> >> -       --enable-module=so \
> >> -       --enable-proxy \
> >> -       --enable-cache \
> >> -       --enable-disk-cache \
> >> -       --with-mpm=worker \
> >> +       --enable-mpms-shared=all \
> >>         --enable-mods-shared=all | tee nohup.out
> >>
> >>  make | tee -a nohup.out
> >>
> >> --
> >> Born in Roswell... married an alien...
> >
> >
>
>
>
> --
> Born in Roswell... married an alien...
>

Re: [PATCH] AIX configure options

Posted by Jeff Trawick <tr...@gmail.com>.
On Wed, Feb 8, 2012 at 9:08 AM, Michael Felt <ma...@gmail.com> wrote:
> Well, it was building "something". I'll try the proposed change and make
> sure it is still giving me "all" the mods.

yeah, that was the idea...  thanks!

> FYI - I have added --enable-ssl (so that the same script works for both
> 2.2.22 and 2.4.0 which have different ideas of "all".

As Graham mentioned, expect to have different scripts for different
releases and do the right thing for each release.  It isn't a good
thing if people who play with  configure more often but might not know
the ancient history stare at the script and wonder about the odd
choice of arguments.  (I happen to remember about the AIX/--enable-so
issue from long ago, but that needs to die.)

> And I hope configure will still leave AIX modules as shared (as it used to
> make them all static by default - long ago).

If it doesn't build them shared using the appropriate configure args,
that's what needs to be fixed.  (Most people won't use this script.)

>
> I shall try both 2.4.0 and 2.2.22 (without --enable-ssl) - and I am
> continuing to work towards to havin g APR external to httpd.
>
>
> On Tue, Feb 7, 2012 at 8:09 PM, Jeff Trawick <tr...@gmail.com> wrote:
>>
>> The buildaix.ksh script committed recently had some outdated options
>> or requirements, and didn't build loadable MPMs.  Suggested changes
>> are below.  Do or do not fold, spindle, or mutilate; commit with or
>> without testing; etc.
>>
>> Index: build/aix/buildaix.ksh
>> ===================================================================
>> --- build/aix/buildaix.ksh      (revision 1241549)
>> +++ build/aix/buildaix.ksh      (working copy)
>> @@ -30,11 +30,7 @@
>>  > nohup.out
>>  ./configure \
>>         --enable-layout=$LAYOUT \
>> -       --enable-module=so \
>> -       --enable-proxy \
>> -       --enable-cache \
>> -       --enable-disk-cache \
>> -       --with-mpm=worker \
>> +       --enable-mpms-shared=all \
>>         --enable-mods-shared=all | tee nohup.out
>>
>>  make | tee -a nohup.out
>>
>> --
>> Born in Roswell... married an alien...
>
>



-- 
Born in Roswell... married an alien...

Re: [PATCH] AIX configure options

Posted by Graham Leggett <mi...@sharp.fm>.
On 08 Feb 2012, at 4:08 PM, Michael Felt wrote:

> Well, it was building "something". I'll try the proposed change and make sure it is still giving me "all" the mods.
> FYI - I have added --enable-ssl (so that the same script works for both 2.2.22 and 2.4.0 which have different ideas of "all".

v2.4.x and v2.2.x are subtly different to one another when it comes to MPMs - v2.2.x forced you to choose a hard coded mpm at build time, while v2.4.x allows you to choose an mpm at runtime in the same modular way that normal modules can be built.

How this affects you is that with v2.4.x things are easy, you add the "--enable-mpms-shared=all" option and you're done. Each mpm is built as a module, administrator puts his preference in a config file, done.

With v2.2.x, things are painful. The way RPM handled v2.2.x is that the build was executed three times, each providing a version of httpd with one of the MPMs selected, creating three separate binaries, /usr/sbin/httpd for prefork, /usr/sbin/httpd.worker for worker, and /usr/sbin/httpd.event for event. The modules only needed to be built once, so the second and third builds excluded all modules. Then there was a lot of scripted messing about to put everything in one tree - painful.

Don't expect v2.4.x and v2.2.x to have the same script, it's very likely they won't have, although the scripts may be almost identical.

It's up to you as to how much of v2.2.x you want to implement - you might choose to build three packages with one mpm each, or try build one package with three separate httpd binaries in it (like RPM did), or you might go "too much work for an old branch of httpd, focus efforts on v2.4.x instead", which is also fine.

Regards,
Graham
--


Re: [PATCH] AIX configure options

Posted by Graham Leggett <mi...@sharp.fm>.
On 08 Feb 2012, at 4:08 PM, Michael Felt wrote:

> Well, it was building "something". I'll try the proposed change and make sure it is still giving me "all" the mods.
> FYI - I have added --enable-ssl (so that the same script works for both 2.2.22 and 2.4.0 which have different ideas of "all".

v2.4.x and v2.2.x are subtly different to one another when it comes to MPMs - v2.2.x forced you to choose a hard coded mpm at build time, while v2.4.x allows you to choose an mpm at runtime in the same modular way that normal modules can be built.

How this affects you is that with v2.4.x things are easy, you add the "--enable-mpms-shared=all" option and you're done. Each mpm is built as a module, administrator puts his preference in a config file, done.

With v2.2.x, things are painful. The way RPM handled v2.2.x is that the build was executed three times, each providing a version of httpd with one of the MPMs selected, creating three separate binaries, /usr/sbin/httpd for prefork, /usr/sbin/httpd.worker for worker, and /usr/sbin/httpd.event for event. The modules only needed to be built once, so the second and third builds excluded all modules. Then there was a lot of scripted messing about to put everything in one tree - painful.

Don't expect v2.4.x and v2.2.x to have the same script, it's very likely they won't have, although the scripts may be almost identical.

It's up to you as to how much of v2.2.x you want to implement - you might choose to build three packages with one mpm each, or try build one package with three separate httpd binaries in it (like RPM did), or you might go "too much work for an old branch of httpd, focus efforts on v2.4.x instead", which is also fine.

Regards,
Graham
--