You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl@perl.apache.org by Ged Haywood <ge...@www2.jubileegroup.co.uk> on 2002/02/06 13:55:08 UTC

Re: [OT] Server error log says "Accept mutex: sysvsem"

Hi there,

On Wed, 6 Feb 2002, Rafiq Ismail (ADMIN) wrote:

> > The following message keeps appearing in my server error log
> guess would be that it's harmless.

Nothing to do with mod_perl, check the Apache docs (performance tuning guide).
Presumably this only happens when you restart the server?

73,
Ged.


Re: [OT] Server error log says "Accept mutex: sysvsem"

Posted by Joerg Plate <pl...@psyche.kn-bremen.de>.

>> The following message keeps appearing in my server error log

>> guess would be that it's harmless.

> Presumably this only happens when you restart the server?

The source file is 'main/http_main.c' and the function is "standalone_main".

 ap_log_error(APLOG_MARK, APLOG_NOERRNO|APLOG_NOTICE,
   server_conf, "Accept mutex: %s (Default: %s)", amutex->name,
   ap_default_mutex_method());

It's just a normal informative message, no need to worry.

> Any apache gurus on this list?
not really...

-- 
"I'm working on it."  <http://patterner.de>
<http://www.amazon.de/exec/obidos/wishlist/AQP0BN7EPJIH>

RE: [OT] Server error log says "Accept mutex: sysvsem"

Posted by Kyle Oppenheim <ky...@tellme.com>.
> However, the sample configuration file supplied with Apache contains no
> AcceptMutex runtime directive nor did I come across documentation
> suggesting how it should be used or where I would learn the options for
> my system (linux, i686, kernel 2.4.7-10).

There's a good description of what the accept mutex is used for on the
Apache Performance Notes page at
http://httpd.apache.org/docs/misc/perf-tuning.html (search down for "accept
Serialization").

Essentially, the call to accept() needs to be serialized to support servers
that listen on multiple ports.  Also, serialization is a performance
optimization on servers that only listen on one port.  I assume that apaci
and/or configure made a good guess for your system when you compiled Apache,
but you can experiment with other methods.  Using a different mutex, if it
works at all, should only help or hurt performance (perhaps using fcntl is
really fast compared to pthreads on your OS).

--
Kyle Oppenheim
Tellme Networks, Inc.
http://www.tellme.com


RE: [OT] Server error log says "Accept mutex: sysvsem"

Posted by Al Pacifico <pa...@drizzle.com>.
Ged-
You are correct; a little more delving suggests that it has to do with
Apache, but not mod_perl. The message appears only when the server is
started.

Apache was compiled from the mod_perl source tree using only the
following options:
	APACHE_SRC=../usr/apache...
	APACHE_PREFIX=/usr/local/apache
	EVERYTHING=1
	DO_HTTPD=1
	USE_APACI=1

httpd -l produces the following output:
Compiled-in modules:
  http_core.c
  mod_env.c
  mod_log_config.c
  mod_mime.c
  mod_negotiation.c
  mod_status.c
  mod_include.c
  mod_autoindex.c
  mod_dir.c
  mod_cgi.c
  mod_asis.c
  mod_imap.c
  mod_actions.c
  mod_userdir.c
  mod_alias.c
  mod_access.c
  mod_auth.c
  mod_setenvif.c
  mod_perl.c
suexec: disabled; invalid wrapper /usr/local/apache/bin/suexec

A Google groups search on 'accept mutex' yields plenty of posts
reporting this message, but most of them involve apache not starting and
other configuration/permissions errors.

The changes file (since 1.3.22) mentions the following:

  *) Addition of the AcceptMutex runtime directive. The accept mutex
     method is now runtime controllable. The suite of available methods
     per platform is defined at compile time (with
HAVE_FOO_SERIALIZED_ACCEPT
     noting that the method is available and works, and
     USE_FOO_SERIALIZED_ACCEPT noting that it should be the default
     method in absense of any AcceptMutex line, or via AcceptMutex
default)
     and selectable at runtime. The full (current) suite is uslock,
     pthread, sysvsem, fcntl, flock, os2sem, tpfcore and none, but
     not all platforms accept all methods. [Jim Jagielski]

However, the sample configuration file supplied with Apache contains no
AcceptMutex runtime directive nor did I come across documentation
suggesting how it should be used or where I would learn the options for
my system (linux, i686, kernel 2.4.7-10).

Any apache gurus on this list?

-al
Al Pacifico
Seattle, WA

-----Original Message-----
From: Ged Haywood [mailto:ged@www2.jubileegroup.co.uk] 
Sent: Wednesday, February 06, 2002 4:55 AM
To: Rafiq Ismail (ADMIN)
Cc: Al Pacifico; modperl@apache.org
Subject: Re: [OT] Server error log says "Accept mutex: sysvsem"

Hi there,

On Wed, 6 Feb 2002, Rafiq Ismail (ADMIN) wrote:

> > The following message keeps appearing in my server error log
> guess would be that it's harmless.

Nothing to do with mod_perl, check the Apache docs (performance tuning
guide).
Presumably this only happens when you restart the server?

73,
Ged.