You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by ma...@hyperreal.org on 1999/02/04 07:52:41 UTC

cvs commit: apache-apr/pthreads/src/main http_config.c http_protocol.c

manoj       99/02/03 22:52:41

  Modified:    pthreads/src/main http_config.c http_protocol.c
  Log:
  Temporarily fix bug where server threads would lock up after a single
  request under Linux. LinuxThreads uses SIGUSR1 (and SIGUSR2) so they aren't
  available to us. We need to find an alternate means to get graceful
  restarts kicked off if we want to support Linux 2.0 kernel threads.
  
  Revision  Changes    Path
  1.3       +5 -0      apache-apr/pthreads/src/main/http_config.c
  
  Index: http_config.c
  ===================================================================
  RCS file: /home/cvs/apache-apr/pthreads/src/main/http_config.c,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -u -r1.2 -r1.3
  --- http_config.c	1999/01/22 16:10:55	1.2
  +++ http_config.c	1999/02/04 06:52:38	1.3
  @@ -1503,9 +1503,14 @@
   #ifdef SIGHUP
       signal(SIGHUP, SIG_IGN);
   #endif
  +    /* XXX - LinuxThreads uses SIGUSR1, so we can't muck with it. Bummer. We
  +     * need to find another way to do graceful restarts if we want to support
  +     * kernel threads with Linux 2.0 (2.2 is supposed to fix this) - mvsk */
  +#ifndef LINUX
   #ifdef SIGUSR1
       signal(SIGUSR1, SIG_IGN);
   #endif
  +#endif /* ndef LINUX */
   
       for (m = top_module; m; m = m->next)
   	if (m->child_exit)
  
  
  
  1.2       +6 -0      apache-apr/pthreads/src/main/http_protocol.c
  
  Index: http_protocol.c
  ===================================================================
  RCS file: /home/cvs/apache-apr/pthreads/src/main/http_protocol.c,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -u -r1.1 -r1.2
  --- http_protocol.c	1999/01/21 23:08:33	1.1
  +++ http_protocol.c	1999/02/04 06:52:39	1.2
  @@ -675,9 +675,15 @@
           }
       }
       /* we've probably got something to do, ignore graceful restart requests */
  +
  +    /* XXX - LinuxThreads uses SIGUSR1, so we can't muck with it. Bummer. We
  +     * need to find another way to do graceful restarts if we want to support
  +     * kernel threads with Linux 2.0 (2.2 is supposed to fix this) - mvsk */
  +#ifndef LINUX
   #ifdef SIGUSR1
       signal(SIGUSR1, SIG_IGN);
   #endif
  +#endif /* ndef LINUX */
   
       ap_bsetflag(conn->client, B_SAFEREAD, 0);