The following reply was made to PR general/1491; it has been noted by GNATS.

From: Jonathan Roy <[EMAIL PROTECTED]>
To: Dean Gaudet <[EMAIL PROTECTED]>
Cc: [EMAIL PROTECTED]
Subject: Re: general/1491: mmap_handler error_log entry for 0 length
  files
Date: Fri, 28 Nov 1997 15:54:04 -0500

   Put it in and working so far. No idea if this is a new bug or unrelated
 or what, but now I notice some of these:
 
 [crit] (24)Too many open files:
 /export/home/bryant/mpog_html/adverts/images/.htaccess pcfg_openfile:
 unable to check htaccess file, ensure it is readable
 
   the file does't exist at all.
 
 -Jonathan
 
 At 11:23 AM 11/28/97 -0800, Dean Gaudet wrote:
 >Oh damn.  Ok here's a patch that fixes this and the other mmap_handler
 >error_log entries for 1.3b3.  It's against 1.3b3. 
 >
 >Thanks
 >Dean
 >
 >Index: http_core.c
 >===================================================================
 >RCS file: /export/home/cvs/apachen/src/main/http_core.c,v
 >retrieving revision 1.140
 >diff -u -r1.140 http_core.c
 >--- http_core.c       1997/11/15 00:16:50     1.140
 >+++ http_core.c       1997/11/28 19:17:47
 >@@ -75,15 +75,15 @@
 >  * <http://www.isi.edu/~johnh/SOFTWARE/APACHE/index.html>.
 >  */
 > 
 >-/* Files have to be at least this big before they're mmap()d.  This is to
 >- * deal with systems where the expense of doing an mmap() and an munmap()
 >- * outweighs the benefit for small files.
 >+/* Files have to be at least this big before they're mmap()d.  This is to
 deal
 >+ * with systems where the expense of doing an mmap() and an munmap()
 outweighs
 >+ * the benefit for small files.  It shouldn't be set lower than 1.
 >  */
 > #ifndef MMAP_THRESHOLD
 > #ifdef SUNOS4
 > #define MMAP_THRESHOLD               (8*1024)
 > #else
 >-#define MMAP_THRESHOLD               0
 >+#define MMAP_THRESHOLD               1
 > #endif
 > #endif
 > #endif
 >@@ -1864,21 +1864,20 @@
 >     block_alarms();
 >     if ((r->finfo.st_size >= MMAP_THRESHOLD)
 >      && ( !r->header_only || (d->content_md5 & 1))) {
 >-      /* we need to protect ourselves in case we die while we've got the
 >+     /* we need to protect ourselves in case we die while we've got the
 >       * file mmapped */
 >      mm = mmap (NULL, r->finfo.st_size, PROT_READ, MAP_PRIVATE,
 >                  fileno(f), 0);
 >+     if (mm == (caddr_t)-1) {
 >+         aplog_error(APLOG_MARK, APLOG_CRIT, r->server,
 >+                     "default_handler: mmap failed: %s", r->filename);
 >+     }
 >     } else {
 >      mm = (caddr_t)-1;
 >     }
 > 
 >     if (mm == (caddr_t)-1) {
 >      unblock_alarms();
 >-
 >-     if (r->finfo.st_size >= MMAP_THRESHOLD) {
 >-         aplog_error(APLOG_MARK, APLOG_CRIT, r->server,
 >-                     "mmap_handler: mmap failed: %s", r->filename);
 >-     }
 > #endif
 > 
 >      if (d->content_md5 & 1) {
 >
 >
 >
 
 --
 Jonathan Roy - [EMAIL PROTECTED] - Idle Communications, Inc.
 

Reply via email to