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);